Я разрабатываю веб-сайт ASP.NET. Я планирую использовать проверку подлинности с помощью форм в целях обеспечения аутентификации/авторизации, но я столкнулся с двумя проблемами по поводу разрешения:Как проверить авторизацию при использовании проверки подлинности на основе форм?
Я знаю, как установить в веб-конфигурации, что идентифицированные пользователи могут посетить веб-страницы (скажем, myPage.aspx). Но я не знаю, как определить, что UserA может получить доступ к myPage для извлечения его информации, а не информации UserB. Я думал о создании токена, когда пользователь аутентифицируется, поэтому я могу проверить, кому принадлежит этот токен, и проверить, доступна ли эта информация для него. Что вы думаете об этом подходе? Вызывает ли аутентификация формы такой токен? (Я не мог найти упоминания об этом в своих исследованиях). Если нет, смогу ли я адаптировать механизмы аутентификации формы для создания или мне нужно будет написать все самостоятельно?
Я хотел бы получить доступ к веб-сервисам, и они должны возвращать информацию только в том случае, если пользователь зарегистрирован. По этой причине я хотел бы использовать тот же токен, который был описан выше. Что вы думаете об этом? Это хороший подход?
Я спрашиваю об этом, потому что у меня нет опыта в разработке механизмов аутентификации/авторизации, любая помощь/подсказка будет оценена по достоинству.
Это здорово, я обязательно попробую это. Только один вопрос: если я знаю имя пользователя моих друзей, не могу ли я каким-то образом войти в свою учетную запись, но изменить значение имени пользователя на мой друг? – JSBach
Нет, я не считаю, что это возможно. Я считаю, что конвейер asp.net извлекает содержимое зашифрованного cookie аутентификации ASP.Net, которое оно генерирует при успешном входе в систему и использует это для заполнения объекта Page.User.identity. Поскольку этот файл cookie зашифрован, его невозможно подделать. –
Это именно то, что мне тогда нужно! Большое спасибо :) – JSBach