AWS S3 模块
Adobe Workfront Fusion AWS S3模块允许您对S3存储桶执行操作。
访问权限要求
| table 0-row-2 1-row-2 2-row-2 3-row-2 layout-auto html-authored no-header | |
|---|---|
| Adobe Workfront 包 |
任意 Adobe Workfront Workflow 包以及任意 Adobe Workfront 自动化和集成包 Workfront Ultimate Workfront Prime 和 Select 包,且需额外购买 Workfront Fusion。 |
| Adobe Workfront 许可证 |
标准 工作版或更高版本 |
| Adobe Workfront Fusion 许可证 |
基于操作:适用于拥有基于操作的许可证的组织 基于连接器(旧版):Workfront Fusion for Work Automation and Integration |
| 产品 | 如果您的组织使用的 Workfront Select 或 Prime 包不包含 Workfront 自动化和集成,则必须单独购买 Adobe Workfront Fusion。 |
有关此表中信息的更多详细说明,请参阅文档中的访问权限要求。
有关 Adobe Workfront Fusion 许可证的详细信息,请参阅 Adobe Workfront Fusion 许可证。
先决条件
要使用AWS S3模块,您必须拥有Amazon Web Service帐户。
AWS S3 API信息
AWS S3连接器使用以下对象:
将 AWS 连接到 Workfront Fusion connect-aws-to-workfront-fusion
使用联合连接将AWS连接到Workfront Fusion
- 使用联合连接将AWS连接到Workfront Fusion的先决条件
- 在AWS中添加Workfront Fusion作为身份提供程序
- 创建IAM角色
- 在Workfront Fusion中创建连接
- 添加与角色信任策略的连接
- 验证连接
- 故障排除
通过联合连接,Workfront Fusion无需在Fusion中创建IAM用户或存储访问密钥即可访问您的AWS帐户。
您而是要将Workfront Fusion注册为AWS帐户中的可信身份提供程序,并配置哪个单一Fusion连接允许使用特定IAM角色。 当连接运行时,Fusion会提供一个短暂的身份证明,而AWS会返回自行过期的临时凭据。 不会创建、存储或旋转任何长生命周期密钥。
| note |
|---|
| NOTE |
| 设置此连接需要访问AWS控制台两次。 首先创建角色,然后在Workfront Fusion中创建连接,然后返回AWS以完成信任策略。 这是因为信任策略的一部分标识了一个特定连接,并且该标识符在创建连接之前不存在。 |
使用联合连接将AWS连接到Workfront Fusion的先决条件
要创建此连接,您需要满足以下条件:
- 在AWS IAM中创建身份提供程序以及创建和编辑角色的权限。 这通常意味着策略或等效策略。 如果您没有此访问权限,请向云中的某人咨询或
安全团队为您完成AWS步骤。 - 可在Workfront Fusion中创建连接。
在AWS中添加Workfront Fusion作为身份提供程序
此步骤可告知AWS由Workfront Fusion颁发的令牌值得信任。 每个AWS帐户执行一次此操作。 如果贵组织中的某人已添加此提供程序,请跳至创建IAM角色。
-
登录到AWS控制台,然后转到IAM > 身份提供程序。
-
选择添加提供程序。
-
对于提供程序类型,选择OpenID Connect。
-
在提供程序URL中,输入以下内容,然后选择获取指纹:
code language-none https://oidc.automations.adobe.com -
在受众中,输入以下内容:
code language-none sts.amazonaws.com -
选择添加提供程序。
-
继续创建IAM角色。
创建IAM角色
角色定义允许在您的AWS帐户中进行的连接。 您可以为每个连接创建一个角色,以便可以单独授予和撤销每个连接的访问权限。
-
在IAM中,转到 角色 并选择创建角色。
-
对于受信任的实体类型,请选择Web标识。
-
在身份提供程序中,选择
oidc.automations.adobe.com。 -
在受众中,选择
sts.amazonaws.com。 -
选择下一步,然后附加此连接所需的权限策略。
仅授予连接实际使用的权限。 例如,只读取以下内容的连接:
一个存储段不需要AmazonS3FullAccess。 -
为角色提供一个清晰、可识别的名称。 例如:
WorkfrontFusionFederatedConnection。 -
选择创建角色。
-
打开您刚刚创建的角色,并从“摘要”区域复制其ARN。 它看起来像这样:
arn:aws:iam::123456789012:role/WorkfrontFusionFederatedConnection
在Workfront Fusion中创建连接
- 在模块的连接设置屏幕中,选择联合连接类型。
- 输入您在创建IAM角色中复制的角色ARN。
- 选择创建。
Workfront Fusion显示三个值。 您可以在下一个过程中使用它们。
| table 0-row-2 1-row-2 2-row-2 html-authored no-header | |
|---|---|
| 发出 | 始终https://oidc.automations.adobe.com。 这与您在AWS中添加的标识提供程序匹配。 |
| 主题 | 标识此连接。 它看起来像fusion:6e5b1c2a345bd8d1ed98b6b4f1459818:28964。 您创建的每个连接都各不相同。 |
| 受众 | 始终sts.amazonaws.com。 |
-
保持此面板打开并复制主题值。
note NOTE 不要关闭面板或选择“取消”。 在完成其余步骤之前,连接不会完成。 如果关闭面板,则必须删除连接并重新启动,因为新连接会收到新主题。
添加与角色信任策略的连接
在完成此过程之前,角色通常信任Workfront Fusion,但尚不允许此特定连接使用它。
-
在新的浏览器选项卡中,返回AWS控制台并打开您创建的角色。
-
选择 信任关系 选项卡,然后选择编辑信任策略。
-
将策略替换为以下内容,并替换您自己的值:
- 将
123456789012替换为您的AWS帐户ID - 将
sub值替换为您从Workfront Fusion复制的主题。
code language-none { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::123456789012:oidc-provider/oidc.automations.adobe.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "oidc.automations.adobe.com:sub": "fusion:6e5b1c2a345bd8d1ed98b6b4f1459818:28964", "oidc.automations.adobe.com:aud": "sts.amazonaws.com" } } } ] } - 将
-
选择更新策略。
-
继续验证连接。
| note tip | ||
|---|---|---|
| TIP | ||
| 要使多个连接使用相同的角色,请将主体作为数组列出。 如果令牌与列表中的任意值相匹配,则AWS允许使用该角色: | ||
|
||
| 请勿将子值替换为通配符。 这样,贵组织中的任何连接都可以使用角色,包括其他人以后创建的连接 |
验证连接
-
返回到Workfront Fusion浏览器选项卡,其中连接面板仍处于打开状态。
-
单击保存。
Workfront Fusion联系AWS,后者检查信任策略并返回临时凭据。 如果一切设置正确,连接验证成功,您可以继续设置模块。
如果验证失败,面板将保持打开状态并显示错误。 在AWS中更正问题,然后再次选择“保存”。 您不需要重新创建连接,并且主题不会更改。
从此刻起,连接将更新其自身的凭据。 没有要轮换的键,也没有您需要维护的过期项。
故障排除
| table 0-row-3 1-row-3 2-row-3 3-row-3 html-authored | ||
|---|---|---|
| 错误 | 它的含义 | 检查内容 |
| InvalidIdentityToken | AWS无法将该令牌与已注册的身份提供程序进行匹配。 | 检查您是否已将添加Workfront Fusion中所述的身份提供程序作为AWS中的身份提供程序,以及其URL是否与https://oidc.automations.adobe.com完全一致,没有尾随斜杠。 |
| AccessDenied担任角色时 | 已注册身份提供程序,但信任策略与此连接不匹配。 | 检查信任策略中的子值是否与Workfront Fusion中显示的主题相同的字符换字符,以及该aud是否为sts.amazonaws.com。 从其他连接复制的主题是最常见的原因。 |
| 连接可正常工作,但稍后会失败 | 检查角色的权限策略是否已更改,或者角色是否已删除并重新创建。 重新创建角色不会更改其ARN,但会重置其信任策略。 |
使用API用户将AWS连接到Workfront Fusion
要将AWS S3连接到Workfront Fusion,您必须将您的AWS帐户连接到Workfront Fusion。 为此,您首先需要在AWS IAM中创建API用户。
-
登录到您的AWS IAM帐户。
-
导航到身份和访问管理 > 访问管理 > 用户。
-
单击添加用户。
-
输入新用户的名称并在访问类型部分中选择 编程访问 选项。
-
单击直接附加现有策略,然后在搜索栏中搜索AmazonS3FullAccess。 出现时单击它,然后单击下一步。
-
继续其他对话框屏幕,然后单击创建用户。
-
复制提供的 访问密钥ID 和访问密钥。
-
转到Workfront Fusion并打开AWS S3模块的 创建连接 对话框。
-
从步骤7到相应的字段输入访问密钥ID和访问密钥,然后单击 继续 建立连接。
已建立连接。 您可以继续设置模块。
AWS S3 模块及其字段
在您配置 AWS S3 模块时,Workfront Fusion 会显示以下字段。 除这些字段外,根据您的应用程序或服务访问权限级别,可能会显示更多 AWS S3 字段。 模块中的加粗标题表示必填字段。
如果您看到字段或功能上方的映射按钮,可使用它为该字段设置变量和函数。 有关详细信息,请参阅将信息从一个模块映射到另一个模块。
操作
创建存储桶
此操作模块可在AWS中创建存储段。
获取文件
此操作模块从存储段下载文件。
进行API调用
此操作模块对AWS S3 API进行自定义调用。
有关Amazon S3 API的详细讨论,请参阅Amazon S3 REST API简介。
https://s3.<selected-region>.amazonaws.com/。选择配置API调用所需的HTTP请求方法。 有关详细信息,请参阅Adobe Workfront Fusion中的HTTP请求方法。
添加请求标头。 对于要添加的每个标头,单击 添加项 并输入标头。 您可以使用以下常用请求标头。 有关更多请求标头,请参阅AWS S3 API文档。
Workfront Fusion 会自动添加授权标头。
| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 layout-auto | |
|---|---|
| 标头名称 | 描述 |
| Content-Length | 根据RFC 2616的消息长度(不带标头)。 加载XML的PUT和操作(如日志记录和ACL)需要此标头。 |
| Content-Type | 资源的内容类型(如果请求内容位于正文中)。 示例:text/plain。 |
| Content-MD5 | 根据RFC 1864对消息的128位MD5摘要(不包括标头)进行Base64编码。 此标头可用作消息完整性检查,以验证数据是否与最初发送的数据相同。 虽然这是可选的,但我们建议使用Content-MD5机制作为端到端完整性检查。 有关REST请求身份验证的更多信息,请参阅AWS文档中的签名和身份验证REST请求。 |
| 日期 | 请求者的当前日期和时间。 示例:Wed, 01 Mar 2006 12:00:00 GMT。 指定Authorization 标头时,必须指定x-amz-date或Date 标头。 |
| Expect |
当您的应用程序使用100-continue时,它会在收到确认后才发送请求正文。 如果根据标头拒绝消息,则不会发送消息正文。 仅当您发送正文时,才能使用此标头。 有效值: 100-continue |
| 主机 |
对于路径样式请求,值为 HTTP 1.1需要此标头(大多数工具包会自动添加此标头);HTTP/1.0请求可以选择此标头。 |
| x-amz-content-sha256 | 使用签名版本4对请求进行身份验证时,此标头提供请求有效负载的哈希。 以块形式上传对象时,将值设置为STREAMING-AWS4-HMAC-SHA256-PAYLOAD以指示签名仅涵盖标头并且没有有效负载。 有关详细信息,请参阅AWS文档中授权标头的签名计算。 |
| x-amz-date | 请求者的当前日期和时间。 示例:Wed, 01 Mar 2006 12:00:00 GMT。 指定Authorization 标头时,必须指定x-amz-date或Date 标头。 如果同时指定两者,则优先使用为x-amz-date标头指定的值。 |
| x-amz-security-token |
此标头可用于以下方案:
使用Amazon DevPay的请求和使用临时安全凭据签名的请求需要此标头。 |
以标准 JSON 对象的形式添加 API 调用的正文内容。
注意:
在 JSON 中使用 if 等条件语句时,需将引号置于条件语句外部。
上载文件
此操作模块会将文件上传到AWS S3存储段。
搜索
列出文件
从指定位置返回文件列表。
列出文件夹
从指定位置返回文件夹列表。