我使用 Secret API 在 databricks 上创建了一个 Secret。
代码:
Scope_name : {"scope": "dbtest", "initial_manage_principal":"user"}
Resp= requests.post('https://instancename.net/mynoteid/api/2.0/secrets/scopes/create',json=Scope_name)
类似的方式,我添加了用户和密码
代码:
Content = {"scope":"dbtest","key":"user","string_value":"Vidyasekar"}
requests.post('https://instancename.net/mynoteid/api/2.0/secrets/put', json=content)
执行后我得到响应:<Response [200]>
这意味着 secret 存储成功。
使用列表 API 调用或 dbutils.secrets.get()
列出相同内容时,它显示“ secret 不存在于范围
我的疑问是, 如何获取databricks实例名称? secret 存储在 DBFS 位置的什么位置?
最佳答案
在 python 中创建 secret 范围(Azure 上的示例)如下所示:
import requests
import json
# Set authorization token (token is generated in user settings)
hdr = {"authorization": "Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}
x = json.dumps({'scope': 'lab-a-adls'})
r = requests.post("https://westeurope.azuredatabricks.net/api/2.0/secrets/scopes/create",
headers = hdr,
data= x)
通过以下方式在范围内存储凭据:
x = json.dumps({
"scope": "lab-a-adls",
"key": "credential",
"string_value": "*******************************"
})
r = requests.post("https://westeurope.azuredatabricks.net/api/2.0/secrets/put",
headers = hdr,
data= x)
关于scope - 数据 block 中的 secret ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53039788/