Note
此信息适用于 Databricks CLI 版本 0.205 及更高版本。 Databricks CLI 目前处于公共预览阶段。
Databricks CLI 的使用须遵守 Databricks 许可和 Databricks 隐私声明,包括任何数据使用规定。
secrets
CLI 中的命令组允许管理机密、机密范围和访问权限。 有时,访问数据需要通过 JDBC 对外部数据源进行身份验证。 不要直接在笔记本中输入凭据,而是使用 Databricks 机密存储凭据,并在笔记本和作业中引用它们。 请参阅机密管理。
databricks 密钥创建作用域
创建新的机密范围。
范围名称必须包含字母数字字符、短划线、下划线和句点,不能超过 128 个字符。
databricks secrets create-scope SCOPE [flags]
Arguments
SCOPE
用户请求的范围名称。 范围名称是唯一的。
选项
--initial-manage-principal string
最初被授予对创建的范围的 MANAGE 权限的主体。
--json JSON
包含请求正文的内联 JSON 字符串或 @path 到 JSON 文件。
--scope-backend-type ScopeBackendType
创建该范围时将使用的后端类型。 支持的值:AZURE_KEYVAULT、DATABRICKS
databricks 机密 delete-acl
删除给定范围上的给定 ACL。
用户必须具有 MANAGE 调用此命令的权限。 如果没有这种机密范围、主体或 ACL,会引发 RESOURCE_DOES_NOT_EXIST。 如果用户没有进行此 API 调用的权限,则会引发 PERMISSION_DENIED。
databricks secrets delete-acl SCOPE PRINCIPAL [flags]
Arguments
SCOPE
要从中删除权限的范围的名称。
PRINCIPAL
要从中删除现有 ACL 的主体。
选项
--json JSON
包含请求正文的内联 JSON 字符串或 @path 到 JSON 文件。
databricks 机密删除范围
删除机密范围。
如果范围不存在,会引发 RESOURCE_DOES_NOT_EXIST。 如果用户没有权限执行此调用,则抛出PERMISSION_DENIED。
databricks secrets delete-scope SCOPE [flags]
Arguments
SCOPE
要删除的范围的名称。
选项
--json JSON
包含请求正文的内联 JSON 字符串或 @path 到 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 文件。
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 中的调用方以及数据被解码为的类型决定。
如果用户没有进行此 API 调用的权限,则会引发 PERMISSION_DENIED。 如果不存在此类机密或机密范围,将引发 RESOURCE_DOES_NOT_EXIST。
databricks secrets get-secret SCOPE KEY [flags]
Arguments
SCOPE
用于获取机密信息的范围的名称。
KEY
用于获取机密的键。
选项
databricks secrets list-acls(列出ACLs的命令)
列出给定秘密访问范围的访问控制列表。 用户必须有权 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 文件。
databricks 机密 设定机密
在提供的具有指定名称的范围下插入机密。 如果已有具有相同名称的密钥,该命令将覆盖现有密钥的值。 在存储机密之前,服务器使用机密范围的加密设置对机密进行加密。
你必须对机密范围具有 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 文件。
--string-value string
如果指定,请注意该值将存储为 UTF-8 (MB4) 格式。
全局标志
--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 字符串
如适用,要使用的捆绑包目标