

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Amazon Bedrock 流的先决条件
<a name="flows-prereq"></a>

在创建流之前，请查看以下先决条件并确定您需要满足哪些先决条件：

1. 为您计划添加到工作流中的一个或多个节点定义或创建资源：
   + 对于提示节点 – 使用提示管理器创建提示。有关更多信息，请参阅 [在 Amazon Bedrock 中使用提示管理器构建和存储可重复使用的提示](prompt-management.md)。如果您计划在工作流中创建节点时以内联方式定义提示，则无需在提示管理器中创建提示。
   + 对于知识库节点 – 创建您计划在流中使用的知识库。有关更多信息，请参阅 [利用 Amazon Bedrock 知识库检索数据并生成人工智能响应](knowledge-base.md)。
   + 对于代理节点 – 创建您计划在工作流中使用的代理。有关更多信息，请参阅 [使用人工智能代理在应用程序中自动执行任务](agents.md)。
   + 对于 S3 存储节点 – 创建 S3 存储桶以存储工作流中节点的输出。
   + 对于 S3 检索节点 – 在存储桶中创建一个 S3 对象，以便从中检索工作流的数据。S3 对象必须是 UTF-8 编码的字符串。
   + 对于 Lambda 节点-为您计划在流程中实现的业务逻辑定义一个AWS Lambda函数。有关更多信息，请参见[AWS Lambda 开发人员指南](https://docs.aws.amazon.com/lambda/latest/dg/)。
   + 对于 Amazon Lex 节点 – 创建一个 Amazon Lex 机器人来识别意图。有关更多信息，请参阅 [Amazon Lex 开发人员指南](https://docs.aws.amazon.com/lex/latest/dg/)。

1. 要使用流，您必须有两个不同的角色：

   1. **用户角色**-用于登录AWS 管理控制台或调用 API 的 IAM 角色必须具有执行与流程相关的操作的权限。

      如果您的角色已附加[AmazonBedrockFullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonBedrockFullAccess)策略，则无需为此角色配置其他权限。要将角色的权限限制为仅用于流相关操作，请将以下基于身份的策略附加到 IAM 角色：

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

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Sid": "FlowPermissions",
                  "Effect": "Allow",
                  "Action": [  
                      "bedrock:CreateFlow",
                      "bedrock:UpdateFlow",
                      "bedrock:GetFlow",
                      "bedrock:ListFlows", 
                      "bedrock:DeleteFlow",
                      "bedrock:ValidateFlowDefinition", 
                      "bedrock:CreateFlowVersion",
                      "bedrock:GetFlowVersion",
                      "bedrock:ListFlowVersions",
                      "bedrock:DeleteFlowVersion",
                      "bedrock:CreateFlowAlias",
                      "bedrock:UpdateFlowAlias",
                      "bedrock:GetFlowAlias",
                      "bedrock:ListFlowAliases",
                      "bedrock:DeleteFlowAlias",
                      "bedrock:InvokeFlow",
                      "bedrock:TagResource",
                      "bedrock:UntagResource", 
                      "bedrock:ListTagsForResource"
                  ],
                  "Resource": "*"
              }
          ]   
      }
      ```

------

      您可以通过省略[操作](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies-actions)或指定[资源](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies-resources)和[条件键](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies-conditionkeys)来进一步限制权限。IAM 身份可以对特定资源调用 API 操作。如果您指定的 API 操作无法用于策略中指定的资源，Amazon Bedrock 将返回错误。

   1. **服务角色** – 允许 Amazon Bedrock 代表您执行操作的角色。在创建或更新流时，您必须指定此角色。您可以创建[自定义AWS Identity and Access Management[服务角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role)](flows-permissions.md)。
**注意**  
如果您计划在创建流时使用 Amazon Bedrock 控制台自动创建角色，则无需手动设置此角色。