secret
函数
适用于: Databricks SQL 预览版 Databricks Runtime 11.3 LTS 及更高版本
从 Databricks 机密服务中提取具有给定 scope
和 key
的机密值。
语法
secret ( scope, key )
参数
scope
:一个常量字符串表达式,其中包含要提取的机密的范围。 范围是可能存在多个键的命名空间。key
:一个常量字符串表达式,其中包含要提取的机密的密钥。
返回
一个 STRING
。
如果无法检索密钥,该函数会引发 INVALID_SECRET_LOOKUP。
若要改为返回 NULL
,请使用 try_secret() 函数。
若要检索用户有权查看的所有机密的列表,请使用 list_secrets 函数。
错误条件
INVALID_SECRET_LOOKUP.SECRET_FUNCTION_KEY_NOT_CONSTANT
:key
不是常量字符串。INVALID_SECRET_LOOKUP.SECRET_FUNCTION_SCOPE_NOT_CONSTANT
:scope
不是常量字符串。INVALID_SECRET_LOOKUP.SECRET_FUNCTION_NOT_SUPPORTED
:Databricks 机密服务不可用。INVALID_SECRET_LOOKUP.SECRET_FUNCTION_LOOKUP_FAILED
:key
在scope
中找不到。
示例
> SELECT * FROM list_secrets();
scope key
------------ ---------------
secrets.r.us theAnswerToLife
> SELECT secret('secrets.r.us', 'theAnswerToLife');
fourtyTwo
> SELECT try_secret('secrets.r.us', 'WhatIsTheAnswerToLife');
Error: INVALID_SECRET_LOOKUP.SECRET_FUNCTION_LOOKUP_FAILED