Как реализовать SSO - PullRequest
       7

Как реализовать SSO

1 голос
/ 09 февраля 2012

Я хочу внедрить единый вход в систему единого входа.
Я нашел много ссылок и статей, рассказывающих о CAS OpenID и многих других вещах, я действительно потерян
, так что мне использовать CAS?Я установил CAS Server и развернул его в Tomcat. Каков следующий шаг?Или это неправильно?Можете ли вы объяснить мне, как я могу разработать простой HelloWorld для реализации SSO.

Большое спасибо

1 Ответ

13 голосов
/ 01 марта 2012

CAS является популярной реализацией единого входа, поэтому установка сервера CAS является хорошим первым шагом.Вам понадобится сервер для всего, что вы планируете, и вы можете проверить его работоспособность, не имея других частей (инструкции содержатся в файле INSTALL.TXT, входящем в дистрибутив).То же самое нельзя сказать о клиентах CAS, которые вы намереваетесь написать.

После того как сервер CAS запущен и работает, у вас осталось две основные задачи:

  1. Создание или изменениеваше приложение будет клиентом CAS
  2. Замените обработчик аутентификации по умолчанию на полезный

Если вы похожи на меня, вы хотите увидеть эту вещь в действии так же быстро, как и выможно (или есть что показать своему менеджеру).В этом случае сначала выполните шаг 1, но не начинайте с реального приложения.Просто сделайте быстрый Hello World.Для этого есть конкретные инструкции на https://wiki.jasig.org/display/CASUM/Demo.У вас уже установлен Tomcat, поэтому пропустите шаги 1 и 3. Если вы также включили HTTPS, вы можете пропустить шаги 2 и 4 и сразу перейти к шагу 5. Как только вы это сделаете, у вас будет довольнохорошая идея о том, что вам нужно сделать для реального приложения, предполагая, что вы будете реализовывать свой клиент CAS в Java.

Вам необходимо выполнить шаг 2, поскольку обработчик аутентификации по умолчанию полезен только для демонстрации.Любой совпадающий идентификатор пользователя / пароль (например, привет / привет) будет успешно аутентифицирован.Вы, вероятно, будете проходить аутентификацию на основе базы данных SQL или каталога, такого как Active Directory или сервер LDAP.CAS включает в себя обработчики аутентификации для всех этих вариантов использования, а также для других, но Jasig организует их как подпроекты, поэтому вам придется делать сборку Maven из исходного кода, чтобы использовать любой из них (что является большой болью в заднице, если выспросите меня).Документация о том, как можно найти на https://wiki.jasig.org/display/CASUM/Authentication, но если вы уже настроены с Maven, это не так уж плохо.Просто добавьте зависимость во включенный файл pom.xml и выполните сборку.

Единый вход может быть сложным, если вы новичок в этом, поэтому сделайте небольшие шаги и потратьте время, чтобы понять, что выделаешь.Лучшее расширение CAS, которое я когда-либо видел, это https://www.purdue.edu/apps/account/html/cas_presentation_20110407.pdf.Это дает конкретные детали, включая типичные записи журнала сервера, детали запросов и ответов и очень четкую диаграмму общего потока.Это должно быть все, что вам нужно, чтобы понять, что происходит.

Удачи.

...