(1) Мы можем получить нижеприведенную информацию по предоставленной вами ссылке для спецификации протокола saml (3.2 Запросы и ответы).
(I) Internet2 является одним из основных участников спецификации протокола SAML.
(II) 3.2 Запросы и ответы
3.2.1 Сложный тип RequestAbstractType
ID [Required]
Version [Required]
IssueInstant [Required]
Destination [Optional]
Consent [Optional]
<saml:Issuer> [Optional] Identifies the entity that generated the request message.
<ds:Signature> [Optional]
<Extensions> [Optional]
Цитируйте ваше сообщение "Я думал, что EntityId - это значение, которое отправляется в Эмитент элемент ".
Ответ :
Да.Ты прав.SAML SP Идентификатор объекта отправляется в элементе Issuer запроса авторизации SAML в IdP SAML (как показано запросом SAML, отправленным Shibboleth SAML SP "https://mycompany.example.org" позже).
(2) Вопрос : «Что означает параметр« SP Entity / IdP Audience »в конфигурации saml для поставщика услуг?»
Цитата " SP Entity / Аудитория IdP : Это поле не является обязательным для Looker, но многим IdP потребуется это поле.Если вы введете значение в это поле, оно будет отправлено вашему IdP как Идентификатор субъекта Looker в запросах на авторизацию.В этом случае Looker будет принимать только те ответы авторизации, которые имеют это значение в качестве аудитории.Если ваш IdP требует значения аудитории, введите эту строку здесь.Это значение также используется в качестве поля эмитента в сообщениях, отправляемых в IdP.Таким образом, если ваш IdP жалуется на то, что получает сообщение без отправителя, вам необходимо заполнить его. Вы можете использовать любую строку, которая может потребоваться вашему IdP.В большинстве случаев вы можете использовать «Looker».Если это поле присутствует, то ваш IdP должен отправить его как поле аудитории в сообщении, которое он отправляет обратно в Looker. "
Ответ :
(I) SAML SP Looker НЕ отправляет идентификатор объекта SP в элементе Issuer запроса авторизации SAML в IdP SAML, если вы оставите поле " SP Entity / IdP Audience (необязательно) " пустым по умолчанию.
(II) «если ваш IdP жалуется, что он получает сообщение без отправителя, вам необходимо заполнить его».
Это означает, что вам необходимо заполнить SAML SP Entity ID (например, «https://mycompany.looker.com/") в поле " SP Entity / IdP Audience (необязательно) " через графический интерфейс администратора Looker, чтобы Looker мог отправлять ID объекта SP (например, "https://mycompany.looker.com/") in Issuer элемент запроса авторизации SAML к IdP SAML.
(III) "Если это поле присутствует, тогда ваш IdP должен отправить его как поле аудитории в сообщении, которое он отправляет обратноto Looker. "
Это означает, что IdP SAML отправит SAML SP Entity ID (например,"https://mycompany.looker.com/") в поле аудитория ответа SAML для Looker SAML SP.
(3) SAML Пример : Цитата" Okta теперь предлагает LookerПриложение, которое является рекомендуемым способом совместной настройки Looker и Okta. "
(I) Как собрать и запустить Shibboleth SAML IdP и SP с использованием контейнера Docker в репозитории GitHub, что позволяет запускатьShibboleth SAML IdP (параллельно Okta SAML IdP) и Shibboleth SAML SP (параллельно Looker SAML SP) на вашей собственной машине.
Internet2 предоставил значительные ресурсы для разработки Shibboleth SAML IdP и Shibboleth SAML SP.
(II) Без потери общности мы создаем демонстрацию взаимодействия SAML между IdP Okta SAML и SAML SP Shibboleth, чтобы продемонстрировать, как запрос SAML содержит ID объекта SP в элементе Issuer и какОтвет SAML содержит SP Entity ID в поле аудитория .
Следующий запрос SAML и усеченный ответ SAML извлекаются из успешного единого входа SAML (SSO), предоставляемого Okta SAML IdP до Shibboleth SAML SP (которыйпараллельно Looker SAML SP ).
SAML Shibboleth Идентификатор объекта SP равен https://mycompany.example.org/Shibboleth.sso/Metadata
Запрос SAML, отправленный SAML SP Shibboleth to Okta SAML IdP
<samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
AssertionConsumerServiceURL="https://mycompany.example.org/Shibboleth.sso/SAML2/POST"
Destination="https://dev-806230.oktapreview.com/app/mycompany_shibbolethspdemo/exdgpcskkbjCPYTX90h7/sso/saml"
ID="_9f70ad26f1e69244fade279bc57f7e23"
IssueInstant="2019-05-21T18:40:06Z"
ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
Version="2.0">
<saml:Issuer xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">https://mycompany.example.org/Shibboleth.sso/Metadata</saml:Issuer>
<samlp:NameIDPolicy AllowCreate="1" />
</samlp:AuthnRequest>
Truncated ответ SAML, отправленный Okta SAML IdP на Shibboleth SAML SP (отображает связанные элементы только для демонстрационной цели)
<saml2p:Response xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"
Destination="https://mycompany.example.org/Shibboleth.sso/SAML2/POST"
ID="id63794486675331821511177658"
InResponseTo="_9f70ad26f1e69244fade279bc57f7e23"
IssueInstant="2019-05-21T18:40:43.033Z"
Version="2.0">
<saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">http://www.okta.com/exdgpcskkbjCPYTX90h7</saml2:Issuer>
<saml2p:Status xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"> <saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success" /></saml2p:Status>
<saml2:Assertion xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion"
ID="id63794486676092501915396379"
IssueInstant="2019-05-21T18:40:43.033Z"
Version="2.0">
<saml2:Conditions NotBefore="2019-05-21T18:35:43.034Z" NotOnOrAfter="2019-05-21T18:45:43.034Z" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">
<saml2:AudienceRestriction>
<saml2:Audience>https://mycompany.example.org/Shibboleth.sso/Metadata</saml2:Audience>
</saml2:AudienceRestriction>
</saml2:Conditions>
</saml2:Assertion>
</saml2p:Response>