

# 浏览器可信身份传播凭证
浏览器可信身份传播

通过此身份验证类型，您可以从外部身份提供商处获取新的 JSON Web 令牌（JWT），并使用 Athena 进行身份验证。您可以使用此插件，通过可信身份传播，实现对企业身份的支持。有关如何将可信身份传播与驱动程序结合使用的更多信息，请参阅[将可信身份传播与 Amazon Athena 驱动程序结合使用](using-trusted-identity-propagation.md)。您还可以[使用 CloudFormation 配置和部署资源](using-trusted-identity-propagation-cloudformation.md)。

使用可信身份传播，可以向 IAM 角色添加身份上下文，以识别请求访问 Amazon 资源的用户身份。有关启用和使用可信身份传播的信息，请参阅 [What is trusted identity propagation?](https://docs.amazonaws.cn/singlesignon/latest/userguide/trustedidentitypropagation.html)。

**注意**  
该插件专为单用户桌面环境而设计。在 Windows Server 等共享环境中，系统管理员负责建立和维护用户之间的安全边界。

## 身份验证类型



****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| AuthenticationType | 必需 | none | AuthenticationType=BrowserOidcTip; | 

## IDP 公开配置 URL


IDP 公开配置 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\$1id | 必需 | none | client\$1id=00001111-aaaa-2222-bbbb-3333cccc4444; | 

## 工作组 ARN


包含可信身份传播配置标签的 Amazon Athena 工作组的 Amazon 资源名称（ARN）。有关工作组的更多信息，请参阅 [WorkGroup](https://docs.amazonaws.cn/athena/latest/APIReference/API_WorkGroup.html)。

**注意**  
此参数与指定查询运行位置的 `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](https://docs.amazonaws.cn/STS/latest/APIReference/API_AssumeRole.html)。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| ApplicationRoleArn | 必需 | none | ApplicationRoleArn=arn:aws:iam::111122223333:role/applicationRole; | 

## 角色会话名称


IAM 会话的名称。它可以是任意名称，但通常，人们会填写与使用自身应用程序的用户关联的名称或标识符。这样，您的应用程序使用的临时安全凭证会与该用户相关联。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| role\$1session\$1name | 必需 | none | role\$1session\$1name=familiarname; | 

## 客户端密钥


客户端密钥是您的身份提供商颁发的机密密钥，用于对您的应用程序进行身份验证。虽然此参数是可选的，可能并非所有身份验证流程必需，但其使用可提了额外的安全层。如果您的 IDP 配置需要客户端密钥，则必须将此参数与身份提供商管理员提供的值一起包括在内。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| client\$1secret | 可选 | none | client\$1secret=s0m3R@nd0mS3cr3tV@lu3Th@tS3cur3lyPr0t3ct5Th3Cl13nt;\$1 | 

## 范围


该范围指定您的应用程序向身份提供商请求的访问级别。要接收包含基本用户身份声明的 ID 令牌，您必须在范围内包含 `openid`。您的范围可能需要包括 `email` 或 `profile` 等其他权限，具体取决于您的身份提供商（例如 *Microsoft Entra ID*）配置为包含在 ID 令牌中的用户声明。这些声明对于正确的*可信身份传播*映射至关重要。如果用户身份映射失败，请验证您的范围是否包含所有必需的权限，并且您的身份提供商已配置为在 ID 令牌中包含所需的声明。这些声明必须与 IAM Identity Center 中的*可信令牌发布者*映射配置相匹配。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| 范围 | 可选 | openid email offline\$1access | Scope=openid email; | 

## 会话持续时间


角色会话的持续时间（以秒为单位）。有关更多信息，请参阅 [AssumeRoleWithWebIdentity](https://docs.amazonaws.cn/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html)。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| duration | 可选 | 3600 | duration=900; | 

## JWT 访问角色 ARN


Athena 代表您进行调用时所代入角色的 ARN。有关代入角色的更多信息，请参阅 *Amazon Security Token Service API Reference* 中的 [AssumeRole](https://docs.amazonaws.cn/STS/latest/APIReference/API_AssumeRole.html)。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| AccessRoleArn | 可选 | none | AccessRoleArn=arn:aws:iam::111122223333:role/accessRole; | 

## IAM Identity Center 客户管理的应用程序 ARN


IAM Identity Center 客户管理的 IDC 应用程序 ARN。有关客户管理的应用程序的更多信息，请参阅 [Customer Managed Applications](https://docs.amazonaws.cn/singlesignon/latest/userguide/customermanagedapps.html)。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| CustomerIdcApplicationArn | 可选 | none | CustomerIdcApplicationArn=arn:aws:sso::111122223333:application/ssoins-111122223333/apl-111122223333; | 

## 身份提供商端口号


用于 OAuth 2.0 回调服务器的本地端口号。此项用作 redirect\$1uri，您需要在 IDP 应用程序中将其列入允许列表。默认生成的 redirect\$1uri 为：http://localhost:7890/athena

**警告**  
在 Windows 终端服务器或远程桌面服务等共享环境中，环回端口（默认值：7890）在同一台计算机上的所有用户之间共享。系统管理员可通过以下方式降低潜在的端口劫持风险：  
为不同用户组配置不同的端口号
使用 Windows 安全策略限制端口访问权限
在用户会话之间实现网络隔离
如果无法实现这些安全控制措施，我们建议改用 [JWT 可信身份传播](odbc-v2-driver-jwt-tip.md)插件，该插件不需要环回端口。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| listen\$1port | 可选 | 7890 | listen\$1port=8080; | 

## 身份提供者响应超时


等待 OAuth 2.0 回调响应的超时时间（秒）。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| IdpResponseTimeout | 可选 | 120 | IdpResponseTimeout=140; | 

## 启用文件缓存


JwtTipFileCache 参数决定驱动程序是否在两次连接之间缓存身份验证令牌。将 JwtTipFileCache 设置为 true 可减少身份验证提示并改善用户体验，但应谨慎使用。此设置最适合单用户桌面环境。在 Windows Server 等共享环境中，建议禁用此项，以防止连接字符串相似的用户之间可能共享令牌。

对于使用 PowerBI Server 等工具的企业部署，我们建议使用 [JWT 可信身份传播](odbc-v2-driver-jwt-tip.md)插件，而不是这种身份验证方法。


****  

| **连接字符串名称** | **参数类型** | **默认值** | **连接字符串示例** | 
| --- | --- | --- | --- | 
| JwtTipFileCache | 可选 | 0 | JwtTipFileCache=1; | 