Как превратить аутентификацию моего сайта в провайдера аутентификации SAML? - PullRequest
0 голосов
/ 12 июня 2019

Я работаю с существующим устаревшим решением для аутентификации php, которое работает следующим образом:

  1. Пользователи вводят свои учетные данные
  2. Код проверяет LDAP для аутентификации
  3. Если аутентификация LDAP прошла успешно, имя пользователя передается в запрос БД для получения разрешений
  4. Если аутентификация LDAP не удалась, БД SQL проверяется на аутентификацию с теми же учетными данными
  5. Если аутентификация SQL прошла успешно, права доступа извлекаются
  6. Если аутентификация SQL не прошла успешно, сообщите об этом пользователю.

Это потому, что многие из наших пользователей являются сотрудниками, а многие - клиентами.

Теперь у нас есть требование от вторичного веб-провайдера обеспечить аутентификацию через SAML. Запрос должен превратить наш существующий метод аутентификации в источник аутентификации SAML. Я экспериментировал с созданием пользовательского модуля в SimpleSAMLPhp, но мне не повезло. Документация для настройки внешнего источника аутентификации, подобного этой, отсутствует, и мой существующий код по существу вводит переменные POST в качестве аргументов, которые я не смог собрать вместе. Моя трудность в том, чтобы заставить это работать, заставляет меня нервничать по поводу общей безопасности системы, если я все же заработал.

Как лучше решить эту проблему?

1 Ответ

1 голос
/ 12 июня 2019

От вашего вопроса у меня сложилось впечатление, что вы не очень знакомы с протоколом SAML.

Все, что я могу сейчас сделать, - это дать вам несколько советов для начала работы.

Первое: учитьсяо протоколе.Попытайтесь понять процесс единого входа и различить, какие компоненты в вашей компании действуют как «Поставщик услуг» и «Поставщик удостоверений»

Во-вторых: Поймите область интеграции. Попробуйте ответить на следующие вопросы: - Это приложение работает ввнутренняя или внешняя сеть?- У кого есть доступ?- Есть ли уже проверка подлинности SAML для других приложений в вашей компании?- Сервер LDAP уже контролируется Identity Provider, или вам нужно внедрить новый?

Как только вы познакомитесь, вы можете начать думать о разработке.Существует множество существующих решений и библиотек, поэтому, как только вы поймете, как работает протокол, вам будет гораздо проще продолжать.

Я буду рад помочь вам в вашем путешествии.Это задание потребует много усилий, поэтому будьте готовы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...