排解 Google SecOps SOAR 中的 SAML 問題
本文說明如何排解 Google Security Operations SOAR 平台中 SAML 驗證的常見問題。
本節列出如何排解 SAML 驗證錯誤,並提供解決方案。
找不到目錄中的應用程式
訊息:AADSTS700016: Application with identifier 'https://yyy.yyyyyy.com/api/auth/saml/metadata' was not found in the directory 'yyy'.
說明:Azure AD (基本 SAML) 和系統中的設定不符。
修正:在 Azure AD 中,將「ID (實體 ID)」設為 SP 的實體 ID,並確認「回覆網址 (ACS)」與 SP 相符;確認您位於正確的租戶,且使用者已指派給應用程式。
saml:AuthnContextDeclRef 的值無效
訊息:Microsoft.IdentityModel.Tokens.Saml2.Saml2SecurityTokenReadException: IDX13102: Exception thrown while reading 'System.String' for Saml2SecurityToken. Inner exception: System.ArgumentException.
說明:這個錯誤表示 SAML 回應中的 saml:AuthnContextDeclRef
值無效。
修正:解碼並檢查 SAML 回應。如果 IdP 傳送無效的 AuthnContextDeclRef
,請移除該 AuthnContextDeclRef
或改用支援的 saml:AuthnContextClassRef
(例如 urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
)。
System.ArgumentException:「System.String」必須是絕對 URI
訊息:/ds:Signature>saml:Subject<saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" System.ArgumentException: IDX13300: 'System.String' must be an absolute URI, was: 'System.Uri"></saml:NameID>
說明:NameID
Format
必須是 SP 支援的有效絕對 URI (URN),且必須提供 <saml:NameID>
值。
修正:將 SAML 設定中的 DefaultNameIDFormat
參數設為下列其中一個選項:
urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
(最常見)urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
urn:oasis:names:tc:SAML:2.0:nameid-format:transient
找不到使用者屬性,且 LoginIdentifier
欄位為必填
訊息:logs Server error Login error for user _yyyyyyyyyyyyyyyyyyyyyyy. User attributes were not found for creating new followed by Error: register : The LoginIdentifier field is required.
說明:啟用即時佈建後,SP 會使用 NameID
(或對應的屬性) 查詢使用者。傳入的值與現有的任何登入 ID 不符。
修正:請設定 IdP,使其傳送的值與使用者管理中的「登入 ID」欄位 (依序前往「設定」>「使用者管理」) 相符。這個值可能是使用者的電子郵件地址或其他專屬 ID。
使用者類型不符
訊息:Login error for user user@user.com. User type (Internal) does not match to this type of authentication (External).
說明:系統中已有登入 ID 相同的內部帳戶,但 SAML 驗證需要外部使用者。
修正:將現有使用者 (使用者名稱與 SAML 驗證方法衝突) 的使用者類型變更為「外部」。
重新導向迴圈
如果執行個體已設定為自動重新導向至 IdP 登入頁面,且您遇到持續重新導向迴圈,可以將下列文字附加至執行個體主機名稱,暫時停用自動重新導向功能:
/#/login?autoExternalLogin=false
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。