注释
此信息适用于 Databricks CLI 版本 0.205 及更高版本。 Databricks CLI 目前处于公共预览阶段。
Databricks CLI 的使用须遵守 Databricks 许可和 Databricks 隐私声明,包括任何数据使用规定。
auth
Databricks CLI 中的命令组包含身份验证相关的命令,包括以下内容:
- 列出任何可用的身份验证配置文件。
- 获取有关单个身份验证配置文件的信息。
- 使用 OAuth 用户到计算机(U2M)身份验证通过 Azure Databricks 帐户和工作区对 Databricks CLI 进行身份验证。
- 获取有关 Databricks CLI 可能缓存的任何 OAuth 访问令牌的信息。
- 获取 Databricks CLI 用于进行身份验证的配置的详细信息。
小窍门
若要获取有关当前 Databricks CLI 用户的信息,请运行 databricks current-user me
。
databricks 身份验证描述
描述 Databricks CLI 用于进行身份验证的配置,包括凭据和这些凭据的源。 如果未指定任何选项,该 auth describe
命令将遵循 客户端统一身份验证的默认方法。
databricks auth describe [flags]
选项
--sensitive
在输出中包含敏感字段,如密码和令牌
例子
以下示例介绍当前的身份验证配置:
databricks auth describe
Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: <authentication-type>
-----
Current configuration:
✓ host: https://<workspace-instance-name> (from <path>/<to>/.databrickscfg config file)
✓ profile: default
✓ auth_type: <authentication-type> (from <path>/<to>/.databrickscfg config file)
若要指定有关特定 Azure Databricks 工作区的信息,请指定该 --host
选项以及工作区的 URL。
databricks auth describe --host https://<workspace-instance-name>
Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: <authentication-type>
-----
Current configuration:
✓ host: https://<workspace-instance-name> (from --host flag)
✓ profile: default
✓ auth_type: <authentication-type>
若要指定有关特定 Azure Databricks 帐户的信息,请指定选项 --host
以及 Azure Databricks 帐户控制台 URL https://accounts.databricks.azure.cn。
databricks auth describe --host <account-console-url>
Host: <account-console-url>
User: <user-name>@<domain>
AccountId: <account-id>
Authenticated with: <authentication-type>
-----
Current configuration:
✓ host: <account-console-url> (from --host flag)
✓ account_id: <account-id>
✓ profile: default
✓ auth_type: <authentication-type>
若要指定有关特定 Azure Databricks 配置文件的信息,请指定 -p
或 --profile
选项以及配置文件的名称:
databricks auth describe -p TEST
Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: <authentication-type>
-----
Current configuration:
✓ host: https://<workspace-instance-name> (from <path>/<to>/.databrickscfg config file)
✓ token: ******** (from <path>/<to>/.databrickscfg config file)
✓ profile: TEST (from --profile flag)
✓ auth_type: <authentication-type>
若要在输出中包含敏感信息(例如 Azure Databricks 个人访问令牌和客户端机密),请 --sensitive
指定选项:
databricks auth describe --sensitive
Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: pat
-----
Current configuration:
✓ host: https://<workspace-instance-name> (from <path>/<to>/.databrickscfg config file)
✓ token: <token-value> (from <path>/<to>/.databrickscfg config file)
✓ profile: <profile-name>
✓ auth_type: pat
databricks auth env
使用配置文件的名称或 Azure Databricks 帐户控制台 URL 或 Azure Databricks 工作区 URL 获取有关现有配置文件的信息。
databricks auth env [flags]
小窍门
可以在 Tab
或 --profile
之后按 -p
以显示可供选择的现有可用配置文件的列表,而不是手动输入配置文件名称。
若要创建配置文件,请参阅 configure
该命令。
选项
--host string
用于获取身份验证 env 的主机名
注释
如果多个配置文件与值匹配 --host
,则会显示错误,指出找不到单个匹配配置文件。 例如,你可能有一个配置文件只有一个主机值,另一个配置文件具有相同的主机值,还有一个令牌值。 在这种情况下,Databricks CLI 不会选择配置文件并停止。 若要帮助 Databricks CLI 选择所需的配置文件,请尝试指定其他 --host
值。 对于 --host
帐户控制台 URL 的值,请尝试指定值 --account-id
而不是 --host
值。
--profile string
用于获取身份验证 env 的配置文件
例子
以下示例获取默认身份验证环境:
databricks auth env
以下示例获取特定主机的身份验证环境:
databricks auth env --host https://my-workspace.cloud.databricks.com
配置了 Azure Databricks 访问令牌身份验证的配置文件的输出可能是:
{
"env": {
"DATABRICKS_AUTH_TYPE": "pat",
"DATABRICKS_CONFIG_PROFILE": "TEST",
"DATABRICKS_HOST": "https://my-workspace.cloud.databricks.com",
"DATABRICKS_TOKEN": "<token-value>"
}
}
以下示例获取特定配置文件的身份验证环境:
databricks auth env --profile my-test-environment
databricks 身份验证登录
登录到 Databricks 工作区或帐户,并将身份验证配置保存在配置文件中( ~/.databrickscfg
默认情况下)。 然后,可以使用配置文件通过标志对其他 Databricks CLI 命令 --profile
进行身份验证。 该配置文件还可用于对支持 Databricks 统一客户端身份验证的其他 Databricks 工具进行身份验证,包括 Databricks Python、Java 和 Go SDK。
databricks auth login HOST [flags]
此命令需要 Databricks 主机 URL(使用 --host
或用作位置参数,或从指定的配置文件名称隐式推断)和配置文件名称(using --profile
)才能指定。 如果未指定这些值,则会在运行时提示输入值。
虽然此命令始终将你记录到指定的主机中,但行为取决于你在配置文件中设置的现有配置文件( ~/.databrickscfg
默认情况下):
如果存在具有指定名称的配置文件并指定主机,则将登录到配置文件指定的主机。 配置文件将更新为使用“databricks-cli”作为身份验证类型(如果以前不是这种情况)。
如果存在具有指定名称但未指定主机的配置文件,系统会提示你指定主机。 配置文件将更新为使用指定的主机。 如果不是以前的情况,身份验证类型将更新为“databricks-cli”。
如果具有指定名称的配置文件存在并指定主机,但你使用(或指定位置
HOST
参数)指定主机--host
,则配置文件将更新为使用新指定的主机。 如果不是以前的情况,身份验证类型将更新为“databricks-cli”。如果不存在具有指定名称的配置文件,将使用指定的主机创建新配置文件。 身份验证类型将设置为“databricks-cli”。
Arguments
HOST
Databricks 主机 URL (可选)
选项
--configure-cluster
配置群集的提示
--timeout duration
在浏览器中完成登录质询的超时(默认为 1h0m0s)
例子
以下示例登录到 Databricks 工作区:
databricks auth login
以下示例登录到特定的 Databricks 工作区:
databricks auth login https://my-workspace.cloud.databricks.com
以下示例使用特定配置文件登录并配置群集设置:
databricks auth login --profile my-profile --configure-cluster
以下示例为登录过程设置自定义超时:
databricks auth login --timeout 30m
databricks 身份验证配置文件
列出所有可用的配置文件( ~/.databrickscfg
默认情况下),并检查它们是否为有效的配置文件。
databricks auth profiles [flags]
此命令输出采用以下格式的配置文件:
Name Host Valid
DEFAULT https://<host-url> YES
<profile-name> https://<host-url> NO
若要确定每个配置文件是否有效,Databricks CLI 列出了每个帐户级配置文件的工作区,并为每个工作区级配置文件运行获取当前用户命令。 如果命令成功,则会显示 a YES
;否则,会显示一个 NO
。
命令的 auth profiles
输出不显示任何访问令牌。 若要显示访问令牌,请参阅 databricks 身份验证 env。
默认情况下,配置文件存储在 Linux 或 macOS 或 %USERPROFILE%\.databrickscfg
Windows 上的文件中~/.databrickscfg
。 可以通过设置环境变量 DATABRICKS_CONFIG_FILE
来更改此文件的默认路径。
若要创建配置文件,请参阅 configure
命令。
选项
--skip-validate
是否跳过验证配置文件
例子
以下示例列出所有身份验证配置文件:
databricks auth profiles
以下示例列出配置文件而不验证它们:
databricks auth profiles --skip-validate
databricks 身份验证令牌
从本地缓存中 ~/.databricks/token-cache.json
获取身份验证令牌。 如果访问令牌已过期,请刷新该令牌。 此命令仅适用于 U2M 身份验证(使用 databricks auth login
命令)。 不支持使用客户端 ID 和机密进行 M2M 身份验证。
databricks auth token [HOST] [flags]
若要配置和设置 OAuth U2M 身份验证,请参阅 OAuth 用户到计算机(U2M)身份验证。
Arguments
HOST
Databricks 主机 URL (可选)
选项
--account-id string
Databricks 帐户 ID
--timeout duration
获取令牌的超时。 (默认值 1h0m0s)
例子
以下示例获取身份验证令牌:
databricks auth token
以下示例获取特定主机的身份验证令牌:
databricks auth token https://my-workspace.cloud.databricks.com
输出可能是:
{
"access_token": "<token-value>",
"token_type": "Bearer",
"expiry": "<token-expiration-date-time>"
}
以下示例为令牌获取设置自定义超时:
databricks auth token --timeout 30m
全局标志
--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
字符串
如果适用,要使用的捆绑包目标