View a markdown version of this page

瀏覽器信任的身分傳播憑證 - Amazon Athena

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

瀏覽器信任的身分傳播憑證

此身分驗證類型可讓您從外部身分提供者擷取新的 JSON Web 字符 (JWT),並使用 Athena 進行身分驗證。您可以使用此外掛程式,透過可信身分傳播啟用對企業身分的支援。如需有關如何搭配使用可信身分傳播與驅動器的詳細資訊,請參閱 搭配使用可信身分傳播與 Amazon Athena 驅動器。您也可以使用 CloudFormation 設定和部署資源

透過信任的身分傳播,身分內容會新增至 IAM 角色,以識別請求存取 AWS 資源的使用者。如需有關啟用和使用可信身分傳播的資訊,請參閱什麼是可信身分傳播?

注意

外掛程式專為單一使用者桌面環境而設計。在 Windows Server 等共用環境中,系統管理員負責建立和維護使用者之間的安全界限。

身分驗證類型

連線字串名稱 參數類型 預設值 連線字串範例
AuthenticationType 必要 none AuthenticationType=BrowserOidcTip;

IDP 已知組態 URL

IDP Well Known 組態 URL 是為您的身分提供者提供 OpenID Connect 組態詳細資訊的端點。此 URL 通常會以 結尾,.well-known/openid-configuration並包含有關身分驗證端點、支援的功能和字符簽署金鑰的基本中繼資料。例如,如果您使用的是 Okta,URL 可能看起來像 https://your-domain.okta.com/.well-known/openid-configuration

針對疑難排解:如果您收到連線錯誤,請確認此 URL 可從您的網路存取,並傳回有效的 OpenID Connect 組態 JSON。此 URL 必須由安裝驅動程式的用戶端連線,且應由您的身分提供者管理員提供。

連線字串名稱 參數類型 預設值 連線字串範例
IdpWellKnownConfigurationUrl 必要 none IdpWellKnownConfigurationUrl=https://<your-domain>/.well-known/openid-configuration;

用戶端識別符

OpenID Connect 提供者向應用程式發出的用戶端識別符。

連線字串名稱 參數類型 預設值 連線字串範例
client_id 必要 none client_id=00001111-aaaa-2222-bbbb-3333cccc4444;

工作群組 ARN

Amazon Athena 工作群組的 Amazon Resource Name (ARN),其中包含信任的身分傳播組態標籤。如需有關工作群組的詳細資訊,請參閱工作群組

注意

此參數與指定查詢執行位置的 Workgroup 參數不同。您必須設定這兩個參數:

  • WorkgroupArn - 指向包含信任身分傳播組態標籤的工作群組

  • Workgroup - 指定要執行查詢的工作群組

雖然這些參數通常會參考相同的工作群組,但必須明確設定這兩個參數才能正常運作。

連線字串名稱 參數類型 預設值 連線字串範例
WorkGroupArn 必要 none WorkgroupArn=arn:aws:athena:us-west-2:111122223333:workgroup/primary

JWT 應用程式角色 ARN

將在 JWT 交換中擔任的角色 ARN。此角色可用於 JWT 交換、透過工作群組標籤取得 IAM Identity Center 客戶自管應用程式 ARN,以及取得存取角色 ARN。如需有關擔任角色的詳細資訊,請參閱 AssumeRole

連線字串名稱 參數類型 預設值 連線字串範例
ApplicationRoleArn 必要 none ApplicationRoleArn=arn:aws:iam::111122223333:role/applicationRole;

角色工作階段名稱

IAM 工作階段的名稱。名稱可隨意指定,但是一般來說,您會傳遞與應用程式使用者相關聯的名稱或識別碼。這樣一來,應用程式使用的臨時安全憑證會與該使用者相關聯。

連線字串名稱 參數類型 預設值 連線字串範例
role_session_name 必要 none role_session_name=familiarname;

Client secret (用戶端密碼)

用戶端秘密是由您的身分提供者發行的機密金鑰,用於驗證您的應用程式。雖然此參數是選用的,而且可能不是所有身分驗證流程的必要項目,但在使用時提供額外的安全層。如果您的 IDP 組態需要用戶端秘密,您必須將此參數包含身分提供者管理員提供的值。

連線字串名稱 參數類型 預設值 連線字串範例
client_secret 選用 none client_secret=s0m3R@nd0mS3cr3tV@lu3Th@tS3cur3lyPr0t3ct5Th3Cl13nt;!

Scope (範圍)

範圍會指定應用程式向身分提供者請求的存取層級。您必須在 openid 範圍內包含 ,才能接收包含基本使用者身分宣告的 ID 字符。您的範圍可能需要包含其他許可,例如 emailprofile,取決於哪些使用者宣告您的身分提供者 (例如 Microsoft Entra ID) 已設定為包含在 ID 字符中。這些宣告對於適當的受信任身分傳播映射至關重要。如果使用者身分映射失敗,請確認您的範圍包含所有必要的許可,且您的身分提供者已設定為在 ID 字符中包含必要的宣告。這些宣告必須符合 IAM Identity Center 中的受信任權杖發行者映射組態。

連線字串名稱 參數類型 預設值 連線字串範例
Scope (範圍) 選用 openid email offline_access Scope=openid email;

工作階段持續時間

角色工作階段的持續時間 (以秒為單位)。如需詳細資訊,請參閱 AssumeRoleWithWebIdentity

連線字串名稱 參數類型 預設值 連線字串範例
持續時間 選用 3600 duration=900;

JWT 存取角色 ARN

Athena 代您呼叫所擔任角色的 ARN。如需有關擔任角色的詳細資訊,請參閱《AWS Security Token Service API 參考》中的 AssumeRole

連線字串名稱 參數類型 預設值 連線字串範例
AccessRoleArn 選用 none AccessRoleArn=arn:aws:iam::111122223333:role/accessRole;

IAM Identity Center 客戶自管應用程式 ARN

IAM Identity Center 客戶自管 IDC 應用程式的 ARN。如需有關客戶受管應用程式的詳細資訊,請參閱客戶自管應用程式

連線字串名稱 參數類型 預設值 連線字串範例
CustomerIdcApplicationArn 選用 none CustomerIdcApplicationArn=arn:aws:sso::111122223333:application/ssoins-111122223333/apl-111122223333;

身分提供者連接埠號碼

用於 OAuth 2.0 回呼伺服器的本機連接埠號碼。這用作 redirect_uri,您需要允許在 IDP 應用程式中將其列出。預設產生的 redirect_uri 為:http://localhost:7890/athena

警告

在共用環境中,例如 Windows Terminal Server 或遠端桌面服務,循環連接埠 (預設值:7890) 會在相同機器上的所有使用者之間共用。系統管理員可以透過下列方式降低潛在的連接埠劫持風險:

  • 為不同的使用者群組設定不同的連接埠號碼

  • 使用 Windows 安全政策來限制連接埠存取

  • 在使用者工作階段之間實作網路隔離

如果無法實作這些安全控制,建議您改用 JWT 信任的身分傳播外掛程式,這不需要迴路連接埠。

連線字串名稱 參數類型 預設值 連線字串範例
listen_port 選用 7890 listen_port=8080;

識別提供者回應逾時

等待 OAuth 2.0 回呼回應的逾時,以秒為單位。

連線字串名稱 參數類型 預設值 連線字串範例
IdpResponseTimeout 選用 120 IdpResponseTimeout=140;

啟用檔案快取

JwtTipFileCache 參數會判斷驅動程式是否在連線之間快取身分驗證字符。將 JwtTipFileCache 設為 true 可減少身分驗證提示並改善使用者體驗,但應謹慎使用。此設定最適合單一使用者桌面環境。在 Windows Server 等共用環境中,建議將其停用,以防止具有類似連線字串的使用者之間進行潛在的字符共用。

對於使用 PowerBI Server 等工具的企業部署,我們建議您使用 JWT 信任的身分傳播外掛程式,而不是此身分驗證方法。

連線字串名稱 參數類型 預設值 連線字串範例
JwtTipFileCache 選用 0 JwtTipFileCache=1;