Внешняя аутентификация ASP.NET - PullRequest
0 голосов
/ 04 июля 2011

У меня есть приложение asp.net, в котором я использовал проверку подлинности с помощью форм.

Теперь необходимо, чтобы аутентификация пользователя выполнялась вне моего приложения. Будет вводная страница, которая будет выполнять необходимую аутентификацию. Затем, после успешной аутентификации, пользователь должен быть перенаправлен в мое приложение.

Конечно, если пользователь не прошел аутентификацию через эту внешнюю страницу и пытается получить доступ к моему приложению напрямую, мне нужно перенаправить его обратно на эту страницу внешнего входа.

Какой лучший способ реализовать такую ​​функциональность? Один из способов, который, на мой взгляд, возможен, заключается в том, что я передаю некоторую конкретную зашифрованную строку в cookie со страницы внешнего входа и проверяю ее в своем приложении. Итак, основываясь на этом, я могу видеть, аутентифицирован ли пользователь через эту внешнюю страницу или нет.

Ответы [ 4 ]

0 голосов
/ 18 июля 2011

В конце мы решили использовать протокол SAML 2.0.

Внешние страницы входа отправляют XML-документ, совместимый с SAML, с цифровой подписью и сертификатом для другого приложения.В этом XML аутентифицированное имя пользователя передается.Приложение, которое получает этот XML, проверяет цифровую подпись с открытым ключом сертификата, и если проверка в порядке, считывает имя пользователя из XML, применяет внутреннюю логику авторизации приложения и в конце создает аутентификацию.печенье.Вероятно, мы добавим шифрование, чтобы защита данных была завершена.

0 голосов
/ 04 июля 2011

Я бы просто пошел с добавлением веб-сервиса в первое приложение, которое вы на своем этапе можете подключить к проверке входа пользователя в систему, единственная проблема в том, что вам нужно знать, какой пользователь хочет получить доступ к вашему сайтуа также для подтверждения того, что это действительно тот пользователь (поэтому пользователь не может использовать других пользователей, которые вошли в систему).Эта информация может быть отправлена ​​через cookie.

0 голосов
/ 04 июля 2011

Вы, вероятно, не должны использовать свой собственный единый знак решения в 2011 году. Скорее, вам следует взглянуть на некоторые новые стандарты, в частности OAuth и OpenID .Начать работу с ними легко - посмотрите шаблон веб-сайта OpenID *1006* на MSDN.

0 голосов
/ 04 июля 2011

Ваше собственное предложение о проверке файлов cookie внешнего сайта заключается в том, как бы я реализовал эту функцию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...