

# 基于浏览器的身份中心集成
<a name="jdbc-v3-driver-browser-oidc-tip-credentials"></a>

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

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

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

## 凭证提供程序
<a name="jdbc-v3-driver-browser-oidc-tip-credentials-provider"></a>

将用于对 AWS 的请求进行身份验证的凭证提供程序。将此参数的值设置为 `BrowserOidcTip`。


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 要使用的值 | 
| --- | --- | --- | --- | --- | 
| CredentialsProvider | AWSCredentialsProviderClass（已弃用） | 必需 | none | BrowserOidcTip | 

## Idp 公开配置 URL
<a name="jdbc-v3-driver-browser-oidc-tip-idp-well-known-config"></a>

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 | 必需 | none | 

## 客户端标识符
<a name="jdbc-v3-driver-browser-oidc-tip-client-id"></a>

OpenID Connect 提供商向应用程序颁发的客户端标识符。


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| OidcClientId | none | 必需 | none | 

## WorkgroupArn
<a name="jdbc-v3-driver-browser-oidc-tip-workgroup-arn"></a>

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

**注意**  
此参数与指定查询运行位置的 `Workgroup` 参数不同。必须同时设置两个参数：  
`WorkgroupArn`：指向包含可信身份传播配置标签的工作组
`Workgroup`：指定将在其中执行查询的工作组
虽然这两个参数通常指向同一个工作组，但必须显式设置两个参数以确保正常运行。


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| WorkGroupArn | none | 必需 | 主 | 

## JWT 应用程序角色 ARN
<a name="jdbc-v3-driver-browser-oidc-tip-application-role-arn"></a>

JWT 交换时将代入角色的 ARN。此角色用于 JWT 交换、通过工作组标签获取 IAM Identity Center 客户管理的应用程序 ARN，以及获取访问角色 ARN。有关代入角色的信息，请参阅 [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)。


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| ApplicationRoleArn | none | 必需 | none | 

## JWT 角色会话名称
<a name="jdbc-v3-driver-browser-oidc-tip-role-session-name"></a>

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


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| JwtRoleSessionName | role\$1session\$1name（已弃用） | 必需 | none | 

## 客户端密钥
<a name="jdbc-v3-driver-browser-oidc-tip-client-secret"></a>

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


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| OidcClientSecret | none | 可选 | none | 

## 范围
<a name="jdbc-v3-driver-browser-oidc-tip-scope"></a>

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


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| 范围 | none | 可选 | openid email offline\$1access | 

## 角色会话持续时间
<a name="jdbc-v3-driver-browser-oidc-tip-role-session-duration"></a>

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


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| RoleSessionDuration | Duration（已弃用） | 可选 | 3600 | 

## JWT 访问角色 ARN
<a name="jdbc-v3-driver-browser-oidc-tip-access-role-arn"></a>

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


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| AccessRoleArn | none | 可选 | none | 

## IAM Identity Center 客户管理的应用程序 ARN
<a name="jdbc-v3-driver-browser-oidc-tip-customer-idc-application-arn"></a>

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


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| CustomerIdcApplicationArn | none | 可选 | none | 

## 身份提供者端口号
<a name="jdbc-v3-driver-browser-oidc-tip-idp-port-number"></a>

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

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


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| IdpPortNumber | none | 可选 | 7890 | 

## 身份提供者响应超时
<a name="jdbc-v3-driver-browser-oidc-tip-idp-response-timeout"></a>

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


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| IdpResponseTimeout | none | 可选 | 120 | 

## 启用令牌缓存
<a name="jdbc-v3-driver-browser-oidc-tip-enable-token-caching"></a>

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

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


****  

| 参数名称 | 别名 | 参数类型 | 默认 值 | 
| --- | --- | --- | --- | 
| EnableTokenCaching | none | 可选 | FALSE | 