为洁净室激活配置 AWS 身份提供商
对于每个洁净室激活协作邀请,配置 AWS 帐户,以便 Data 360 可以安全地将查询结果写入 S3 存储桶,然后在 Data 360 中接受邀请。
所需的 Edition
| 适用于:Data 360 支持的所有版本。请参阅 Data 360 版本可用性。 |
| 所需用户权限 | |
|---|---|
| 接受洁净室激活邀请: | 其中一个权限集:
|
Data 360 使用具有 OpenID Connect (OIDC) Trust 策略的 AWS IAM 角色将协作结果直接写入提供商的 S3 存储桶。提供商保持对数据的完全所有权 — Data 360 对您配置的特定 S3 路径具有只读访问权限,仅仅限于此协作。
-
完成先决条件。
- 如果您无权访问专用 AWS 环境,请创建一个。
-
在 Data 360 中,转到“洁净室”选项卡,打开待处理激活协作邀请,并记下这些值。
- 使用者 Salesforce 域 URL — 用作身份提供商 URL
- 外部 ID — 此协作范围内的唯一标识符
设置 AWS 环境
-
将 Salesforce 添加为 OpenID Connect (OIDC) 身份提供商。
身份提供商告诉 AWS 哪个外部系统被允许请求访问您的 AWS 资源。如果没有此步骤,AWS 将无法识别 Data 360 颁发的令牌,并拒绝连接。
- 在 AWS 管理控制台中,转到 IAM > 身份提供商,然后单击添加提供商。
- 对于配置提供商字段,选择 OpenID Connect。
-
对于提供商 URL,输入 Consumer Salesforce 域 URL,然后是
/services/connectors。例如:https://yourorg.my.salesforce.com/services/connectors -
对于受众,输入没有任何路径后缀的 Consumer Salesforce 域 URL。
例如:
https://yourorg.my.salesforce.com - 单击添加提供商。
-
为激活结果选择或创建 S3 存储桶。
这是存储桶,在消费者运行激活查询后,Data 360 会在此写入匹配的受众输出。您可以使用现有存储桶或创建专用存储桶。
请注意 S3 存储桶名称和路径 — 在 Data 360 中,以
s3://your-bucket-name/optional-prefix/格式将此值输入为 Amazon S3 URL。
备注 Data 360 会将特定于协作的元数据附加到提供的路径。如果您提供s3://my-results/,最终数据位于:s3://my-results/[Collaboration Name]/[Query Name]_[Timestamp]/[Data Files].每次查询运行都会创建一个文件夹。结果会作为 parquet 文件写入。 -
创建必要的 IAM 角色。
见使用自定义 Trust 策略(控制台)创建角色。
在“添加权限”屏幕上,添加可以检查适当存储桶是否存在并可以写入的权限。有关可应用于角色的权限策略,请查看 Amazon S3 存储桶策略和权限。
复制 IAM 角色的 Amazon 资源名称 (ARN)。您可以在“接受洁净室协作邀请”向导中输入此值。
-
将 Trust 策略应用于 IAM 角色。
在Custom Trust策略部分中,单击编辑 Trust策略,用以下模板替换现有 JSON。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::[YOUR_ACCOUNT_ID]:oidc-provider/[SALESFORCE_CONSUMER_URL]/services/connectors" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "[SALESFORCE_CONSUMER_URL]/services/connectors:sub": "[EXTERNAL_ID]" } } } ] }使用以下值替换占位符。
占位符 必填值 在何处查找值 <YOUR_ACCOUNT_ID>您的 12 位 AWS 帐户 ID。 AWS 控制台中的右上角菜单。 <SALESFORCE_CONSUMER_URL>不带 https://的 Consumer Salesforce 域 URL。例如:yourorg.my.salesforce.com.Data 360 邀请屏幕上的 Consumer Salesforce Domain URL。该值出现在策略的 2 个位置 — 主要 ARN 和条件密钥。 <EXTERNAL-ID>外部 ID 值。 Data 360 邀请屏幕上的外部 ID。 -
在返回 Data 360 之前,请确认您拥有来自 AWS 的这些值,并在接受向导中输入它们。
值 在 AWS 中查找 Amazon IAM 角色 ARN 您在步骤 3 中创建 IAM 角色时复制的角色 ARN Amazon S3 URL 步骤 2 中的 S3 存储桶路径,格式为 s3://your-bucket-name/optional-prefix/
在 Data 360 中接受协作邀请
- 返回 Data 360 中的接受洁净室协作邀请屏幕,并完成标准接受步骤:选择数据空间并创建映射的模板。
-
在 " AWS Trust Relationship " 部分,验证屏幕上显示的外部 ID 和 Consumer Salesforce Domain URL 值是否与您在 AWS 的 Trust 策略中使用的值相匹配。
这些值是只读的 — 它们显示在这里,以便您在继续之前可以确认您的 AWS 设置是否正确。
-
在 AWS 连接设置部分中,输入您在步骤 2 结束时记录的值。
- Amazon IAM 角色 ARN — 您创建的角色的 ARN
- Amazon S3 URL — 写入结果的 S3 路径
-
单击测试连接。
Data 360 验证 oidC Trust、IAM 权限和 S3 路径访问权限。如果测试失败,请检查:
- Trust 策略中的
sub条件与屏幕上显示的外部 ID完全匹配。 - AWS 中的 OIDC 提供商 URL 和受众与邀请中的 Consumer Salesforce Domain URL 匹配。
- Trust 策略中的
<CONSUMER-DOMAIN>占位符不包括https://。 - IAM 角色 ARN 正确,并且该角色具有 S3 写入权限。
- Trust 策略中的
- 单击下一步,接受邀请。
本文章是否解决您的问题?
请与我们共享您的想法,以便我们进行改进!

