Я использую IdentityServer4 и OpenId для аутентификации пользователей в моем приложении MVC и хочу добавить свои собственные утверждения. Но я не уверен, в каком из OpenIdConnectEvents мне следует это сделать.
В этом руководстве говорится, что ...
В процессе аутентификации вы можете изменить утверждения, которые вы получаете от IDP. В ASP.NET Core 1.0 вы можете выполнять преобразование утверждений внутри события AuthenticationValidated из промежуточного программного обеспечения OpenID Connect.
Любые утверждения, которые вы добавляете во время AuthenticationValidated, хранятся в файле cookie аутентификации сеанса.
Однако это событие недоступно в ASP.NET Core 1.1.
Я попытался сделать это в событии TokenValidated ..
var principal = context.Request.HttpContext.User;
principal.Identities.First().AddClaim(new Claim("TenantId", user.TenantId.ToString()));
Но когда я перечисляю утверждения пользователей после аутентификации, их нет в списке.
@foreach (var claim in User.Claims)
{
<dt>@claim.Type</dt>
<dd>@claim.Value</dd>
}