本文属于【Azure 架构师学习笔记】系列。
本文属于【Azure Databricks】系列。
接上文 【Azure 架构师学习笔记】- Azure Databricks (3) - 再次认识DataBricks
Azure Databricks有access token,是具有ADB内部最高权限的token。在云环境中这些高级别权限的secret都需要很好地被保护起来。
ADB提供了两种Secret Scopes:
简单创建一个KV:
这里使用默认配置即可:
这里使用"Vault access policy"而不用RBAC, 虽然RBAC是推荐选项。
创建成功后,要记录好DNS 名字(也就是Vault URI)和Resource ID, 这个在后续步骤中需要使用。
进入ADB 之后,复制URL, 即下方蓝色部分,并用它替换成这样格式:https://<Databricks_url>#secrets/createScope
但是注意是大小写敏感,比如Scope的S必须是大写。如下图
填写信息并创建,创建完毕后ADB即可连接到这个Key Vault了。下面的Creator意味着只有创建者能用,而all users意味着这个workspace下的用户都能用。正式环境下需要根据ADB 的使用情况决定。
接下来试一下如何使用这个Secret Scope进行访问,我们进入ADB,创建一个notebook。
根据上面的信息,输入下面的Pyhon代码并执行:
dbutils.secrets.get(scope = "akv_secret_scope_test", key = "adlsaccesskey")
#azurekeyvault_secret_scope --> Azure Key Vault based scope which we created in Databricks
#BlobStorageAccessKey --> Secret name which we created in Azure Key Vault
如果出现[REDACTED]那么意味着成功访问。
我们也可以在notebook里面执行下面命令来查看当前已经创建了的secretscope:
dbutils.secrets.listScopes()