Как сформировать основанную авторизацию в ASP.NET
уважаемый друг,
Мне нужно создать авторизацию на основе экрана в веб-формах..
например. Я храню его в базе данных. "пользователь1" получает доступ к следующим формам form1, form2, form3. . как это отражается в web.config.
я ищу некоторые сайты. они записываются непосредственно в web. config & lt;allow user= "user1"/>
мне не нужно напрямую добавлять в web.config.
когда я создам пользователя, имя пользователя будет автоматически добавлено в web.config
Что я уже пробовал:
<?xml version="1.0"?> <configuration> <system.web> <authorization> <allow roles="Admin" /> <deny users="*" /> </authorization> </system.web> </configuration>
Atlapure Ambrish
Поскольку вы уже храните информацию о специальных возможностях в базе данных, я не уверен, почему вам нужно снова хранить ее в web.config. Я думаю, что вы можете просто получить информацию о роли и специальных возможностях для вошедшего пользователя и проверить авторизацию.
Например, если вы используете ASP login control, сделайте что-то вроде этого..
&ЛТ;АСП:логин ID = "Имя_входа1" атрибут runat = "сервер" OnAuthenticate= "методы validateuser"&ГТ;
Метод ValidateUser собирается извлечь данные из БД, а затем вы можете обработать авторизацию.
ZurdoDev
Я бы предложил, чтобы каждая из ваших страниц наследовалась от одной страницы. Затем на этой странице вы проверяете наличие доступа. В противном случае вам придется перечислить каждую страницу вашего приложения в web.config с помощью тега <location>.
Vivek.anand34
Почему я использую веб. Конфиг. Пользователь непосредственно вводит url-адрес и открывает экраны. Вот почему
Vivek.anand34
Я могу ограничить доступ в веб.config, то пользователь не может получить доступ через URL-адрес. он снова переходит на страницу входа в систему. Вот и я этим пользуюсь.
londhess
попробуйте проверить ссылку ниже.
https://www.aspsnippets.com/Articles/Implement-Form-based-Authorization-and-Authentication-in-ASPNet.aspx
Vivek.anand34
да, он по умолчанию назначен для администратора и пользователей.. предположим, я добавил еще одну роль в БД, а затем как она выполняется.
londhess
Да, вы можете использовать в своем проекте столько ролей, сколько захотите. Приведенная ниже ссылка дает вам краткое представление о ролевой базовой аутентификации и авторизации.
https://docs.microsoft.com/en-us/aspnet/web-forms/overview/older-versions-security/roles/role-based-authorization-cs