public SkillSearchModelBuilder(ICustomHttpClient httpClient, IApiUriHelper uriHelper, ITokenResponse tokenResponse, string term) { _httpClient = httpClient; _tokenResponse = tokenResponse ?? throw new ArgumentNullException(nameof(tokenResponse)); _uriHelper = uriHelper; _term = term; }
public async Task SetAndSaveToken(string tokenResponse, CancellationToken cancellationToken) { var deserialized = JsonSerializer.Deserialize <GoogleDriveTokenResponse>(tokenResponse); if (!string.IsNullOrWhiteSpace(deserialized.RefreshToken)) { // Refresh token reset Token = deserialized; } else { // Leave refresh token as is var refreshToken = Token?.RefreshToken; Token = new GoogleDriveTokenResponse() { AccessToken = deserialized.AccessToken, ExpiresIn = deserialized.ExpiresIn, InitDate = deserialized.InitDate, Scope = deserialized.Scope, TokenType = deserialized.TokenType, RefreshToken = refreshToken }; } using var fileStream = new FileStream(Constants.GoogleDriveFilePath, FileMode.Create, FileAccess.Write, FileShare.Read); await JsonSerializer.SerializeAsync(fileStream, Token as GoogleDriveTokenResponse, cancellationToken : cancellationToken); _logger.LogInformation("Token response saved to file"); }
public static ClaimsIdentity BuildClaimsIdentity(ITokenResponse tokenInfo, string username = "") { return(new ClaimsIdentity( new[] { new Claim(ClaimTypes.Name, username), new Claim("access_token", tokenInfo.AccessToken), new Claim("id_token", tokenInfo.IdToken), new Claim("refresh_token", tokenInfo.RefreshToken ?? string.Empty), }, DefaultAuthenticationTypes.ApplicationCookie)); }
private bool TryGetJwtSecurityToken(ITokenResponse tokenResponse, out JwtSecurityToken jwtSecurityToken) { jwtSecurityToken = null; if (tokenResponse == null) { return(false); } var jwtSecurityTokenHandler = new JwtSecurityTokenHandler(); jwtSecurityToken = jwtSecurityTokenHandler.ReadJwtToken(tokenResponse.AccessToken); return(jwtSecurityToken != null); }
private void ReadToken() { try { if (!File.Exists(Constants.GoogleDriveFilePath)) { return; } using var fileStream = new FileStream(Constants.GoogleDriveFilePath, FileMode.Open, FileAccess.Read, FileShare.Read); Token = JsonSerializer.Deserialize <GoogleDriveTokenResponse>(fileStream); } catch (Exception ex) { _logger.LogError(ex, string.Empty); } }
public Task <HttpResponseMessage> PostAsync(string url, ITokenResponse tokenResponse, object content) { if (string.IsNullOrWhiteSpace(url)) { throw new ArgumentNullException(nameof(url)); } if (tokenResponse == null) { throw new ArgumentNullException(nameof(tokenResponse)); } DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", tokenResponse.AccessToken); DefaultRequestHeaders.Accept.Clear(); DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); return(PostAsync(url, content)); }
public static async Task <ClaimsIdentity> GetIdentityFromTokenResponseAsync(IdxConfiguration configuration, ITokenResponse tokenResponse) { var claims = await GetClaimsFromUserInfoAsync(configuration, tokenResponse.AccessToken); claims = claims.Append(new Claim("access_token", tokenResponse.AccessToken)); claims = claims.Append(new Claim("id_token", tokenResponse.IdToken)); if (!string.IsNullOrEmpty(tokenResponse.RefreshToken)) { claims = claims.Append(new Claim("refresh_token", tokenResponse.RefreshToken)); } ClaimsIdentity identity = new ClaimsIdentity(claims, DefaultAuthenticationTypes.ApplicationCookie); return(identity); }
public TwitterAuthResponse(int userId, string screenName, ITokenResponse response) { UserId = userId; ScreenName = screenName; Response = response; }
public TwitterAuthResponse(int userId, string screenName, ITokenResponse response) { UserId = userId; ScreenName = screenName; Response = response; }