#single-sign-on #opensso #saml-2.0 #openam
#единый вход #opensso #saml-2.0 #openam
Вопрос:
Я пытаюсь составить запрос аутентификации SAML2 для OpenAM. У меня есть URL-адрес, который я могу получить, который работает, но у меня возникают проблемы с его включением в форму post XHTML.
Рабочий URL-адрес со строкой запроса
Моя html-форма выглядит следующим образом:
<form action="http://internal.authhost.com:8080/opensso/idpssoinit" method="post" target="new">
<input type="text" name="SAMLRequest" value="PHNhbWxwOkF1dGhuUmV..."></input>
<input type="text" name="RelayState" value="webj_captureCustomerDetails"></input>
<input type="submit"/>
</form>
при этом значение SAMLRequest является базовым 64-кодированным представлением
<samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
ID="_d7607d551380ac97853a6ff4907c4ef01219be97dd" Version="2.0"
IssueInstant="2008-05-27T07:46:06Z" ForceAuthn="true" IsPassive="false"
ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
AssertionConsumerServiceURL="https://cs4.salesforce.com/?saml=lkjhkljhkljhkjhlkjh"
ProviderName="https://saml.salesforce.com">
<saml:Issuer>https://saml.salesforce.com</saml:Issuer>
<samlp:NameIDPolicy Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient"
AllowCreate="true"/>
</samlp:AuthnRequest>
Выдача этой формы приводит к появлению сообщения об ошибке от OpenAM с указанием «Идентификатор поставщика услуг равен нулю»
Я сразу вижу, что XML не содержит аргумент metaAlias=/MYRealm/idp, но в сообщении говорится, что он также не может найти аргумент spEntityID=https://saml.salesforce.com .
Пожалуйста, сообщите, где эти два свойства (metaAlias и spEntityID) должны быть указаны в XML.
Также была бы оценена ссылка на где-нибудь, указывающая, как конфигурация OpenAM COT / IdP сопоставляется с сообщением SAML AuthnRequest.
Ответ №1:
Проблема заключалась в том, что я обращался к неправильному URL-адресу, должен был попасть в spssoinit, поскольку это был единый вход, инициированный поставщиком услуг
Комментарии:
1. Как вы создаете этот документ <samlp:AuthnRequest>? Мне интересно, как это сделать? Я использую среду LAMP.