Keyvault 类

管理存储在与 Azure 机器学习工作区关联的 Azure Key Vault 机密。

每个 Azure 机器学习工作区都有关联的 Azure Key Vault。 Keyvault 类是 Azure Key Vault 的简化包装器,可用于管理密钥保管库中的机密,包括设置、检索、删除和列出机密。 使用 Keyvault 类将机密安全地传递给远程运行,而无需以明文方式公开敏感信息。

有关详细信息,请参阅在训练运行中使用机密

继承
builtins.object
Keyvault

构造函数

Keyvault(workspace)

参数

workspace
Workspace
必需

与 Azure 机器学习工作区关联的密钥保管库。

注解

在本地和远程计算上提交的运行中,可以使用 Run 实例的 get_secret 方法从密钥保管库获取机密值。 若要获取多个机密,请使用 Run 实例的 get_secrets 方法。

这些 Run 方法提供了简单的快捷方式,因为 Run 实例知道其工作区和 Keyvault,并且可以直接获取机密,而无需在远程运行中实例化工作区和 Keyvault。

以下示例演示如何访问与工作区关联的默认密钥保管库并设置机密。


   import uuid

   local_secret = os.environ.get("LOCAL_SECRET", default = str(uuid.uuid4())) # Use random UUID as a substitute for real secret.
   keyvault = ws.get_default_keyvault()
   keyvault.set_secret(name="secret-name", value = local_secret)

完整示例可从 https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.ipynb 获取

方法

delete_secret

删除具有指定名称的机密。

delete_secrets

从与工作区关联的 Azure 密钥保管库中删除机密列表。

get_secret

返回给定机密名称的机密值。

get_secret_content_type

返回给定机密名称的机密内容类型。

get_secrets

获取给定机密名称列表的机密值。

list_secrets

从与工作区关联的 Azure 密钥保管库返回机密名称列表。

此方法不返回机密值。

set_secret

向与工作区关联的 Azure 密钥保管库添加机密。

set_secrets

将机密字典添加到 Azure 密钥保管库工作区。

delete_secret

删除具有指定名称的机密。

delete_secret(name)

参数

name
str
必需

要删除的机密的名称。

返回类型

delete_secrets

从与工作区关联的 Azure 密钥保管库中删除机密列表。

delete_secrets(secrets)

参数

secrets_batch
list[str]
必需

要删除的机密列表。

返回类型

get_secret

返回给定机密名称的机密值。

get_secret(name)

参数

name
str
必需

要返回其值的机密名称。

返回

特定机密名称的机密值。

返回类型

str

get_secret_content_type

返回给定机密名称的机密内容类型。

get_secret_content_type(name)

参数

name
str
必需

要为其返回内容类型的机密名称。

返回

指定机密名称的机密内容类型。

返回类型

str

get_secrets

获取给定机密名称列表的机密值。

get_secrets(secrets)

参数

secrets
list[str]
必需

要检索其值的机密名称的列表。

返回

已找到和未找到的机密的字典。

返回类型

dict(<xref:str: str>)

list_secrets

从与工作区关联的 Azure 密钥保管库返回机密名称列表。

此方法不返回机密值。

list_secrets()

返回

格式为 {name : "secretName"} 的机密名称字典列表

返回类型

dict(<xref:str:str>)

set_secret

向与工作区关联的 Azure 密钥保管库添加机密。

set_secret(name, value, content_type=<KeyVaultContentType.not_provided: 'application/NotProvided'>)

参数

name
str
必需

要添加的机密的名称。

value
<xref:azureml.core.azureml._restclient.models.KeyVaultContentType>
必需

要添加的机密的值。

value
默认值: KeyVaultContentType.not_provided

要添加的机密的内容类型。

返回类型

set_secrets

将机密字典添加到 Azure 密钥保管库工作区。

set_secrets(secrets_batch)

参数

secrets_batch
dict(<xref:str:str>)
必需

要添加的机密名称和值的字典。

返回类型