iSpring Learn позволяет использовать SAML для реализации единого входа.
Авторизация с помощью SAML также работает в мобильном приложении.
Настройка SAML в iSpring Learn
Чтобы настроить технологию SAML в вашем аккаунте:
- Войдите в раздел Настройки, затем откройте вкладку Интеграции и в разделе Технология для авторизации пользователей нажмите на кнопку Подключить.
Заполните форму, указав URL и другие детали вашего поставщика учётных записей. Это тот ресурс, который вы используете для первоначальной авторизации на вашем корпоративном портале.
Issuer Url (IdP Entity ID) URL, который идентифицирует поставщика учётных записей. Также известен как Entity ID. Это значение включено в SAML запрос как элемент Issuer.
Sign On Url Путь к серверному скрипту, который генерирует SAML запросы подтверждения идентификатора для осуществления логина. Logout Url Путь к серверному скрипту, который генерирует SAML запросы подтверждения идентификатора для осуществления выхода. Certificate Fingerprint Сокращённая версия сертификата открытого ключа проверки электронной подписи. Используется для подтверждения подписей запросов, исходящих от поставщика учётных записей (IdP). Подробнее о сертификатах fingerprint здесь. Перенаправлять пользователей на страницу логинации, заданную согласно SSO Если эта опция включена, вход в ваш аккаунт iSpring Learn будет производиться на странице https://yourcompany.ispringlearn.ru/sso/login. Добавить на боковую панель ссылку для перехода на основной сайт На боковой панели появится ссылка на ресурс, который укажет администратор. Название ссылки Название ссылки, которая появится на боковой панели. Url основного сайта Адрес ссылки, которая появится на боковой панели. Если нужно, настройте соответствие полей iSpring Learn и внешних атрибутов SSO.
Нажмите Подключить.
Важно:
Если после подключения SAML вы увидите ошибку 400 и сообщение о том, запрос составлен неверно (Cannot retrieve metadata for IdP 'https://myidp.com/oam/fed' because it isn't a valid IdP for this SP), то значение для поля Issuer Url (IdP Entity ID) указано неверно.
Чтобы авторизация с помощью SAML заработала корректно, скопируйте URL из ошибки и вставьте его в поле Issuer Url (IdP Entity ID).
Настройка SAML на сервере
Мы рекомендуем использовать библиотеку https://simplesamlphp.org/ для настройки IdP-сервера (IdP - англ. Identity Provider, рус. поставщик идентификаторов) для настройки авторизации через SAML 2.0.
Настройка поставщика услуг
Настройка iSpring Learn производится специалистами на нашей стороне. Просто предоставьте нам следующие данные:
URL-адрес поставщика поставщика учётных записей (IdP).
SSL сертификат (server.crt).
Секретный ключ (server.pem).
certFingerprint для быстрой проверки.
Настройка поставщика удостоверений
Для настройки поставщика учётных записей (IdP) для осуществления авторизации выполните следующие действия:
Включите поддержку SAML 2.0 и Shibboleth 1.3 в файле config/config.php
'enable.saml20-idp' => true, 'enable.shib13-idp' => true,
Включите модуль авторизации. Различные модули авторизации находятся в папке modules/. Откройте папку нужного метода и создайте в ней пустой файл с именем enabled.
Настройте модуль авторизации в файле config/authsources.php.
Важно: email — обязательный атрибут.
$config = array( 'example-userpass' => array( 'exampleauth:UserPass', 'student:studentpass' => array( 'uid' => array('student'), 'email' => 'student@example.com', 'eduPersonAffiliation' => array('member', 'student'), ), 'employee:employeepass' => array( 'uid' => array('employee'), 'email' => 'employee@example.com', 'eduPersonAffiliation' => array('member', 'employee'), ), ), );
Настройте IdP в файле конфигурации saml20-idp-hosted по примеру.
'attributes.NameFormat' => 'urn:oasis:names:tc:SAML:2.0:attrname-format:uri', 'authproc' => array( // Convert LDAP names to oids. 100 => array('class' => 'core:AttributeMap', 'name2oid'), ),
Добавьте информацию о поставщике услуг в файл metadata/saml20-sp-remote.php.
$metadata['https://sp.example.org/simplesaml/module.php/saml/sp/metadata.php/default-sp'] = array( 'AssertionConsumerService' => 'https://sp.example.org/simplesaml/module.php/saml/sp/saml2-acs.php/default-sp', 'SingleLogoutService' => 'https://sp.example.org/simplesaml/module.php/saml/sp/saml2-logout.php/default-sp', );=
Авторизация без SAML
Если вы включили SAML в вашем аккаунте iSpring Learn и по каким-то причинам не можете войти, используя единый вход, введите следующий адрес: https://yourcompany.ispringlearn.ru/login?no_sso.
Теперь вы войдете в аккаунт как обычно — с помощью логина и пароля.
Полезные ссылки по настройке авторизации c помощью SAML:
Единый вход с использованием SAML
Настройка iSpring SSO через Azure AD + SAML
Настройка SAML 2.0 SSO с Microsoft Active Directory Federation Services