【Azure 架构师学习笔记】- Azure Databricks (4) - 使用Azure Key Vault 管理ADB Secret

本文属于【Azure 架构师学习笔记】系列

本文属于【Azure Databricks】系列。

接上文 【Azure 架构师学习笔记】- Azure Databricks (3) - 再次认识DataBricks

前言

Azure Databricks有access token,是具有ADB内部最高权限的token。在云环境中这些高级别权限的secret都需要很好地被保护起来。

ADB提供了两种Secret Scopes:

  • Azure Key Vault-backed: secret 存储在Azure Key Vault, ADB 通过创建于AKV支持的Secret Sope来实现引用Secret。
  • Databricks-backed:Databricks自带有一个数据库,也可以通过存储在这个数据库来引用secret。 这种scope的好处在于可以不依赖于具体平台的设置, 在迁移过程中起到比较大的便利作用。

创建Key Vault和Secret

简单创建一个KV:

这里使用默认配置即可:

这里使用"Vault access policy"而不用RBAC, 虽然RBAC是推荐选项。

创建成功后,要记录好DNS 名字(也就是Vault URI)和Resource ID, 这个在后续步骤中需要使用。

创建Key Vault Secret


在Databricks中创建Azure Key Vault Secret Scope

进入ADB 之后,复制URL, 即下方蓝色部分,并用它替换成这样格式:https://<Databricks_url>#secrets/createScope

但是注意是大小写敏感,比如Scope的S必须是大写。如下图

填写信息并创建,创建完毕后ADB即可连接到这个Key Vault了。下面的Creator意味着只有创建者能用,而all users意味着这个workspace下的用户都能用。正式环境下需要根据ADB 的使用情况决定。

在Notebook中使用Azure Key Vault Secret Scope和Secret

接下来试一下如何使用这个Secret Scope进行访问,我们进入ADB,创建一个notebook。

根据上面的信息,输入下面的Pyhon代码并执行:

python 复制代码
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:

python 复制代码
dbutils.secrets.listScopes()
相关推荐
HelloRevit1 天前
快速入门 - 开始使用 Azure Digital Twins Explorer 中的示例场景
microsoft·flask·azure
城南花开时2 天前
DevOps工具链对比,Azure 和 TikLab哪款更好用?
azure·devops·tiklab
宝桥南山2 天前
Microsoft Fabric - 试一下在前端应用中使用 GraphQL API去连接Lakehouse
microsoft·reactjs·azure·fabric·graphql·db
Leinwin7 天前
微软发布Azure Kubernetes Service Automatic国际版
microsoft·kubernetes·azure
Elastic 中国社区官方博客8 天前
如何在 Azure 虚拟机上部署 Elasticsearch
大数据·人工智能·elasticsearch·microsoft·搜索引擎·全文检索·azure
FreeBuf_8 天前
微软全球服务中断:Azure、365、Xbox及Minecraft等多平台受影响
microsoft·azure·xbox
weixin_307779139 天前
C#程序实现将Teradata的存储过程转换为Azure Synapse Dedicated SQL pool的存储过程
数据库·数据分析·c#·云计算·azure
ManageEngine卓豪9 天前
Azure 监控工具怎么选?从原生局限到第三方解决方案的效率跃升
microsoft·azure·apm·azure监控
weixin_3077791313 天前
C#程序实现将MySQL的存储过程转换为Azure Synapse Dedicated SQL Pool的T-SQL存储过程
c#·自动化·云计算·运维开发·azure
codeの诱惑21 天前
Azure DevOps CI/CD 流水线中 Java 17 容器化部署 NullPointerException 解决方案
ci/cd·azure·devops