/// <summary> /// Set an access token on the HTTP request /// </summary> /// <param name="request"></param> /// <param name="forceRenewal"></param> /// <param name="cancellationToken"></param> /// <returns></returns> protected virtual async Task SetTokenAsync(HttpRequestMessage request, bool forceRenewal, CancellationToken cancellationToken) { var parameters = new ClientAccessTokenParameters { ForceRenewal = forceRenewal }; var token = await _accessTokenManagementService.GetClientAccessTokenAsync(_tokenClientName, parameters, cancellationToken); if (!string.IsNullOrWhiteSpace(token)) { request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token); } }
private async Task <AuthenticationHeaderValue> GetOAuthHeader(CancellationToken cancelToken = default) { var oAuthUri = config.GetValue <Uri>("Auth:OAuth:TokenUrl"); if (oAuthUri != null) { var token = await tokenService.GetClientAccessTokenAsync(cancellationToken : cancelToken); if (token == null) { log.LogError("Failed to get oauth token."); return(null); } log.LogDebug("Using oauth token"); return(new AuthenticationHeaderValue("Bearer", token)); } return(null); }
public async Task SetAccessTokenAsync(HttpRequestMessage request, bool forceRenewal = false) { var accessToken = await _accessTokenManagementService.GetClientAccessTokenAsync(forceRenewal); request.Headers.Add(_tokenRequestParameters.AuthorizationHeaderName, accessToken); }