Перейти к основному контенту

Яндекс 360

**Яндекс 360** (<https://360.yandex.ru>) — виртуальное рабочее пространство, которое включает в себя персональные сервисы.

Подключение Яндекс 360 к Blitz Identity Provider выполняется по протоколу SAML и состоит из двух этапов:

 * Этап 1. Настройки на стороне Яндекс 360
 * Этап 2. Настройки на стороне Blitz Identity Provider

<div style="background-color: #fff3cd; border: 1px solid #ffc107; border-radius: 5px; padding: 10px;">
     <strong>Важно:</strong> <p>В инструкции для примера указано, что Blitz IDP установлен на домене <code class="docutils literal notranslate"><span class="pre">https://login.company.com</span></code>. Уточните ваш адрес перед применением инструкции.</p>
 </div>

### Этап 1. Настройки на стороне Яндекс 360

1. Откройте Яндекс 360 для Бизнеса: <https://admin.yandex.ru/>
2. Перейдите в раздел __Общие настройки__ и выберите __Единый вход (SSO)__.
3. Нажмите __Настроить__.
4. Заполните поля с обязательными параметрами:

* **URL страницы входа**: ``https://login.company.com/blitz/saml/profile/SAML2/Redirect/SSO``
* **Издатель поставщика удостоверений**: ``https://login.company.com/blitz/saml``
* **Проверочный сертификат**: укажите сертификат Blitz из метаданных. Для этого пройдите по ссылке ``https://login.company.com/blitz/saml/profile/Metadata/SAML``, откройте XML документ с метаданными и найдите раздел ``<ds:X509Certificate>``. Например:

<p align="center">
  <img width="500" height="200" src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image-1717769134893.png">
<p>

__Скопируйте__ сертификат и __Вставьте__ его в поле в PEM-формате:

```
-----BEGIN CERTIFICATE-----
  <значение сертификата>
  -----END CERTIFICATE-----
```

5. Нажмите __Сохранить__.

<p align="center">
  <img width="500" height="200" src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/sso.jpeg">
<p>

 ### Этап 2. Настройки на стороне Blitz Identity Provider

В консоли управления Blitz Identity Provider перейдите в раздел __SAML__ и выполните следующие действия:
1. Нажмите __Добавить новый SAML-атрибут__.
2. Укажите название атрибута и его источник в хранилище. В данном случае источники ``email`` ``given_name`` ``family_name``. Выберите их из выпадающего списка.
3. После каждого заполнения свойств атрибутов нажмите __Добавить__.

<p align="center">
<img width="500" height="200" src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/scaled-1680-/image-1.png">
  <p align="center">

<p align="center">
<img width="500" height="200" src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image-11.png">
  <p align="center">

<p align="center">
<img width="500" height="200" src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image-10.png">
  <p align="center">
Свойства для каждого атрибута 

<p align="center">
<img width="500" height="200" src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image.png">
  <p align="center">
Список атрибутов после добавления

4. Далее добавьте кодировщик для каждого атрибута. Для этого выберите атрибут и нажмите __Добавить кодировщик__.

<p align="center">
<img width="700" height="200" src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image-1717672851037.png">

5. Для каждого атрибута добавьте кодировщики ``SAML1String`` и ``SAML2String``. В зависимости от передаваемого атрибута пользователя кодировщику присваивается название ``User.EmailAddress``, ``User.Firstname`` или ``User.Surname`` соответственно.
6. Задайте настройки кодировщика по аналогии с приведенным ниже примером:

<p align="center">
<img width="300" height="400" src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image-5.png">

7. Нажмите __Сохранить__ после каждого создания кодировщика.
8. Далее в консоли управления *Blitz Identity Provider* перейдите в раздел **Приложения**.
9. Создайте новое приложение, задав его базовые настройки:

* **Идентификатор (entityID или client_id)**: ``https://yandex.ru/``
* **Название**: укажите название приложения, которое видно только внутри Blitz. Например, ``Yandex360``.
* **Домен**: ``https://passport.yandex.ru/``

<p align="center">
  <img src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image-1718375868253.png">
</p>

10. Нажмите **Сохранить**.

11. Далее нажмите кнопку **Параметры** <img width="25" height="25" src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-05/button-1.png"> у предложения Яндекс360 и отредактируйте параметры приложения:
* **Протоколы**: выберите ``SAML`` и нажмите **Сконфигурировать**
* Выберите **SAML 2.0 Web SSO Profile** и нажмите **Сконфигурировать**. 
Установите следующие настройки:

  * **Подписывать утверждения**: ``always``
  * **Шифровать утверждения**: ``never``
  * **Шифровать идентификаторы (NameIds)**: ``never``
  * **Включить передачу SAML-утверждений о пользователе в специальном блоке AttributeStatement**: установить флажок.

<p align="center">
  <img src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image-7.png">
</p>

12.  В разделе **Атрибуты пользователя** настройте передачу в Яндекс 360 атрибута ``transientId``, а также созданных на первом этапе SAML-атрибутов.

<p align="center">
  <img src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image-1717674776365.png">
</p>

13.  Нажмите **Сохранить**.
14.  Далее в разделе __Метаданные__ нажмите __Изменить__. Скопируйте и вставьте следующий код:

<p align="center">
  <img src="https://docs-test.idblitz.ru/bst/uploads/images/gallery/2024-06/image-1717687901912.png">
</p>

```xml
<?xml version="1.0" encoding="utf-8"?>
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
                     xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
                     entityID="https://yandex.ru/">
    <md:SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">

        <md:AssertionConsumerService index="1" isDefault="true"
                                     Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
                                     Location="https://passport.yandex.ru/auth/sso/commit"/>
    </md:SPSSODescriptor>
</md:EntityDescriptor>
```

15.   Нажмите **Сохранить**.

<div style="background-color: #d0f0c0; border: 1px solid #28a745; border-radius: 5px; padding: 10px;">
<strong>Совет:</strong>
<p>После прохождения всех шагов рекомендуем проверить корректность входа в Яндекс 360: <code class="docutils literal notranslate"><span class="pre">https://passport.yandex.ru/auth</span></code></p>
</div>