秘密访问控制
默认情况下,所有定价计划中的所有用户都可以创建秘密和秘密范围。使用秘密访问控制,可用优质及以上计划,可配置细粒度权限,用于管理访问控制。本指南介绍如何设置这些控件。
请注意
属性管理秘密访问控制数据库命令行设置和文档(0.7.1及以上版本)。或者,您可以使用秘密API 2.0.
秘密访问控制
秘密的访问控制在秘密作用域级别进行管理。访问控制列表(ACL)定义Databricks主体(用户或组)、秘密范围和权限级别之间的关系。一般来说,用户将使用他们可用的最强大的权限(参见权限级别).
当秘密通过笔记本读取时,使用秘密实用程序(dbutils.secrets),用户的权限将根据执行命令的人应用,并且他们必须至少拥有读许可。
创建作用域时,初始值管理权限级别ACL应用于作用域。后续的访问控制配置可以由该主体执行。
权限级别
秘密访问权限如下:
管理—允许修改acl,允许对该秘密作用域进行读写操作。
写—允许读写该秘密作用域。
读-允许读取此秘密范围并列出可用的秘密。
每个权限级别都是前一个级别权限的子集(即具有写给定范围的权限可以执行所需的所有操作读许可)。
请注意
数据库管理员有管理工作区中所有秘密作用域的权限。
创建秘密ACL
属性为给定的秘密作用域创建秘密ACL数据库命令行设置和文档(0.7.1及以上版本):
Databricks secrets put-acl——scope ——principal ——permission
对已经具有应用权限的主体发出put请求将覆盖现有权限级别。
查看秘密acl
查看指定秘密作用域的所有秘密acl。
数据库机密列表-acls——scope
将秘密ACL应用于给定秘密作用域的主体:
Databricks secrets get-acl——scope ——principal
如果给定主体和范围不存在ACL,则此请求将失败。
起程拓殖集成
您可以在完全自动化的设置中使用Databricks Terraform提供商而且databricks_secret_acl:
资源“databricks_group”“ds”{display_name =“data-scientists”}资源“databricks_secret_scope”“app”{name =“app-secret-scope”}资源“databricks_secret_acl”“my_secret_acl”{principal = databricks_group.ds。display_name permission = "READ" scope = databricks_secret_scope.app.name} resource "databricks_secret" "publishing_api" {key = "publishing_api" string_value = "SECRET_API_TOKEN_HERE" scope = databricks_secret_scope.app.name}