在 Azure Key Vault 中存储凭据

适用于: Azure 数据工厂

可以在 Azure Key Vault 中存储数据存储和计算的凭据。 执行使用数据存储/计算的活动时,Azure 数据工厂将检索凭据。

目前,除自定义活动之外的所有活动类型都支持此功能。 具体而言,对于连接器配置,请查阅每个连接器主题中的“链接服务属性”部分了解详细信息。

先决条件

此功能依赖于数据工厂托管标识。 从数据工厂的托管标识了解其工作原理,并确保数据工厂具有关联的托管标识。

步骤

若要引用 Azure Key Vault 中存储的凭据,需要:

  1. 通过复制与工厂一起生成的“托管标识对象 ID”的值来 检索数据工厂托管标识。 如果使用 ADF 创作 UI,则托管标识对象 ID 将显示在 Azure Key Vault 链接服务创建窗口上;也可从 Azure 门户检索该 ID,详情请参阅检索数据工厂托管标识
  2. 向托管标识授予对 Azure Key Vault 的访问权限。 在密钥保管库 ->“访问策略”->“添加访问策略”中,搜索此托管标识,以在“机密权限”下拉列表中授予“获取” 权限。 它允许此指定的工厂访问密钥保管库中的机密。
  3. 创建指向 Azure Key Vault 的链接服务。 请参阅 Azure Key Vault 链接服务
  4. 创建数据存储链接服务,该服务中引用密钥保管库中存储的相应机密。 请参阅引用密钥保管库中存储的机密

Azure Key Vault 链接服务

Azure Key Vault 链接服务支持以下属性:

属性 说明 必需
type type 属性必须设置为:AzureKeyVault
baseUrl 指定 Azure Key Vault URL。

使用创作 UI:

选择“连接” -> “链接服务” -> “新建” 。 在“新建链接服务”中,搜索并选择“Azure Key Vault”:

搜索“Azure Key Vault”

选择凭证所在的已预配的 Azure Key Vault。 可执行“测试连接”操作,确保 AKV 连接有效 。

配置 Azure Key Vault

JSON 示例:

{
    "name": "AzureKeyVaultLinkedService",
    "properties": {
        "type": "AzureKeyVault",
        "typeProperties": {
            "baseUrl": "https://<azureKeyVaultName>.vault.azure.cn"
        }
    }
}

引用密钥保管库中存储的机密

在引用密钥保管库机密的链接服务中配置字段时,支持以下属性:

属性 说明 必需
type 字段的 type 属性必须设置为:AzureKeyVaultSecret
secretName Azure Key Vault 中机密的名称。
secretVersion Azure Key Vault 中机密的版本。
如果未指定,将始终使用最新版本的机密。
如果指定,然后它遵循给定的版本。
store 指用于存储凭据的 Azure Key Vault 链接服务。

使用创作 UI:

创建与数据存储/计算的连接时,为机密字段选择“Azure Key Vault” 。 选择已预配的 Azure Key Vault 链接服务并提供机密名称 。 也可根据需要提供机密版本。

提示

对于在链接服务(如 SQL Server、Blob 存储等)中使用连接字符串的连接器,可以选择仅存储机密字段(例如 AKV 中的密码),或将整个连接字符串存储在 AKV 中。 可以在 UI 上找到这两个选项。

配置 Azure Key Vault 机密

JSON 示例:(请参阅“密码”部分)

{
    "name": "DynamicsLinkedService",
    "properties": {
        "type": "Dynamics",
        "typeProperties": {
            "deploymentType": "<>",
            "organizationName": "<>",
            "authenticationType": "<>",
            "username": "<>",
            "password": {
                "type": "AzureKeyVaultSecret",
                "secretName": "<secret name in AKV>",
                "store":{
                    "referenceName": "<Azure Key Vault linked service>",
                    "type": "LinkedServiceReference"
                }
            }
        }
    }
}

后续步骤

有关 Azure 数据工厂中复制活动支持作为源和接收器的数据存储的列表,请参阅支持的数据存储