...
Информация |
---|
Важно: Если после подключения 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, |
...
Настройте модуль авторизации в файле 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.
...