View a markdown version of this page

共享 HealthOmics 工作流程 - AWS HealthOmics

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

共享 HealthOmics 工作流程

作为私有工作流程的所有者,您可以与同一区域 AWS 账户 的共享工作流程。要与多个工作流程共享一个工作流程 AWS 账户,您需要创建同一个工作流程的多个共享。

作为所有者,您可以通过删除共享来撤消对共享工作流程的访问权限。

注意

HealthOmics 当工作流程在订阅者账户中运行时,自动允许共享工作流程访问 Amazon ECR 存储库。您无需为共享工作流程授予额外的存储库访问权限。

当您共享工作流程时,订阅者可以使用任何工作流程版本。如果您需要对共享工作流程进行版本级访问控制,我们建议您创建单独的工作流程,而不是使用工作流程版本。

信任工作流程所有者

在接受共享之前,请确保您信任工作流程所有者。当您运行共享工作流程时,所有者提供的工作流程定义和容器映像将在您的中运行 AWS 账户。它们使用您为运行指定的 IAM 服务角色的权限运行。你看不到工作流程的内容及其容器镜像。运行共享工作流程等同于在您的账户中运行第三方代码。提供最低权限服务角色,并使用会话策略进一步限制运行权限。有关更多信息,请参阅 使用会话策略缩小权限范围。

订阅共享工作流程

要订阅共享工作流程,请按照以下总体步骤接受和使用该工作流程:

  1. 使用控制台或 API 接受共享。将您的当前区域设置为与共享请求相同的区域。

    • 要在控制台中查找共享请求,请导航至 “所有资源共享” 页面,然后选择 “与我共享” 选项卡。

  2. 使用控制台或 API 为共享工作流程创建运行。

    • 要在控制台中找到工作流程详细信息页面,请导航至与我共享(参见步骤 1),然后选择共享工作流程的资源链接。

  3. 您为工作流程提供自己的输入数据。

  4. 共享工作流程在您的中运行 AWS 账户。

作为共享工作流程的订阅者,系统会阻止您执行以下工作流程操作:

  • 导出共享工作流程

  • Re-running 共享工作流程

    • 您可以为共享工作流程创建新的运行。

  • Re-sharing 工作流程。

  • 为工作流程分配标签。

  • 删除工作流程。

    • 当您不再需要工作流时,可以删除工作流共享。

有关资源共享Cross-account 中的资源共享 AWS HealthOmics的更多信息,请参见。

监控工作流共享的状态

HealthOmics 每当工作流共享 EventBridge 的状态发生变化时,都会向发送一个事件。如果您想接收有关特定状态更改的通知,请设置一条 EventBridge 规则来监控工作流共享状态更改事件。例如:

  • 您希望在每次收到工作流程共享请求时以及每次用户撤消工作流程共享时收到通知。

  • 启动工作流程共享请求后,您希望在用户接受或拒绝请求时收到通知。

有关使用事件的详细信息,请参阅EventBridge 与一起使用 AWS HealthOmics。

使用控制台共享私有工作流程

在控制台中,您可以与工作流程 AWS 账户 位于同一区域的共享私有工作流程。

共享私有工作流程
  1. 打开 HealthOmics 控制台。

  2. 如果需要,打开左侧导航窗格 (≡)。选择 “私有工作流程” 。

  3. 从 “私有工作流程” 页面的 “工作流” 表格中,选择要共享的工作流程,然后选择 “共享” 。

  4. 在共享工作流程页面的共享详细信息面板中,输入共享的描述性名称,然后输入订阅 AWS 账户 者的名称。

  5. 选择共享资源。控制台在 “所有资源共享” 页面中显示资源共享。

股票的初始状态尚待确定。订阅者接受共享后,状态变为活动状态。

使用 CLI 共享私有工作流程

使用创建共享 API 操作来创建工作流程共享。主要订阅 AWS 账户 者是将获得工作流程访问权限的用户。

aws omics create-share \ --resource-arn "arn:aws:omics:us-west-2:555555555555:workflow/123456" \ --principal-subscriber "123456789012" \ --name "my_Share-123"

如果创建成功,您将收到包含共享 ID 和状态的响应。

{ "shareId": "495c21bedc889d07d0ab69d710a6841e-dd75ab7a1a9c384fa848b5bd8e5a7e0a", "name": "my_Share-123", "status": "PENDING" }

在订阅者使用 accept-share API 操作接受共享之前,共享将保持待处理状态。

Cross-account 中的资源共享 AWS HealthOmics有关其他 API 使用示例,请参见。

使用控制台接受共享工作流程

您可以使用控制台接受所提供的工作流程共享。确保将控制台设置为与工作流程相同的区域。

  1. 打开 HealthOmics 控制台。

  2. 如果需要,打开左侧导航窗格 (≡)。选择 “所有资源共享”,然后选择 “与我共享” 选项卡。

  3. 从 “与我共享的资源” 表格中,选择工作流程共享,然后选择 “接受” 。

接受工作流后,选择共享工作流的资源链接以查看其详细信息。

使用控制台运行共享工作流程

接受工作流共享后,可以在工作流程上开始运行。

  1. 打开 HealthOmics 控制台。

  2. 如果需要,打开左侧导航窗格 (≡)。选择 “所有资源共享”,然后选择 “与我共享” 选项卡。

  3. 从 “与我共享的资源” 表中,选择共享工作流程的资源链接。

  4. 在工作流程详细信息页面中,选择创建运行。

    控制台打开 “创建运行” 页面,其中预先填充了工作流类型(共享)和工作流 ID。

  5. 配置 “创建运行” 表单中的其余字段。有关更多信息,请参阅 使用控制台开始运行。

使用 API 运行共享工作流程

使用 get-workflow 检索共享工作流程的 ARN。

aws omics get-workflow --id 1234567 \ --workflow-owner-id 55555555555

运行工作流程时,请提供工作流所有者的 AWS 账户 ID 和共享工作流程的 ARN。

aws omics start-run --id 1234567 --workflow-owner-id 55555555555 \ --role-arn arn:aws:iam::1234567892012:role/service-role/OmicsWorkflow-20221004T164236 \ --name ArchiveTest --retention-mode REMOVE