

# 配置 Salesforce Marketing Cloud Account Engagement 连接
<a name="salesforce-marketing-cloud-account-engagement-configuring-connections"></a>

授权类型决定了 AWS Glue 如何与 Salesforce Marketing Cloud Account Engagement 通信以请求访问您的数据。您选择的授权类型会影响您在创建连接之前必须满足的要求。Salesforce Marketing Cloud Account Engagement 仅支持 OAuth 2.0 的 AUTHORIZATION\$1CODE 授权类型。
+ 此授权类型被视为“三足型”OAuth，因为它依赖于将用户重定向到第三方授权服务器来对用户进行身份验证。它用于通过 AWS Glue 控制台创建连接。
+ 用户仍然可以选择在 Salesforce Marketing Cloud Account Engagement 中创建自己的关联应用程序，并在通过 AWS Glue 控制台创建连接时提供自己的客户端 ID 和客户端密钥。在这种情况下，他们仍会重定向到 Salesforce Marketing Cloud Account Engagement，以便登录并授权 AWS Glue 访问其资源。
+ 此授权类型会生成刷新令牌和访问令牌。访问令牌的有效期很短，可以通过刷新令牌在不需要用户干预的情况下自动刷新。
+ 有关为授权代码 OAuth 流创建关联应用程序的公开 Salesforce Marketing Cloud Account Engagement 文档，请参阅 [Authentication](https://developer.salesforce.com/docs/marketing/pardot/guide/version5overview.html#authentication)。

要配置 Salesforce Marketing Cloud Account Engagement 连接：

1. 在 AWS Glue Glue Studio 中，按照以下步骤在**数据连接**下创建连接：

   1. 选择**连接类型**时，请选择 Salesforce Marketing Cloud Account Engagement。

   1. 提供您想要连接到的 Salesforce Marketing Cloud Account Engagement 实例的 `INSTANCE_URL`。

   1. 提供您想要连接到的 Salesforce Marketing Cloud Account Engagement 实例的 `PARDOT_BUSINESS_UNIT_ID`。

   1. 从下拉列表中选择相应的**授权码 URL**。

   1. 从下拉列表中选择相应的**令牌 URL**。

   1. 选择 AWS Glue 可以代入并有权执行以下操作的 AWS IAM 角色：

------
#### [ JSON ]

****  

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "secretsmanager:DescribeSecret",
              "secretsmanager:GetSecretValue",
              "secretsmanager:PutSecretValue",
              "ec2:CreateNetworkInterface",
              "ec2:DescribeNetworkInterfaces",
              "ec2:DeleteNetworkInterface"
            ],
            "Resource": "*"
          }
        ]
      }
      ```

------

   1. 提供用户托管客户端应用程序的客户端 ID（已关联应用程序的客户端 ID）。

   1. 在 AWS Glue 中选择您要用于此连接的 `secretName`，然后放置令牌。所选密钥需要有一个键 `USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET`，其值为关联应用程序的客户端密钥。

   1. 如果要使用网络，请选择网络选项。

1. 向与您的 AWS Glue 作业关联的 IAM 角色授予读取 `secretName` 的权限。

1. 在 AWS Glue 作业配置中，提供 `connectionName` 作为**附加网络连接**。