如何查看Databricks集群所有者信息并解决秘钥权限错误
解决Databricks Notebook的Secret读取权限错误
一、获取集群所有者信息
有两种方式可以查看集群的当前所有者:
- 通过Databricks UI:打开目标集群的详情页面,切换到「Permissions」标签页,「Owner」列对应的用户就是集群当前所有者。
- 通过Databricks CLI:执行命令
databricks clusters get --cluster-id <你的集群ID>,返回的JSON结果中,owner_user_name字段对应当前所有者;如果该字段不存在,可查看creator_user_name(仅适用于未转移所有权的集群)。
二、排查已授权但仍报错的问题
如果已经给集群创建者授权但错误依旧,按以下步骤逐一排查:
- 确认授权对象是当前集群所有者:若集群所有权被转移过,创建者可能不再是所有者,此时给创建者授权无效,必须给
owner_user_name对应的用户授予Secret的READ权限。 - 验证Secret存在性:执行
databricks secrets list --scope <你的scope名称>,检查配置中引用的secret key是否存在。 - 检查Secret引用格式:Spark配置中的Secret必须严格遵循
{{secrets/scope_name/secret_key}}的格式,确保scope名称、secret key无拼写错误。 - 确认所有者的Secret权限:执行
databricks secrets get-acl --scope <你的scope名称> --principal <所有者用户名>,确保返回的权限是READ或更高(如WRITE)。 - 重启集群:权限变更后,需要重启集群才能让配置生效。
- 检查集群访问模式(共享集群场景):如果是多人共享的集群,除了所有者权限,还需确认运行Notebook的用户是否有集群访问权限,以及该用户是否也拥有对应Secret的READ权限(若Notebook中直接引用Secret而非通过Spark配置)。
内容的提问来源于stack exchange,提问作者kabil
相关产品推荐
相关产品推荐

