Как заставить NET Core авторизацию работать - PullRequest
1 голос
/ 27 сентября 2019

У меня была политика авторизации, настроенная и работающая в приложении .NET 2.2 Razor Pages, а затем она просто начала выдавать ошибку 403 Нет доступа.Я использую аутентификацию Windows и группы Active Directory.Я являюсь частью группы администраторов в Active Directory.Я добавил тэг Authorize в мою модель страницы и смог получить доступ, как и ожидалось.Я поменял тег для группы пользователей, к которой я не принадлежу, и больше не мог получить к ней доступ, что ожидается.Затем я попытался предоставить доступ как пользователям, так и администраторам одновременно, и не смог заставить его работать.Так что я вернулся и теперь не могу получить доступ ни к одной группе.Что я здесь не так делаю.

Вот мой Startup.cs:

    services.AddAuthorization(options =>
            {
                options.AddPolicy("Admin", policy =>
                {
                    policy.RequireAuthenticatedUser();
                    policy.RequireRole(@"DOMAIN\Admin");

                });
   services.AddAuthorization(options =>
            {
                options.AddPolicy("User", policy =>
                {
                    policy.RequireAuthenticatedUser();
                    policy.RequireRole(@"DOMAIN\User");

                });

А вот тег авторизации, который я использую:

[Authorize(Policy = "Admin")]

Как я уже сказал, я являюсь частьюадмин группа.И это сработало около часа назад, а потом просто начало давать 403. Я удалил свой селф из группы и добавил обратно.Я попытался добавить себя в группу пользователей, а затем поменять тег авторизации.У меня раньше были проблемы с группой, в названии которой был пробел.я не уверен, что это была проблема, но во-вторых, я перестал признавать, что группа начала работать.я борюсь с чем-то, когда AD не синхронизируется с IIS Express в Visual Studio или что-то в этом роде?

РЕДАКТИРОВАТЬ:

Я протестировал изменение ниже, это еще одна группа, к которой я принадлежу, и это сработало.Это не признает некоторые группы по какой-то причине.Хотя в какой-то момент он распознал группу администраторов, сейчас это не так.'' 'policy.RequireRole (@ "DOMAIN \ Admin");policy.RequireRole (@ "DOMAIN \ APAdmin");'' '

...