Keyvault 类

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

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

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

类 Keyvault 构造函数。

构造函数

Keyvault(workspace)

参数

名称 说明
workspace
必需

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

workspace
必需

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

注解

在本地和远程计算上提交的运行中,可以使用 get_secret 运行实例的方法从 Key Vault 获取机密值。 若要获取多个机密,请使用 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 Key Vault 中删除机密列表。

get_secret

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

get_secret_content_type

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

get_secrets

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

list_secrets

从与工作区关联的 Azure Key Vault 中返回机密名称的列表。

此方法不返回机密值。

set_secret

将机密添加到与工作区关联的 Azure Key Vault。

set_secrets

将机密字典添加到与工作区关联的 Azure Key Vault。

delete_secret

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

delete_secret(name)

参数

名称 说明
name
必需
str

要删除的机密的名称。

返回

类型 说明

delete_secrets

从与工作区关联的 Azure Key Vault 中删除机密列表。

delete_secrets(secrets)

参数

名称 说明
secrets_batch
必需

要删除的机密列表。

secrets
必需

返回

类型 说明

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_secrets

从与工作区关联的 Azure Key Vault 中返回机密名称的列表。

此方法不返回机密值。

list_secrets()

返回

类型 说明

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

set_secret

将机密添加到与工作区关联的 Azure Key Vault。

set_secret(name, value, content_type=KeyVaultContentType.not_provided)

参数

名称 说明
name
必需
str

要添加的机密的名称。

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

要添加的机密的值。

value
必需

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

content_type
默认值: KeyVaultContentType.not_provided

返回

类型 说明

set_secrets

将机密字典添加到与工作区关联的 Azure Key Vault。

set_secrets(secrets_batch)

参数

名称 说明
secrets_batch
必需
dict(<xref:str:str>)

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

返回

类型 说明