Un SAML2 AuthnRequest Composer pour OpenAM
-
27-10-2019 - |
Question
Je suis en train de composer un SAML2 AuthnRequest pour OpenAM. J'ai une URL que je peux effectuer un get contre cela fonctionne, mais rencontre des problèmes qui composent ce sous la forme post-XHTML.
L'URL travail avec la chaîne de requête est
Mon formulaire HTML ressemble à:
<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>
avec la valeur de SAMLRequest étant la base 64 représentation codée de
<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>
L'envoi de cette forme se traduit par un message d'erreur indiquant OpenAM « ID du fournisseur de service est nul »
Je peux voir immédiatement que le XML ne contient pas le metaAlias ??= / MYREALM / idp argument, mais le message suggère qu'il ne peut pas trouver le spEntityID = https:. //Saml.salesforce.com l'argument soit
S'il vous plaît conseiller sur l'endroit où ces deux propriétés (metaAlias ??et spEntityID) doivent être spécifiées dans le fichier XML.
Un lien vers un endroit précisant comment les cartes de configuration OpenAM DUE / IdP contre un message SAML AuthnRequest seraient également appréciées.
La solution
Le problème était que j'accédait à la mauvaise URL, aurait dû frapper le spssoinit car il était fournisseur de services d'authentification unique intitated