我有以下設置:wordpress的NameID策略無效
Windows 2012 R2與ADFS 3.0。 WordPress設置爲SP(依賴方信任),SimpleSAMLphp爲IdP(聲明方信任)。
我想在SSP的幫助下驗證WordPress用戶。控制流程如下: 用戶登錄到WordPress。然後該頁面將用於在ADFS服務器上配置的IdP提供程序的數量。用戶選擇SSP。用戶使用SSP進行身份驗證,並將響應發送給ADFS,ADFS又將信息傳遞給WordPress。
我配置了所有依賴&索賠方&它運作良好,獨立(WP-ADFS,ADFS-SSP),但是當我試圖用SSP認證WP,它給了我error: The SAML authentication request had a NameID Policy that could not be satisfied.
我有規則的設置爲: 索賠方治:
變換傳入規則:瞬間填充NameID到Windows帳戶名
依託黨統治:
規則1:
LDAP規則:SAM帳戶名稱 - > Windows帳戶名, 電子郵件的地址 - >電子郵件地址
規則2:
變換的傳入聲明:Windows帳戶名稱 - >瞬態填充NameID標識符
我剛剛開始在Windows服務器上使用SSO,所以不太瞭解聲明規則&我猜可能有些問題,因爲單獨所有的模塊都可以正常工作。 (例如:WP爲SP,ADFS爲IdP,ADFS爲SP,SSP爲IdP)。
我究竟做錯了什麼。
請讓我知道,如果我錯過了任何細節。
謝謝!
感謝您的附加建議,這真的很有幫助。在追蹤器中,我發現saml'AuthnRequest'在WP和ADFS的saml請求中將'NameIDPolicy'指定爲'transient'。然而,SSP的'AuthnRequest'將'NameIDPolicy'指定爲'unspecified'。我已經在SSP的'sp-remote.php'中將'NameIDPolicy'設置爲'transient',並且SAML響應對SSP也表示相同。但是在WP端,我在SAML響應消息中出現了'NameIDPolicy'錯誤。 – harshad
那麼,我找到了原因。在ADFS中,我將聲明規則設置爲'unspecified'(很可能在各種調試解決方案中)。但是現在在設置'NameIDPolicy'爲'email'後,我認爲問題已經解決,因爲現在我得到了像'用戶名未提供'的錯誤,用於SP-Initiated/IdP-Initiated登錄。 – harshad