View a markdown version of this page

Databricks 服务负责人 OAuth 客户机密钥 - AWS Secrets Manager

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Databricks 服务负责人 OAuth 客户机密钥

秘密值字段

以下是 Secrets Manager 密钥中必须包含的字段:

{ "accountId": "Databricks account UUID", "servicePrincipalId": "Numeric service principal ID", "clientId": "Service principal application UUID", "clientSecret": "dose followed by the secret value", "oauthSecretId": "Hexadecimal OAuth secret ID" }
accountId

您的Databricks账户 ID,这是一个 UUID。

服务 PrincipalId

服务主体的数字内部 ID。此值与应用程序 ID 不同。

clientId

服务主体的应用程序 ID。Secrets Manager 会像client_id在 OAuth 请求中一样发送它。

客户机密

当前 OAuth 客户端密钥。Secrets Manager 会轮换此字段。

oauth SecretId

当前 OAuth 密钥的 Databricks ID。Secrets Manager 使用它来读取当前密钥的作用域并删除它所替换的密钥。

机密元数据字段

以下是Databricks服务主体 OAuth 客户端密钥的元数据字段:

{ "adminSecretArn": "arn:aws:secretsmanager:us-east-1:111122223333:secret:DatabricksAdminServicePrincipal", "secretLifetimeDays": "730" }
管理员 SecretArn

(可选)轮换此密钥的另一个类型为 databrickssSpSecret 的密钥的亚马逊资源名称 (ARN)。省略此字段可让服务主体轮换自己的密钥。

秘密 LifetimeDays

(可选)每个新密钥的生命周期,以天为单位。该值必须大于您的旋转间隔。最大值为 730。默认值:730。

使用流程

此旋转类型支持两种模式。在自我轮换中,服务主体会轮换自己的秘密。在辅助轮换中,第二个服务主体对其进行轮换。执行轮换的服务主体需要该account_admin角色,因为 OAuth 密钥端点是账户级别的。

您可以使用CreateSecret调用来创建您的密钥,其密钥值包含上述字段,密钥类型为 dataBricksSpSecret。可以使用RotateSecret呼叫来设置轮换配置。如果您选择自旋转,则可以省略可选adminSecretArn字段。您必须在RotateSecret调用中提供角色 ARN,该角色向服务授予轮换密钥所需的权限。有关权限策略的示例,请参阅安全和权限。

在轮换期间,Secrets Manager 使用客户端凭证流程请求访问令牌。它会创建一个替换密钥,其中包含它所替换的密钥的范围,并将替换密钥存储为 AWSPENDING。它确认新机密已通过验证。然后,它会删除之前的密钥并将 AWSPENDING 提升为 AWSCURRENT。

一个服务主体最多支持五个 OAuth 密钥。如果服务主体已经持有五个,则Databricks拒绝请求并且轮换失败。在再次轮换之前,请删除未使用的密钥。

此类型所需的account_admin角色不同于Databricks个人访问令牌轮换所需的工作空间访问权限。单笔赠款并不能涵盖这两个资金流。