Актуальную версию документа см. на сайте Министерства цифрового развития, связи и массовых коммуникаций Российской Федерации по адресу https://digital.gov.ru/ru/documents/6186/.

Запрос аутентификации (AuthnRequest)

Запрос аутентификации (AuthnRequest) представляет собой XML-документ, который содержит следующие элементы:

1. saml2p:AuthnRequest - описывает параметры запроса AuthnRequest и содержит следующие атрибуты:

- AssertionConsumerServiceURL - URL провайдера услуг, предназначенный для обработки ответов от поставщика идентификации (необязательный);

- Destination - URL-адрес ИС-поставщика идентификации, предназначенный для обработки AuthnRequest;

- ID - уникальный идентификатор сообщения;

- IssueInstant - дата создания запроса;

- ProtocolBinding - используемая SAML привязка.

2. saml2:Issuer - идентификатор поставщика услуг, отправившего AuthnRequest (является вложенным по отношению к элементу saml2p:AuthnRequest).

Структура AuthnRequest:

00000007.jpg

Рисунок 7 - Структура AuthnRequest

Пример AuthnRequest:

<?xml version="1.0" encoding="UTF-8"?>

<saml2p:AuthnRequest

xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"

AssertionConsumerServiceURL="https://atc-

504:7002/oiosaml/saml/SAMLAssertionConsumer"

Destination="https://esia-

portal1.test.gosuslugi.ru/idp/profile/SAML2/Redirect/SSO"

ForceAuthn="false"

ID="_054240e4-b2a8-48e9-b4c6-e0b5e84d3a35"

IsPassive="false"

IssueInstant="2012-02-28T06:43:35.704Z"

ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-

POST"

Version="2.0">

<saml2:Issuer

xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">sia_test</saml2:Issuer>

</saml2p:AuthnRequest>

Для сгенерированного SAML 2.0 сообщения с запросом AuthnRequest должно быть выполнено связывание (binding) с протоколом HTTP по методу HTTP-Redirect с учетом следующих особенностей:

- сообщение подписывается с помощью электронной подписи поставщика услуг, причем подписана должна быть строка запроса на аутентификацию пользователя;

- подписанное сообщение сжимается и кодируется в кодировке Base64.

В процессе связывания формируется конечный URL AuthnRequest, который в качестве GET-параметров должен содержать:

- SAMLRequest - AuthRequest в конечном виде;

- SigAlg - алгоритм подписи запроса, с помощью которого выполнялась подпись запроса аутентификации;

- Signature - подпись, полученная в результате подписания запроса аутентификации.

Пример URL AuthnRequest:

https://esia-

portal1.test.gosuslugi.ru/idp/profile/SAML2/Redirect/SSO?SAMLRequest=fZJBa%2BMwEIX%2FitBdlqzYWyPilLSlbK

FLQ%2BzuYS9FkSepwJGyGtn051dxEtpS6EUg9Oabmfc0v37b92SEgNa7muaZoASc8Z11u5o%2Bt%2FesoteLOep9Lw9qOcRXt4b%2FA

2AkqdChOr3UdAhOeY0WldN7QBWNapZ%2FHpXMhDoEH73xPSVLRAgxtbr1Doc9hAbCaA08rx9r%2BhrjARXnOhpWikJdCSG5t%2F7Ygk

%2FHkfgNQcldGsc6HacVLhS0mnUwZrDzY6YjM0d5n3S7LAzcdgeextraHiaq5GvobAATedM8UXLvg4Fp3ZpudY9AycNdTV9EIcy22JR

sVpYVK%2FIrzTYm75j%2BVVVFJTeiK02S4koj2hE%2BihEHeHAYtYs1lSKXTEgmq1ZUKp%2BpvMhmVfGPktXZqhvrThH85OvmJEL1u2

1XbPXUtJT8vUSZBPQcnJq6h8%2BJ%2FQzWF4%2FpItn4EpO%2Fc%2F4ZtThfv36JxTs%3D&RelayState=_12db488a-a516-41e3-

801c-3e8f23547314&SigAlg=http%3A%2F%2Fwww.w3.org%2F2000%2F09%2Fxmldsig%23rsa-

sha1&Signature=k1XL2WfE1KMHzaJtjjaL2O1soweYNM06Xt50E20QgwRzVOBZ0T79HJEjPMu3jBhDdmM47zlrswbhUFPV22oDbk5K

uXJ%2F5FVPwXCTefnVCZGXHU8b1SWuC%2FoKlTSxum6enoommHN5S%2FeYAP9S0KNNW5yEP3eJQHkcsTYuTKPmyP8%3D