public async Task <string> GenerateStateAsync(string remoteAddress, ActionToken serverToken, CancellationToken cancellationToken = default) { var state = Guid.NewGuid().ToString(); var tkstring = serverToken.ExportString(); await this.Redis.CreateTemporaryValueAsync(remoteAddress, TimeSpan.FromMinutes(5), OAuthKey, state); await this.Redis.CreateTemporaryValueAsync(tkstring, TimeSpan.FromMinutes(5), OAuthKey, state, OAuthTokenKey); return(OAuthPrefix + state); }