Note
此信息适用于 Databricks CLI 版本 0.205 及更高版本。 The Databricks CLI is in Public Preview.
Databricks CLI use is subject to the Databricks License and Databricks Privacy Notice, including any Usage Data provisions.
The secrets
command group within the Databricks CLI allows you to manage secrets, secret scopes, and access permissions. 有时,访问数据需要通过 JDBC 对外部数据源进行身份验证。 使用 Databricks 机密来存储凭据并将其引用到笔记本和作业中,而不是直接将凭据输入到笔记本中。 See Secret management.
databricks 机密创建范围
创建新的机密范围。
范围名称必须包含字母数字字符、短划线、下划线和句点,不能超过 128 个字符。
databricks secrets create-scope SCOPE [flags]
Arguments
SCOPE
用户请求的范围名称。 范围名称是唯一的。
选项
--initial-manage-principal string
最初授予对已创建范围的 MANAGE 权限的主体。
--json JSON
内联 JSON 字符串或 @path 包含请求正文的 JSON 文件的 JSON 文件。
--scope-backend-type ScopeBackendType
将使用该作用域创建的后端类型。 支持的值: AZURE_KEYVAULT
、 DATABRICKS
databricks 机密 delete-acl
删除给定作用域上的给定 ACL。
用户必须具有 MANAGE
调用此命令的权限。 如果不存在此类机密范围、主体或 ACL,则 RESOURCE_DOES_NOT_EXIST
引发。
PERMISSION_DENIED
如果用户无权进行此 API 调用,则引发。
databricks secrets delete-acl SCOPE PRINCIPAL [flags]
Arguments
SCOPE
要从中删除权限的范围的名称。
PRINCIPAL
要从中删除现有 ACL 的主体。
选项
--json JSON
内联 JSON 字符串或 @path 包含请求正文的 JSON 文件的 JSON 文件。
databricks 机密删除范围
删除机密范围。
如果范围不存在,则 RESOURCE_DOES_NOT_EXIST
引发。
PERMISSION_DENIED
如果用户没有进行此调用的权限,则引发。
databricks secrets delete-scope SCOPE [flags]
Arguments
SCOPE
要删除的范围的名称。
选项
--json JSON
内联 JSON 字符串或 @path 包含请求正文的 JSON 文件的 JSON 文件。
databricks 机密 delete-secret
删除此机密范围中存储的机密。 你必须对机密范围具有 WRITE
或 MANAGE
权限。
如果不存在此类机密范围或机密,则 RESOURCE_DOES_NOT_EXIST
引发。
PERMISSION_DENIED
如果用户没有进行此调用的权限,则引发。
databricks secrets delete-secret SCOPE KEY [flags]
Arguments
SCOPE
包含要删除的机密的范围的名称。
KEY
要删除的机密的名称。
选项
--json JSON
内联 JSON 字符串或 @path 包含请求正文的 JSON 文件的 JSON 文件。
databricks 机密 get-acl
获取有关给定 ACL 的详细信息,例如组和权限。 用户必须有权 MANAGE
调用此 API。
如果不存在此类机密范围,则 RESOURCE_DOES_NOT_EXIST
引发。
PERMISSION_DENIED
如果用户没有进行此调用的权限,则引发。
databricks secrets get-acl SCOPE PRINCIPAL [flags]
Arguments
SCOPE
要从中提取 ACL 信息的范围的名称。
PRINCIPAL
要为其提取 ACL 信息的主体。
选项
databricks 机密 get-secret
获取指定作用域和密钥的机密值的字节表示形式。
用户需要此 READ
调用的权限。
请注意,返回的机密值以字节为单位。 字节的解释由 DBUtils 中的调用方确定,并将数据解码到的类型。
PERMISSION_DENIED
如果用户无权进行此 API 调用,则引发。 如果不存在此类机密或机密范围,则 RESOURCE_DOES_NOT_EXIST
引发。
databricks secrets get-secret SCOPE KEY [flags]
Arguments
SCOPE
要从中提取机密信息的范围的名称。
KEY
要为其提取机密的密钥。
选项
databricks secrets list-acls
列出给定机密范围的 ACL。 用户必须有权 MANAGE
调用此 API。
如果不存在此类机密范围,则 RESOURCE_DOES_NOT_EXIST
引发。
PERMISSION_DENIED
如果用户没有进行此调用的权限,则引发。
databricks secrets list-acls SCOPE [flags]
Arguments
SCOPE
要从中提取 ACL 信息的范围的名称。
选项
databricks 机密列表范围
列出工作区中可用的所有机密范围。
PERMISSION_DENIED
如果用户没有进行此调用的权限,则引发。
databricks secrets list-scopes [flags]
选项
databricks secrets list-secrets
列出在此范围内存储的密钥。 这是仅限元数据的作;无法使用此命令检索机密数据。 用户需要此 READ
调用的权限。
返回的 lastUpdatedTimestamp
值为自 Epoch 以来的毫秒。 如果不存在此类机密范围,则 RESOURCE_DOES_NOT_EXIST
引发。
PERMISSION_DENIED
如果用户没有进行此调用的权限,则引发。
databricks secrets list-secrets SCOPE [flags]
Arguments
SCOPE
列出机密的范围的名称。
选项
databricks 机密 put-acl
在指定的作用域点上创建或覆盖与给定主体(用户或组)关联的访问控制列表(ACL)。
一般情况下,用户或组将使用最强大的可用权限,权限按如下顺序排序:
-
MANAGE
允许更改 ACL,并读取和写入此机密范围。 -
WRITE
允许读取和写入此机密范围。 -
READ
允许读取此机密范围并列出可用的机密。
请注意,一般情况下,机密值只能从群集上的命令内读取(例如,通过笔记本)。 没有 API 可以读取群集外部的实际机密值材料。 但是,将基于执行命令的用户应用用户的权限,并且必须至少具有 READ 权限。
用户必须具有 MANAGE
调用此命令的权限。
主体是一个用户或组名称,对应于要授予或吊销访问权限的现有 Databricks 主体。
如果不存在此类机密范围,则 RESOURCE_DOES_NOT_EXIST
引发。 如果主体的权限已存在,则 RESOURCE_ALREADY_EXISTS
引发。 如果权限或主体无效,则 INVALID_PARAMETER_VALUE
引发。
PERMISSION_DENIED
如果用户没有进行此调用的权限,则引发。
databricks secrets put-acl SCOPE PRINCIPAL PERMISSION [flags]
Arguments
SCOPE
要向其应用权限的范围的名称。
PRINCIPAL
在其中应用权限的主体。
PERMISSION
应用于主体的权限级别。 支持的值:MANAGE
、READ
、WRITE
选项
--json JSON
内联 JSON 字符串或 @path 包含请求正文的 JSON 文件的 JSON 文件。
databricks 机密 put-secret
使用给定名称在提供的作用域下插入机密。 如果机密已存在同名,此命令将覆盖现有机密的值。 在存储机密之前,服务器使用机密范围的加密设置对机密进行加密。
你必须对机密范围具有 WRITE
或 MANAGE
权限。 密钥必须包含字母数字字符、短划线、下划线和句点,并且不能超过 128 个字符。 允许的最大机密值大小为 128 KB。 给定范围内的最大机密数为 1000。
参数 string-value
或 bytes-value
指定机密的类型,这将确定请求机密值时返回的值。
可以通过以下三种方式之一指定机密值:
- 使用
--string-value
标志将值指定为字符串。 - 看到交互式提示时输入机密(单行机密)。
- 通过标准输入传递机密(多行机密)。
databricks secrets put-secret SCOPE KEY [flags]
Arguments
SCOPE
要在其中存储机密的范围的名称。
KEY
机密的密钥名称。
选项
--bytes-value string
如果指定,值将存储为字节。
--json JSON
内联 JSON 字符串或 @path 包含请求正文的 JSON 文件的 JSON 文件。
--string-value string
如果指定,请注意该值将存储在 UTF-8 (MB4) 窗体中。
Global flags
--debug
是否启用调试日志记录。
-h
或 --help
显示 Databricks CLI、相关命令组或相关命令的帮助。
--log-file
字符串
一个字符串,表示要将输出日志写入到的文件。 如果未指定此标志,则默认会将输出日志写入到 stderr。
--log-format
格式
日志格式类型或 text
json
。 默认值是 text
。
--log-level
字符串
一个表示日志格式级别的字符串。 如果未指定,则禁用日志格式级别。
-o, --output
类型
命令输出类型或 text
json
。 默认值是 text
。
-p, --profile
字符串
用于运行命令的文件中配置文件 ~/.databrickscfg
的名称。 如果未指定此标志,则如果存在,则使用命名 DEFAULT
的配置文件。
--progress-format
格式
显示进度日志的格式: default
、 append
、 inplace
或 json
-t, --target
字符串
如果适用,要使用的捆绑包目标