Can you post the <samlp:AuthnRequest> that was sent on the wire? The
problem is most likely the AllowCreate XML attribute on the
<samlp:NameIDPolicy> element.
For background, see the "errata composite" description of AllowCreate
in SAML Core:
http://saml.xml.org/saml-specifications
Truly the AllowCreate XML attribute is the most complicated piece of
the authn request.
Tom
Yes. The <samlp:NameIDPolicy> is the culprit, as expected. If you
check the spec I mentioned earlier, you will find the following:
"The use of the AllowCreate attribute MUST NOT be used and SHOULD be
ignored in conjunction with requests for or assertions issued with
name identifiers with a Format of
urn:oasis:names:tc:SAML:2.0:nameid-format:transient (they preclude any
such state in and of themselves)."
I would say the IdP is free to return an error if a requester fails to
meet that requirement.
Tom
No I don't, sorry. I almost certainly know less about SSP than you do ;-)
Tom
Are you sure? That doesn't make any sense. What's more likely is that
the IdP is returning an error (the one you posted originally) and the
SP is just spitting it out.
Of course the <samlp:Response> element will answer that question
definitively ;-)
Tom
In simpleSAMLphp, we follow the line above that one, which reads
"Requesters that do not make specific use of this attribute SHOULD
generally set it to “true” to maximize interoperability.". I interpret
the one you quoted to apply to IdPs.
> I would say the IdP is free to return an error if a requester fails to
> meet that requirement.
The error is certainly returned from the IdP. The question is why it
refuses to create a transient NameID. The best place to look for the
source of the error is the log files of the IdP. You can also try to
ask for a persistent NameID. You can do that by adding the following to
the configuration entry in authsources.php:
'NameIDPolicy' => 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent',
Regards,
Olav Morken
UNINETT / Feide