Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Центральная служба проверки подлинности ( 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 года отвечает за его поддержку и развитие. Ранее называвшаяся «Yale CAS», CAS теперь также известна как «Jasig CAS». В 2010 году Джасиг начал переговоры с Фондом Сакаи о слиянии двух организаций. Эти две организации были объединены в Apereo Foundation в декабре 2012 года.

В декабре 2006 года Фонд Эндрю Меллона присудил Йельскому университету свою Первую ежегодную премию Меллона за технологическое сотрудничество в размере 50 000 долларов за разработку Йельского университета CAS. [2] На момент вручения этой награды CAS использовалась в «сотнях университетских городков (среди других бенефициаров)».

В апреле 2013 года была выпущена спецификация 3.0 протокола CAS. [3]

Реализация [ править ]

Реализация Apereo CAS [ править ]

Сервер Apereo CAS, который на сегодняшний день является эталонной реализацией протокола CAS, поддерживает следующие функции:

  • Протоколы CAS v1, v2 и v3
  • Протокол SAML v1 и v2
  • Протокол OAuth
  • Протокол OpenID и OpenID Connect
  • Протокол пассивного запроса 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, Internet2 Grouper и др.
  • Кластерные развертывания высокой доступности через Hazelcast , Ehcache , JPA, Memcached , Apache Ignite , MongoDB, Redis , Couchbase и другие.
  • Регистрация приложений поддерживается JSON , LDAP, YAML , JPA, Couchbase, MongoDB и другими.
  • Многофакторная аутентификация через Duo Security, SAASPASS, YubiKey , RSA, Google Authenticator ( TOTP ) и др.
  • Административные пользовательские интерфейсы для управления ведением журналов, мониторингом, статистикой, конфигурацией, регистрацией клиентов и многим другим.
  • Глобальная тема и брендинг пользовательского интерфейса и пользовательского интерфейса для каждого приложения.
  • Управление паролями и соблюдение политики паролей.

Реализация Django [ править ]

Сервер Django CAS [ править ]

  • django-mama-cas: [4] Сервер единой регистрации Django Central Authentication Service (CAS)

Клиент Django CAS [ править ]

  • django-cas-ng: [5] Клиентская библиотека аутентификации Django CAS 1.0 / 2.0 / 3.0, поддерживает Django 2.0, 2.1, 2.2, 3.0 и Python 3.5+!

См. Также [ править ]

  • CoSign единый вход
  • JOSSO
  • Список реализаций единого входа
  • OpenAM
  • OpenID
  • Pubcookie
  • SAML
  • Продукты и услуги на основе SAML
  • Шибболет (Консорциум Шибболет)

Ссылки [ править ]

  1. ^ "Страница протокола JASIG CAS" . Аперео / ДЖАСИГ . Проверено 24 июня +2016 .
  2. ^ Пресс-релиз Премии Меллона за сотрудничество в области технологий (PDF) .
  3. ^ "Спецификация протокола CAS 3.0" . Дата обращения 6 ноября 2020 .
  4. ^ "Джанго-мама-кас" .
  5. ^ "django-cas-ng" .

Внешние ссылки [ править ]

  • Стэнфордский WebAuth
  • CookieAuth Миннесотского университета
  • Проект Apereo CAS
  • Джанго-мама-кас
  • django-cas-ng