Note
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 字符串
如适用,要使用的捆绑包目标