Используйте SimpleSAMLphp для регистрации запросов приложений и возврата другого пользователя - PullRequest
0 голосов
/ 28 февраля 2019

Итак, у нас есть несколько приложений, которые я хотел бы установить на SAML.Некоторые из приложений будут иметь до 100 человек, к ним будут обращаться только 2 или 3 (например, gitlab будет использоваться только разработчиками).У меня также есть некоторые приложения, которые большинство пользователей могут использовать только один раз в год, когда его регулярно используют 2 или 3 человека, поэтому у нас есть 10 лицензий или около того.Вместо того, чтобы иметь общий пароль и т. Д., Было бы неплохо, если бы я мог группировать пользователей как команды, каждая из которых со своей командой имеет имя пользователя.Итак, 2 вещи, которые я хочу:

  1. Возможность повторного входа в базу данных, не каждый вход пользователя, но каждый запрос приложения (пользователь может войти в систему уже, когда приложениепросит это).Журнал должен быть сохранен обратно в базу данных с такими сведениями, как пользователь SAML, имя пользователя приложения (может отличаться в некоторых приложениях от имени SAML), метка времени и, возможно, некоторые другие данные, например URL-адрес, к которому был получен доступ.Затем мы можем выполнить анализ данных, и, если нам когда-нибудь понадобится отследить «пользователя» в приложении (на самом деле это команда или группа людей), мы можем сопоставить запросы обратно в журнал SAML, чтобы увидеть, кто вошел в систему.в то время.
  2. Возможность вернуть другое имя пользователя к обычному имени SAML.Таким образом, пользовательская база данных будет иметь пользователя с электронной почтой, именем пользователя, паролем и т. Д., Как обычно, но тогда будет отдельная таблица под названием App1joins или что-то еще, которая будет иметь идентификатор из пользовательской таблицы с идентификатором из таблицы со спискомиз 10 пользователей.Это может быть «Отдел продаж», «Группа закупок», «Команда администраторов» и т. Д. Когда кто-то идет в App1 и App1 обращается к SAML (SimpleSAMLphp) для входа в систему, SimpleSAMLphp выполняет свою обычную аутентификацию, а затем (я предполагаю, используяхук) он регистрирует как имя пользователя SAML, так и имя пользователя App1 и т. д., и возвращает данные с именем пользователя App1 в качестве зарегистрированного пользователя.

Эффективно это означает, что в этом приложении нам не нужно делитьсяданные для входа в команду для всех в команде, и они также могут использовать свой обычный вход в систему единого входа для этого приложения.Но возможно ли это?

Я немного поработал с simpleSAMLphp (настроил его для использования GitLab), но ничего подобного.

Стоит ли создавать модуль для этого?Получат ли другие люди пользу от этого?Если бы в организациях были пользователи для приложения, которое они часто не использовали бы, это сэкономило бы много лицензий.

...