在瀏覽器中檢視 SAML 回應 - AWS Identity and Access Management

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在瀏覽器中檢視 SAML 回應

以下程序介紹在排除與 SAML 2.0 相關的故障問題時,如何從您的瀏覽器中查看服務供應商的 SAML 回應。

對於所有瀏覽器,請前往可以重現問題的頁面。然後,針對適用的瀏覽器執行以下步驟:

Google Chrome

在 Chrome 中查看 SAML 回應

這些步驟已使用 Google Chrome 版本 106.0.5249.103 (正式版本) (arm64) 進行了測試。如果您使用其他版本,則可能需要根據情況調整步驟。

  1. 按下 F12 來啟動 Developer Tools (開發人員工具) 主控台。

  2. 選取 Network (網路) 標籤,然後選取 Developer Tools (開發人員工具) 視窗左上角的 Preserve log (保留記錄)。

  3. 重現問題。

  4. (選擇性) 如果 Developer Tools (開發人員工具) 的 Network (網路) 記錄窗格中未顯示 Method (方法) 欄,請在任一欄標籤上按一下滑鼠右鍵,然後選擇 Method (方法) 以新增該欄。

  5. Developer Tools (開發人員工具) 的 Network (網路) 記錄窗格中尋找 SAML Post (SAML 文章)。選擇該列,然後檢視頂端的 Payload (承載) 標籤。尋找包含加密請求的 SAMLResponse 元素。關聯值為 Base64 編碼的回應。

Mozilla Firefox

在 Firefox 中查看 SAML 回應

此程序已在 Mozilla Firefox 版本 105.0.3 (64 位元) 上進行了測試。如果您使用其他版本,則可能需要根據情況調整步驟。

  1. 按下 F12 來啟動 Web Developer Tools (Web 開發人員工具) 主控台。

  2. 選取 Network (網路) 標籤。

  3. Web Developer Tools (Web 開發人員工具) 視窗右上角選擇選項 (小齒輪圖示)。選取 Persist logs (持續記錄)。

  4. 重現問題。

  5. (選擇性) 如果 Web Developer Tools (Web 開發人員工具) 的 Network (網路) 記錄窗格中未顯示 Method (方法) 欄,請在任一欄標籤上按一下滑鼠右鍵,然後選擇 Method (方法) 以新增該欄。

  6. 尋找表格中的 POST SAML。選取該列,然後檢視 Request 標籤並尋找 SamlResponse 元素。關聯值為 Base64 編碼的回應。

Apple Safari

在 Safari 中查看 SAML 回應

這些步驟已使用 Apple Safari 版本 16.0 (17614.1.25.9.10, 17614) 進行了測試。如果您使用其他版本,則可能需要根據情況調整步驟。

  1. 在 Safari 中啟用 Web Inspector。開啟 Preferences (偏好設定) 視窗,選取 Advanced (進階) 標籤,然後選取 Show Develop menu in the menu bar (在選單列顯示開發選單)

  2. 現在您可以開啟 Web Inspector。在選單列中選擇 Develop (開發),然後選取 Show Web Inspector (顯示 Web Inspector)。

  3. 選取 Network (網路) 標籤。

  4. Web Inspector 視窗右上角選擇選項 (包含三條水平線的小圓形圖示)。選取 Preserve logs (保留記錄)。

  5. (選擇性) 如果 Web InspectorNetwork (網路) 記錄窗格中未顯示 Method (方法) 欄,請在任一欄標籤上按一下滑鼠右鍵,然後選擇 Method (方法) 以新增該欄。

  6. 重現問題。

  7. 尋找表格中的 POST SAML。選擇該列,然後檢視 Headers (標題) 標籤。

  8. 尋找包含加密請求的 SAMLResponse 元素。向下捲動到找到含有名稱 SAMLResponseRequest Data。關聯值為 Base64 編碼的回應。

如何處理 Base64 編碼的 SAML 回應

在瀏覽器中找到 Base64 編碼的 SAML 回應元素之後,複製這些元素並使用您偏好的 Base-64 解碼工具來擷取含有 XML 標籤的回應。

安全提示

由於您查看的 SAML 回應資料可能包含敏感安全資料,我們建議您不要使用線上 base64 解碼器。而是使用安裝在本機電腦上,不會透過網路傳送 SAML 資料的工具。

適用於 Windows 系統的內建選項 (PowerShell):

PS C:\> [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String("base64encodedtext"))

適用於 MacOS 與 Linux 系統的內建選項:

$ echo "base64encodedtext" | base64 --decode
檢閱解碼檔案中的值

檢閱已解碼 SAML 回應檔案中的值。

  • 確認 saml:NameID 屬性的值符合已驗證使用者的使用者名稱。

  • 檢閱 https://aws.amazon.com/SAML/Attributes/Role 的值。ARN 和 SAML 提供者區分大小寫,且 ARN 必須符合您帳戶中的資源。

  • 檢閱 https://aws.amazon.com/SAML/Attributes/RoleSessionName 的值。該值必須符合宣告規則中的值。

  • 如果設定電子郵件地址或帳戶名稱的屬性值,請確定這些值正確無誤。這些值必須對應至已驗證使用者的電子郵件地址或帳戶名稱。

檢查錯誤並確認組態

檢查值是否包含錯誤,並確認下列組態正確無誤。