應用程式頁面會在使用者登入後顯示錯誤訊息
在此案例中,Microsoft Entra ID 登入使用者。 但應用程式會顯示錯誤訊息,且不會讓使用者完成登入流程。 問題是應用程式不接受發出Microsoft Entra ID 的回應。
應用程式未接受來自Microsoft Entra ID的回應有數個可能的原因。 如果顯示錯誤訊息或程式代碼,請使用下列資源來診斷錯誤:
如果錯誤訊息無法清楚識別回應中遺漏的內容,請嘗試下列動作:
- 如果應用程式在 Microsoft Entra 畫廊中,請確認您已遵循 在 Microsoft Entra ID中的 SAML 基於單一登入應用程序的偵錯步驟。
- 使用 Fiddler 之類的工具來擷取 SAML 要求、回應和令牌。
- 將 SAML 回應傳送給應用程式廠商,並詢問他們遺失的內容。
SAML 回應中遺漏屬性
若要在Microsoft Entra 回應中傳送的 Microsoft Entra 組態中新增屬性,請遵循下列步驟:
以至少 雲端應用程式管理員身分登入 Microsoft Entra 系統管理中心。
瀏覽至 身份>應用程式>企業應用程式>所有應用程式。
在搜尋方塊中輸入現有應用程式的名稱,然後選取您要設定單一登錄的應用程式。
載入應用程式之後,選取瀏覽窗格中的 單一登入。
在 [使用者屬性] 區段中,選取 [檢視並編輯所有其他使用者屬性]。 在這裡,您可以設定當使用者登入時,在 SAML 權杖中要傳送至應用程式的屬性。
若要新增屬性:
選擇 [[新增屬性]。 輸入 Name,然後從下拉式清單中選取 值。
選取 儲存。 您會在資料表中看到新的屬性。
儲存組態。
下次使用者登入應用程式時,Microsoft Entra ID 會在 SAML 回應中傳送新的屬性。
應用程式無法識別使用者
登入應用程式失敗,因為 SAML 回應遺漏角色之類的屬性。 或者它失敗,因為應用程式預期 NameID (使用者識別子) 屬性的格式或值不同。
如果您使用 Microsoft Entra ID 自動化使用者設置 來建立、維護和移除應用程式中的使用者,請確認使用者已配置到 SaaS 應用程式。 如需詳細資訊,請參閱 未將使用者配置到 Microsoft Entra Gallery 應用程式。
將屬性新增至 Microsoft Entra 應用程式組態
若要變更使用者識別碼值,請遵循下列步驟:
- 以至少 雲端應用程式管理員身分登入 Microsoft Entra 系統管理中心。
- 瀏覽至 身分識別>應用程式>企業應用程式>所有應用程式。
- 選取您要為 SSO 設定的應用程式。
- 載入應用程式之後,選取導覽窗格中的 單一登入。
- 在 [使用者屬性] 下,從 [使用者標識符] 下拉式清單中選取使用者的唯一標識符。
變更 NameID 格式
如果應用程式需要 NameID (使用者識別元) 屬性的另一種格式,請參閱 編輯 nameID 一節來變更 NameID 格式。
Microsoft Entra ID 會根據所選值或 SAML AuthRequest 中應用程式要求的格式,選取 NameID 屬性 (使用者識別符) 的格式。 如需詳細資訊,請參閱 單一登錄 SAML 通訊協定的 「NameIDPolicy」 一節,。
應用程式需要 SAML 回應的不同簽章方法
若要變更 SAML 令牌的哪些部分是由 Microsoft Entra ID 數字簽署,請遵循下列步驟:
以至少 雲端應用程式管理員身分登入 Microsoft Entra 系統管理中心。
瀏覽至 身分>應用程式>企業應用程式>所有應用程式。
選取您要為單一登入設定的應用程式。
載入應用程式之後,選取導覽窗格中的 單一登入。
在 [SAML 簽署憑證] 下,選取 [顯示進階憑證簽署設定]。
從下列選項中選取應用程式預期的 簽署選項:
- 簽署 SAML 回應
- 簽署 SAML 回應和斷言
- 簽署 SAML 斷言
下次使用者登入應用程式時,Microsoft Entra ID 將會簽署您選取之 SAML 回應的一部分。
應用程式需要 SHA-1 簽署演算法
根據預設,Microsoft Entra ID 會使用最安全的演算法簽署 SAML 令牌。 除非應用程式需要SHA-1,否則建議您不要將簽署演算法變更為 SHA-1。
若要變更簽署演算法,請遵循下列步驟:
以至少 雲端應用程式管理員身分登入 Microsoft Entra 系統管理中心。
瀏覽至 身分>應用程式>企業應用程式>所有應用程式。
選取您要為單一登入設定的應用程式。
載入應用程式之後,請從應用程式左側的瀏覽窗格中選取 [單一登錄]。
在 SAML 簽署憑證下,選取 顯示進階憑證簽署設定。
選取 SHA-1 作為 簽署演算法。
下次使用者登入應用程式時,Microsoft Entra ID 會使用 SHA-1 演算法簽署 SAML 令牌。