我在 Azure 密钥保管库中保存了一个机密,并希望在 Synapse 分析管道中访问它 当我运行手动笔记本时,它不会给出错误,并且我在笔记本的输出中得到了我的秘密。尽管如此,当我通过管道运行笔记本时,它会出现错误,并且下面附加了一条错误消息,而我已经在我的 Azure 密钥保管库和我的电子邮件 ID 以及我的工作区名称中添加了访问策略。
我的目标是通过管道运行而不是手动获取笔记本中的密钥库秘密值。
from notebookutils import mssparkutils
mssparkutils.credentials.getSecret('kv-dp-WorkspaceName','TestNoteBook')
上面两行代码给了我运行笔记本手册时的秘密值。
要通过在管道中调用笔记本来获取秘密,您需要在代码中指定密钥保管库之类的服务名称。
第一个板条箱链接服务到下面的特定密钥保管库:
在密钥保管库中为 syampse 工作区的服务主体的托管身份分配适当的权限:
然后在 synaps 笔记本中运行以下代码
from notebookutils import mssparkutils
mssparkutils.credentials.getSecret('key vault name','secret name','linkedservice name')
笔记本从管道成功执行: