В зависимости от сложности вашего состояния, у вас есть несколько способов авторизации пользователя.
Если вы просто хотите убедиться, что пользователь аутентифицирован , т.е. что он успешно войдя в систему, независимо от того, кто пользователь, то вы можете просто проверить User.Identity.IsAuthenticated
:
@if (User.Identity.IsAuthenticated)
{
<p>User is signed in.</p>
}
Если вы хотите убедиться, что пользователь имеет специфицированную c роль , тогда вы также можете напрямую работать с User
главным объектом и просто проверить эту специфицированную c роль:
@if (User.IsInRole("role-name"))
{
<p>User is in role <em>role-name</em>.</p>
}
В противном случае, если вы Если вы хотите использовать все возможности системы авторизации в ASP. NET Core, вы также можете внедрить IAuthorizationService
и авторизовать пользователя в соответствии с настроенной политикой авторизации :
@inject IAuthorizationService _authorizationService
@if ((await _authorizationService.AuthorizeAsync(User, "policy-name")).Succeeded)
{
<p>User was authorized against policy <em>policy-name</em>.</p>
}