В ASP.NET Core, как узнать, что пользователь соответствует минимальному возрасту? - PullRequest
0 голосов
/ 22 октября 2019

Я следую этому руководству по авторизации в ядре asp.net: https://docs.microsoft.com/en-us/aspnet/core/security/authorization/policies?view=aspnetcore-3.0

В примере создается MinimumAgeRequirement и устанавливается его возраст 21. Проблема в том, что я не могу найти, где в коде этоустанавливает возраст пользователя 21 года. Похоже, что это требование никогда не будет выполнено?

Ответы [ 2 ]

1 голос
/ 22 октября 2019

Для добавления претензий пользователю:

await _userManager.AddClaimAsync(user, new Claim(ClaimTypes.DateOfBirth, myDateOfBirth));

Вы можете найти полный проект с AgeRequirement, Handler, Claim and Authorize на HomeController.

https://github.com/zubairrana/CustomClaimValidation/

0 голосов
/ 22 октября 2019

Минимальное требование подкреплено утверждением авторизации, в котором пользовательский контекст зарегистрированного пользователя используется для проверки даты рождения и сравнения с минимальным возрастным требованием. Вот фрагмент кода.

var dateOfBirth = Convert.ToDateTime(
            context.User.FindFirst(c => c.Type == ClaimTypes.DateOfBirth && 
                                        c.Issuer == "http://contoso.com").Value);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...