Databricks 第7篇:管理Secret
有时,访问数据要求您通过JDBC对外部数据源进行身份验证,可以使用Azure Databricks Secret来存储凭据,并在notebook和job中引用它们,而不是直接在notebook中输入凭据。
要配置一个Secret,需要分三步:
- 创建secret scope,scope name是大小写敏感的。
- 把secret添加到secret scope中,secret name是大小写敏感的。
- 把权限授予secret scope。
一,Secret Scope简介
Secret Scope是Secret的集合,每一个Secret是由name唯一确定的。每一个Databricks 的workspace最多创建100个Secret Scope。Azure 支持两种类型的Secret Scope:Azure Key Vault-backed 和 Databricks-backed。
1,基于Azure Key Vault的Secret Scope
要引用存储在Azure Key Vault中的Secret,可以创建基于Azure Key Vault的Secret Scope,基于Azure Key Valut的Secret Scope对于Key Valut来说是只读的。 本文重点介绍基于Azure Key Valut的Secret Scope。
2,基于Databricks的Secret Scope
基于Databricks的Secret Scope存储在由Azure Databricks拥有和管理的加密数据库中,Secret Scope的name在工作空间中必须唯一,必须包含字母数字字符,破折号,下划线和句点,并且不得超过128个字符。名称被认为是不敏感的,并且工作空间中的所有用户都可以读取。
二,创建基于Azure Key Vault的Secret Scope
使用 Azure Portal UI创建Azure Key Vault-backed 的 secret scope。首先,在创建该类型的Secret Scope之前,确保对Azure Key Valut实例具有Contributor权限。
打开网页“https://<databricks-instance>#secrets/createScope”,这个URL是大小写敏感的,注意URL中的“createScope”,其中的“Scope”首字母必须是大写的。

主要的配置选项:
- Scope Name:指定Secret Scope的name,该名称是大小写敏感的。
- Manage Principal:用于定义该Secret Scope的Manage Principal(拥有管理权限的安全主体),选项All Users表示所有的用户都有MANAGE权限,选项Creator表示只有Secret Scope的创建者拥有MANAGE权限。MANAGE权限拥有对Secret Scope的读写权限,推荐选项是Creator,把MANAGE权限只授权给Creator。但是,用户的账户必须具有Azure Databricks Premium Plan ,才可以选择Creator。
- DNS Name:是Valut URI,从Key Valut的Properties面板中可以查看到。
- Resource ID:从Azure Key Valut的属性面板中可以查看到Resource ID。
三,个人访问Token
如果要访问Databricks REST API,可以使用Databricks personal access tokens来进行权限验证。
点击Databricks 工作区右上角的user profile icon

点击“User Settings”,进入到“User Settings”页面,在该页面中点击“Generage New Token”生成新的Token。

注意:要把Token保存起来,再次进入该页面,Token不再可见。
四:配置Databricks CLI
使用Databricks CLI 命令来验证Secret Scope是否创建成功。
Step1:安装Databricks CLI
pip install databricks-cli
Step2:配置验证信息
输入Databricks Host,并输入生成的个人访问Token
databricks configure --token
Step3:查看Secret Scope列表
databricks secrets list-scopes
参考稳定:
Authentication using Azure Databricks personal access tokens
Databricks 第7篇:管理Secret的更多相关文章
- Databricks 第8篇:把Azure Data Lake Storage Gen2 (ADLS Gen 2)挂载到DBFS
DBFS使用dbutils实现存储服务的装载(mount.挂载),用户可以把Azure Data Lake Storage Gen2和Azure Blob Storage 账户装载到DBFS中.mou ...
- WPF 精修篇 管理资源字典
原文:WPF 精修篇 管理资源字典 样式太多 每个界面可能需要全局的样式 有没有肯能 WPF 中的样式 像Asp.net中 的CSS一样管理那 有的 有资源字典 BurshDictionary &l ...
- Databricks 第10篇:Job
Job是立即运行或按计划运行notebook或JAR的一种方法,运行notebook的另一种方法是在Notebook UI中以交互方式运行. 一,使用UI来创建Job 点击"Jobs&quo ...
- Databricks 第5篇:Databricks文件系统(DBFS)
Databricks 文件系统 (DBFS,Databricks File System) 是一个装载到 Azure Databricks 工作区的分布式文件系统,可以在 Azure Databric ...
- Databricks 第6篇:Spark SQL 维护数据库和表
Spark SQL 表的命名方式是db_name.table_name,只有数据库名称和数据表名称.如果没有指定db_name而直接引用table_name,实际上是引用default 数据库下的表. ...
- Databricks 第9篇:Spark SQL 基础(数据类型、NULL语义)
Spark SQL 支持多种数据类型,并兼容Python.Scala等语言的数据类型. 一,Spark SQL支持的数据类型 整数系列: BYTE, TINYINT:表示1B的有符号整数 SHORT, ...
- Databricks 第11篇:Spark SQL 查询(行转列、列转行、Lateral View、排序)
本文分享在Azure Databricks中如何实现行转列和列转行. 一,行转列 在分组中,把每个分组中的某一列的数据连接在一起: collect_list:把一个分组中的列合成为数组,数据不去重,格 ...
- MySQL-第十二篇管理结果集
1.ResultSet 2.可更新的结果集,使用ResultSet的updateRow()方法.
- Databricks 第四篇:分组统计和窗口
对数据分析时,通常需要对数据进行分组,并对每个分组进行聚合运算.在一定意义上,窗口也是一种分组统计的方法. 分组数据 DataFrame.groupBy()返回的是GroupedData类,可以对分组 ...
随机推荐
- Java中中文排序器
在Java中使用Collator类按照汉字拼音排序字符串 public static void main(String[] args) throws Exception{ String[] strs ...
- 交换机配置OSPF负载分担
组网图形 OSPF负载分担简介 等价负载分担ECMP(Equal-Cost Multiple Path),是指在两个网络节点之间同时存在多条路径时,节点间的流量在多条路径上平均分摊.负载分担的作用是减 ...
- css 02-CSS属性:背景属性
02-CSS属性:背景属性 #background 的常见背景属性 css2.1 中,常见的背景属性有以下几种:(经常用到,要记住) background-color:#ff99ff; 设置元素的背景 ...
- React中JSX的理解
React中JSX的理解 JSX是快速生成react元素的一种语法,实际是React.createElement(component, props, ...children)的语法糖,同时JSX也是J ...
- Typora + 七牛云图床快速配置,告别手动上传图片!
大家好,我是zeroing,本文将介绍关于 Typora 软件如何配置七牛云图床,实现图片即插即用,可以先看一下最终效果! 可以看到图片借助 Typora 软件自动将本地存储转化为第三方图片网络链接 ...
- CTF练习 ①
最近学校要打比赛,,,把我这个混子也给算上了,,不得不赶紧学习学习. 今天学习的是SQL注入的一道题,参考的文章是 https://blog.csdn.net/qq_42939527/article ...
- CSRF学习
前提环境:网站存在CSRF漏洞(也就是过于相信访问请求,只判断了用户是否存在cookie,并未判断请求的发起者) CSRF攻击原理,用户A需要转账,用户A正常向银行网站发送请求登录,登录成功后银行网站 ...
- angular8 在componet里面跳转新的地址页面
this.router.navigate(['/teacher/course/detail/' + id]);
- 泡面不好吃,我用了这篇k8s调度器,征服了他
1.1 调度器简介 来个小刘一起 装逼吧 ,今天我们来学习 K8的调度器 Scheduler是 Kubernetes的调度器,主要的任务是把定义的 pod分配到集群的节点上,需要考虑以下问题: 公平: ...
- 快速理解Python异步编程的基本原理
第一个例子 假设你需要用电饭煲煮饭,用洗衣机洗衣服,给朋友打电话让他过来吃饭.其中,电饭煲需要30分钟才能把饭煮好,洗衣机需要40分钟才能把衣服洗好,朋友需要50分钟才能到你家.那么,是不是你需要在这 ...