Вы должны подумать о своих требованиях, выбрать подходящий протокол и какое-нибудь приличное программное обеспечение, которое его реализует.
Трудно сказать больше без подробностей:
- являютсяВы говорите об аутентификации для одного или нескольких веб-приложений?Вам нужен единый вход между различными веб-приложениями?
- должны ли все пользовательские данные храниться на вашем сервере или пользователь должен иметь возможность войти, например, с помощью учетной записи Google?
- должен ли токен содержать информациюо пользователе?
- на какой платформе разрабатываются ваши приложения?
- какой метод аутентификации следует использовать?
- вы хотите реализовать портал?
Существует очень широкий спектр протоколов и инструментов, которые могут или не могут соответствовать вашим требованиям:
http://en.wikipedia.org/wiki/Category:Authentication_methods
http://en.wikipedia.org/wiki/Category:Identity_management_systems
Я личнонапример, CAS (http://www.jasig.org/cas) для единого входа на основе токенов между несколькими веб-приложениями. Он основан на Java, но также имеет некоторую поддержку PHP и .Net.
OpenID хорошо, если вы хотите, чтобы пользователи могливойдите в систему с помощью Google, Yahoo, любой учетной записи (настраиваемой ...) и не хотите самостоятельно хранить информацию о пользователе.
Kerberos / SPNEGO - это то, что вам нужно, если вы хотите иметь встроенную Windows-SSO.для корпоративных приложений интранета.
Для университетских приложений лучше всего подойдет SAML / Shibboleth.За пределами университетов он несколько менее популярен, возможно, потому, что это довольно сложный протокол.
Да, и я почти забыл: у большинства веб-фреймворков / стандартов есть собственная версия старой "аутентификации на основе форм".При переходе пользователя в форму входа в систему вводятся его имя пользователя и пароль.Оба с SSL или без SSL транспортируются на веб-сервер / сервер приложений.Сервер проверяет его по какой-либо базе данных и дает пользователю файл cookie, который передается и проверяется каждый раз, когда пользователь отправляет запрос.Но помимо всех этих блестящих протоколов это кажется довольно скучным: -)
И прежде чем делать что-либо с веб-аутентификацией, вы можете немного подумать о веб-безопасности в целом (http://journal.paul.querna.org/articles/2010/04/11/internet-security-is-a-failure/ http://www.eff.org/files/DefconSSLiverse.pdf) и что вы можете сделать, чтобы на вашем сайте не стало еще хуже (http://www.codinghorror.com/blog/2008/08/protecting-your-cookies-httponly.html http://owasptop10.googlecode.com/files/OWASP%20Top%2010%20-%202010.pdf).