BearPass + Indeed Identity Provider (SAML)
Автор Nikita Kim, Last modified by Nikita Kim на 14 октября 2025 05:46 PM

Предусловия:

Настройка BearPass:

  1. Перейдите в Администрирование:


  2. Перейдите в настройки SSO:



  3. В поле "ID объекта IdP" укажите ID: urn:indeedid:saml_idp :



  4. Заполните поле "URL-адрес входа". Укажите URL-адрес в формате https://your.idp.name/am/idp/Account/SsoService. Данный адрес возможно экспортировать из конфигурационного файла Indeed AM Identity Provider (C:\inetpub\wwwroot\am\idp\app-settings.json):


  5. В поле "Сертификат" укажите данные сертификата IDP. Для этого, выгрузите сертификат IDP в формате Base64 и откройте его текстовым редактором, затем скопируйте текст файла:


  6. Настройте шифрование данных и подписи запросов. Для этого укажите SSL-сертификат, использующийся для шифрования данных, и его ключ. Данный сертификат также должен быть установлен на сервере IDP. Выберите требования подписи запросов, утверждений и запросов аутентификации, а также шифрования NameID:


  7. Разрешите использование SSO для пользователей:


  8. Сохраните изменения.

Настройка Indeed Identity Provider:

  1. Перейдите в каталог C:\inetpub\wwwroot\am\idp и откройте конфигурационный файл app-settings.json.
  2. Добавьте запись вида:

     {
    "ServiceProvider": "https://your.bearpass.link/saml/metadata",
    "InLoginFormat": "Name",
    "OutLoginFormat": "PrincipalName"
    }



    где https://your.bearpass.link/saml/metadata - ссылка на метаданные из сервиса BearPass.

  3. Добавьте запись вида:

    {
    "ServiceProvider": "https://your.bearpass.link/saml/metadata",
    "Attributes": [
    {
    "Name": "Name",
    "UserNameFormat": "PrincipalName"
    }
    ]
    }



  4. Далее, в раздел "SAML", добавьте запись вида:

    {
    "Name": "https://your.bearpass.link/saml/metadata",
    "Description": "BearPass",
    "WantAuthnRequestSigned": true,
    "SignSamlResponse": true,
    "EncryptAssertion": true,
    "SignAssertion": true,
    "AssertionConsumerServiceUrl": "https://bearpass.indeed.local/saml/acs",
    "ValidAssertionConsumerServiceUrls": [
    "https://bearpass.indeed.local/saml/acs"
    ],
    "PartnerCertificates": [
    {
    "Thumbprint": "YourCertThumbrint"
    }
    ]
    }



    где:

    WantAuthnRequestSigned - требование подписи запроса;
    SignSamlResponse - требование подписи Saml запроса;
    SignAssertion - требование подписи утверждения;
    EncryptAssertion - шифрование утверждения;
    Используемые ссылки предоставляются сервисом BearPass и описаны в metadata;
    Thumbprint
    - отпечаток сертификата шифрования данных для BearPass;
    Если сертификат установлен на сервере IDP, его отпечаток можно получить выполнив команду в PS: Get-Childitem Cert:\LocalMachine\My\ | Where-Object {$_.Subject -eq "CN=<имя сертификата>"}

  5.  Сохраните изменения и перезапустите пул IDP в IIS:


  6. Выгрузите metadata IDP. В Partner Name укажите "Name" из п.4 (https://your.bearpass.link/saml/metadata):



  7.  Загрузите полученный в п.6 файл в BearPass и сохраните изменения:

Проверка работы интеграции:

  1. Перейдите на страницу аутентификации в сервис, выберите пункт "Войти через SSO". При нажатии, сервис перенаправит запрос в Indeed AM Identity Provider:


  2. Введите имя пользователя в IDP:



  3. Выберите метод аутентификации для пользователя:



  4. Подтвердите аутентификатор:


  5. При успешной аутентификации пользователю будет предоставлен доступ к сервису. В журналах BearPass и Indeed AM отобразится событие, уведомляющее об аутентификации пользователя.





(4 голос(а))
Эта статья полезна
Эта статья бесполезна