SSO, использующий модуль drupal CAS из drupal в одной системе для демонстрации java webapp в другой системе (с другим ip) не происходит
Я хочу добиться единого входа для двух систем: одна работает на php(drupal) в одной системе, а другая - на java на другом сервере. Чтобы добиться этого, я использовал программное обеспечение с открытым исходным кодом CAS (Центральная служба аутентификации) JASIG. Я установил сервер JASIG CAS на машине, где находится моя установка drupal. Я также настроил поддержку JDBC-сервера CAS и создал базу данных аутентификации пользователей на том же компьютере, где установлен drupal. Затем я установил модуль drupal CAS в мою установку drupal. Затем на той же машине, где установлен drupal, я установил пример веб-приложения java на сервер Tomcat (JASIG CAS также установлен на том же сервере Tomcat на той же машине drupal). В примере веб-приложения java я настроил файл web.xml для включения клиентских фильтров Java CAS, как указано на веб-сайте JASIG. Затем я предоставил ссылку на пример java-приложения на домашней странице моей установки на drupal. Когда я захожу на сайт drupal, он регистрируется через аутентификацию сервера CAS и аутентифицирует пользователя, обращаясь к базе данных аутентификации пользователя сервера CAS. После входа в систему, когда я нажимаю ссылку на образец java-приложения на домашней странице, он не запрашивает повторного входа и не открывает страницу примера java-приложения, предоставляя, таким образом, SSO. Теперь, когда я настроил один и тот же пример java-приложения на другом компьютере (с другим ip) и предоставил ссылку на java-приложение на другом компьютере на моей домашней странице drupal, SSO не происходит, и нажатие на ссылку java-приложения перенаправляет меня на страницу входа в CAS, даже когда я вошел в систему установки drupal через CAS. Обе машины подключены через локальную сеть. Пожалуйста, помогите мне в решении проблемы. Если вам нужны более конкретные детали, пожалуйста, дайте мне знать. Заранее спасибо *сильный текст*
1 ответ
Если вы используете ssl с самозаверяющей сертификацией, вы должны импортировать сертификацию во все cas-client jvm, как показано ниже:
keytool -import -keystore %JAVA_HOME%/jre/lib/security/cacerts -file server.crt -alias jetty
пароль по умолчанию
Измени это