特别是在浏览了整个互联网之后
> ADFS 2.0 InvalidNameIDPolcy
> Using SimpleSAMLphp to Authenticate against ADFS 2.0 IdP
> Requester/InvalidNameIDPolicy
我尝试了对authsource.PHP和元数据PHP的所有建议修改.没有任何效果.
这是我的authsource.PHP
'default-sp' => array( 'saml:SP','privatekey' => 'saml.pem','certificate' => 'saml.crt','idp' => 'http://domain.com/adfs/services/trust',
我使用XML to simpleSAMLPHP元数据转换器来生成saml20-idp-remote.PHP
因此,当我访问该页面时,SimpleSAMLPHP正确地将我重定向到IDP登录页面.我解码了SAML请求:
<samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="_4e03333c7aa76314d965e05f8fcdd3e1f4c5be96c8" Version="2.0" IssueInstant="2014-12-11T19:41:50Z" Destination="https://domain.com/adfs/ls/" AssertionConsumerServiceURL="https://sub.domain.com/simplesaml/module.PHP/saml/sp/saml2-acs.PHP/default-sp" ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"> <saml:Issuer> https://su.bdomain.com/simplesaml/module.PHP/saml/sp/Metadata.PHP/default-sp </saml:Issuer> <samlp:NameIDPolicy Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient" AllowCreate="true"/> </samlp:AuthnRequest>
使用有效的测试帐户登录后,我将重定向回到我的网站并显示错误.
SimpleSAML_Error_Error: UNHANDLEDEXCEPTION Backtrace: 0 /var/www/html/igt_s3k/web/simplesamlPHP/www/module.PHP:179 (N/A) Caused by: sspmod_saml_Error: Requester/InvalidNameIDPolicy Backtrace: 3 /var/www/html/igt_s3k/web/simplesamlPHP/modules/saml/lib/Message.PHP:385 (sspmod_saml_Message::getResponseError) 2 /var/www/html/igt_s3k/web/simplesamlPHP/modules/saml/lib/Message.PHP:495 (sspmod_saml_Message::processResponse) 1 /var/www/html/igt_s3k/web/simplesamlPHP/modules/saml/www/sp/saml2-acs.PHP:96 (require) 0 /var/www/html/igt_s3k/web/simplesamlPHP/www/module.PHP:134 (N/A)
我尝试设置不同的NameIDPolicy,但没有一个工作.
//'NameIDFormat' => 'urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress',//'NameIDPolicy' => 'urn:oasis:names:tc:SAML:2.0:nameid-format:transient',//'NameIDPolicy' => 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent',//'NameIDPolicy' => 'urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified',
谢谢!
是啊.在愤怒和沮丧的情况下.我将NameIDPolicy设置为null,一切正常. FML
'default-sp' => array( 'saml:SP','idp' => 'http://comain.com/adfs/services/trust','NameIDPolicy' => null,