Beispiel #1
0
        public override async Task AuthenticateAsync(DaprActorProxyAuthenticateContext context)
        {
            if (context.RemoteService.GetUseCurrentAccessToken() != false)
            {
                var accessToken = await GetAccessTokenFromHttpContextOrNullAsync();

                if (accessToken != null)
                {
                    context.Handler.PreConfigure(request =>
                    {
                        request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
                    });
                    return;
                }
            }

            await base.AuthenticateAsync(context);
        }
        public virtual async Task AuthenticateAsync(DaprActorProxyAuthenticateContext context)
        {
            var identityClientName = context.RemoteService.GetIdentityClient();
            var configuration      = GetClientConfiguration(identityClientName);

            if (configuration == null)
            {
                Logger.LogWarning($"Could not find {nameof(IdentityClientConfiguration)} for {identityClientName}. Either define a configuration for {identityClientName} or set a default configuration.");
                return;
            }
            var accessToken = await IdentityModelAuthenticationService.GetAccessTokenAsync(configuration);

            if (accessToken == null)
            {
                return;
            }

            SetAccessToken(context.Handler, accessToken);
        }