Аутентификация и права
Аутентификация построена на ASP.NET Core Identity API endpoints и bearer tokens.
Жизненный цикл токена
Frontend
Frontend хранит:
accessTokentokenTypeexpiresAtrolesemployeeId- пользовательские настройки
Авторизованные запросы используют:
authorization: `${tokenType} ${accessToken}`
Backend
Backend регистрирует:
AddIdentityApiEndpoints<ApplicationUser>()AddRoles<IdentityRole>()MapIdentityApi<ApplicationUser>()UseAuthentication()UseAuthorization()
Для SignalR access token может передаваться через query string для путей /hubs/*.
Authorization attributes
AuthorizeRolesAttribute преобразует значения EnRole в стандартную строку ролей ASP.NET Core. Пользователь проходит проверку, если в claims есть хотя бы одна требуемая роль.