Центральная служба аутентификации
Эта статья нуждается в дополнительных цитатах для проверки . ( март 2023 г. ) |
Центральная служба аутентификации ( CAS ) — это протокол единого входа в Интернет . [1] Его цель — разрешить пользователю доступ к нескольким приложениям, предоставив свои учетные данные (например, идентификатор пользователя и пароль) только один раз. Это также позволяет веб-приложениям аутентифицировать пользователей, не получая доступа к учетным данным пользователя, таким как пароль. Название CAS также относится к пакету программного обеспечения , реализующему этот протокол.
Описание
[ редактировать ]В протоколе CAS участвуют как минимум три стороны: веб-браузер клиента , веб- приложение, запрашивающее аутентификацию, и сервер CAS . Это также может включать в себя внутреннюю службу , например сервер базы данных, который не имеет собственного HTTP-интерфейса, но взаимодействует с веб-приложением.
Когда клиент посещает приложение, требующее аутентификации, приложение перенаправляет его в CAS. CAS проверяет подлинность клиента, обычно путем проверки имени пользователя и пароля по базе данных (например, Kerberos , LDAP или Active Directory ).
Если аутентификация прошла успешно, CAS возвращает клиента приложению, передав ему билет службы . Затем приложение проверяет билет, связываясь с CAS через безопасное соединение и предоставляя свой собственный идентификатор службы и билет. Затем CAS предоставляет приложению достоверную информацию о том, успешно ли прошел аутентификацию конкретный пользователь.
CAS обеспечивает многоуровневую аутентификацию через адрес прокси . Сотрудничающая серверная служба, такая как база данных или почтовый сервер, может участвовать в CAS, проверяя подлинность пользователей с помощью информации, которую она получает от веб-приложений. Таким образом, клиент веб-почты и сервер веб-почты могут реализовывать CAS.
История
[ редактировать ]CAS был задуман и разработан Шоном Баерном из Йельского университета технологий и планирования . Позже его поддерживал Дрю Мазурек в Йельском университете. В CAS 1.0 реализован единый вход. CAS 2.0 представил многоуровневую аутентификацию прокси. Несколько других дистрибутивов CAS были разработаны с новыми функциями.
В декабре 2004 года CAS стал проектом группы специальных интересов Java в администрировании (JASIG) , которая с 2008 года отвечает за его обслуживание и развитие. Ранее называвшаяся «Йельский CAS», теперь CAS также известна как «Jasig CAS». В 2010 году Джасиг вступил в переговоры с Фондом Сакаи о слиянии двух организаций. В декабре 2012 года обе организации были объединены в Apereo Foundation.
В декабре 2006 года Фонд Эндрю Меллона наградил Йельский университет своей первой ежегодной премией Меллона за технологическое сотрудничество в размере 50 000 долларов за разработку Йельским университетом CAS. [2] На момент получения этой награды CAS использовалась в «сотнях университетских кампусов (среди других бенефициаров)».
В апреле 2013 года была выпущена спецификация протокола CAS 3.0. [3]
Реализации
[ редактировать ]![]() | Этот раздел написан как руководство или руководство . ( март 2023 г. ) |
Реализация Apereo CAS
[ редактировать ]Сервер Apereo CAS, который на сегодняшний день является эталонной реализацией протокола CAS, поддерживает следующие функции:
- Протокол CAS v1, v2 и v3
- Протокол SAML v1 и v2
- OAuth Протокол
- OpenID и протокол подключения OpenID
- Протокол пассивного запроса WS-Federation
- Аутентификация через JAAS , LDAP , RDBMS, X.509 , Radius, SPNEGO , JWT , Remote, Trusted, BASIC, Apache Shiro , MongoDB , Pac4J и другие.
- Делегированная аутентификация для WS-FED, Facebook, Twitter, SAML IdP, OpenID , OpenID Connect , CAS и других.
- Авторизация через ABAC, время/дату, REST, Grouper Internet2 и многое другое.
- Кластерное развертывание высокой доступности с помощью Hazelcast , Ehcache , JPA, Memcached , Apache Ignite , MongoDB, Redis , Couchbase и других.
- Регистрация приложений с поддержкой JSON , LDAP, YAML , JPA, Couchbase, MongoDB и других.
- Многофакторная аутентификация через Duo Security, SAASPASS, YubiKey , RSA, Google Authenticator ( TOTP ) и другие.
- Административные интерфейсы для управления журналированием, мониторингом, статистикой, настройкой, регистрацией клиентов и многим другим.
- Глобальная и индивидуальная тема пользовательского интерфейса и фирменный стиль.
- Управление паролями и соблюдение политики паролей.
Реализация Джанго
[ редактировать ]CAS-сервер Джанго
[ редактировать ]- Джанго-мама-кас: [4] Сервер единого входа Django Central Authentication Service (CAS).
CAS-клиент Django
[ редактировать ]- Джанго-установить: [5] Библиотека аутентификации клиента Django CAS 1.0/2.0/3.0, поддержка Django 2.0, 2.1, 2.2, 3.0 и Python 3.5+
См. также
[ редактировать ]- Система единого входа CoSign
- ЖОССО
- Список реализаций единого входа
- ОпенАМ
- OpenID
- SAML
- Продукты и услуги на основе SAML
- Шибболет (программное обеспечение)
Ссылки
[ редактировать ]- ^ «Страница протокола JASIG CAS» . Аперео/ДЖАСИГ . Проверено 24 июня 2016 г.
- ^ Пресс-релиз премии Меллона за технологическое сотрудничество (PDF) .
- ^ «Спецификация протокола CAS 3.0» . Проверено 6 ноября 2020 г.
- ^ «Джанго-мама-кас» . Гитхаб . 16 февраля 2022 г.
- ^ «Джанго-кас-нг» .