У меня есть API, который использует Identity Server 4 для аутентификации пользователя на основе маркера доступа к JWT Bearer.
Теперь, когда я передаю access_token
в заголовке моего запроса, я могу просмотреть информацию о пользователе в объекте пользователя в контроллере.
Но если я пытаюсь получить доступ к System.Security.Claims.ClaimsPrincipal
в моем DAL, он отличается от моего зарегистрированного пользователя.
Вот как я настроил Аутентификацию для Identity Server 4 в моем веб-проекте Startup.cs
В ConfigureServices -
services.AddAuthentication("Bearer").AddIdentityServerAuthentication(opt =>
{
opt.Authority = "http://auth......";
opt.RequireHttpsMetadata = true;
opt.ApiName = "API_NAME";
opt.NameClaimType = "username";
});
In Configure
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
#region Identity Server Config
// Setup Identity Server Options for this API -
app.UseAuthentication();
#endregion Identity Server Config
.....
}
Как получить доступ к моему зарегистрированному пользователю Identity Server в DAL?