为您的 I Amazon RAM mage Builder 资源创建资源共享 - EC2Image Builder
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

为您的 I Amazon RAM mage Builder 资源创建资源共享

要共享 Image Builder 组件、图像或配方,必须将其添加到 Amazon Resource Access Manager 资源共享中。资源共享指定要共享的资源以及与您共享这些资源的使用者。

可以提供以下选项用于共享资源。

选项 1:创建RAM资源共享

创建RAM资源共享时,只需一步即可共享您拥有的组件、图像或配方。使用以下方法之一创建资源共享:

选项 2:应用资源策略并提升到现有的资源共享

共享资源的第二个选项包括两个步骤,两个步骤都在中 Amazon CLI 运行命令。第一步使用中的 Image Builder 命令 Amazon CLI 将基于资源的策略应用于共享资源。第二步使用中的promote-resource-share-created-from-policy Amazon RAM 命令将RAM资源提升为资源共享, Amazon CLI 以确保与您共享资源的所有委托人都能看到该资源。

  1. 应用资源策略

    要成功应用资源策略,您必须确保与之共享的账户有权访问任何底层资源。

    选择与适用命令的资源类型相匹配的选项卡。

    Image

    您可以将资源策略应用于映像,以允许其他用户在其配方中作为基础映像使用该映像。

    运行中的 put-image-policy Image Builder 命令 Amazon CLI,确定要与之共享映像的 Amazon 委托人。

    aws imagebuilder put-image-policy --image-arn arn:aws:imagebuilder:us-west-2:123456789012:image/my-example-image/2019.12.03/1 --policy '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "123456789012" ] }, "Action": ["imagebuilder:GetImage", "imagebuilder:ListImages"], "Resource": [ "arn:aws:imagebuilder:us-west-2:123456789012:image/my-example-image/2019.12.03/1" ] } ] }'
    Component

    您可以将资源策略应用于构建或测试组件,以启用跨账户共享。此命令为其他账户授予权限,以便在其配方中使用您的组件。要成功应用该资源策略,您必须确保与您共享资源的账户有权访问共享的组件引用的所有资源,例如,在私有存储库上托管的文件。

    运行中的 put-component-policy Image Builder 命令 Amazon CLI,确定要与之共享组件的 Amazon 委托人。

    aws imagebuilder put-component-policy --component-arn arn:aws:imagebuilder:us-west-2:123456789012:component/my-example-component/2019.12.03/1 --policy '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "123456789012" ] }, "Action": [ "imagebuilder:GetComponent", "imagebuilder:ListComponents" ], "Resource": [ "arn:aws:imagebuilder:us-west-2:123456789012:component/my-example-component/2019.12.03/1" ] } ] }'
    Image recipe

    您可以将资源策略应用于映像配方,以便启用跨账户共享。此命令为其他账户授予权限,以使用您的配方在其账户中创建映像。要成功应用资源策略,必须确保与之共享的账户有权限访问配方引用的任何资源,如基础映像或选定组件。

    运行中的 put-image-recipe-policy Image Builder 命令 Amazon CLI,确定要与之共享映像的 Amazon 委托人。

    aws imagebuilder put-image-recipe-policy --image-recipe-arn arn:aws:imagebuilder:us-west-2:123456789012:image-recipe/my-example-image-recipe/2019.12.03 --policy '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "123456789012" ] }, "Action": [ "imagebuilder:GetImageRecipe", "imagebuilder:ListImageRecipes" ], "Resource": [ "arn:aws:imagebuilder:us-west-2:123456789012:image-recipe/my-example-image-recipe/2019.12.03" ] } ] }'
    Container recipe

    您可以将资源策略应用于容器配方,以便启用跨账户共享。此命令为其他账户授予权限,以使用您的配方在其账户中创建映像。要成功应用资源策略,必须确保与之共享的账户有权限访问配方引用的任何资源,如基础映像或选定组件。

    运行中的 put-container-recipe-policy Image Builder 命令 Amazon CLI,确定要与之共享映像的 Amazon 委托人。

    aws imagebuilder put-container-recipe-policy --container-recipe-arn arn:aws:imagebuilder:us-west-2:123456789012:container-recipe/my-example-container-recipe/2021.12.03 --policy '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "123456789012" ] }, "Action": [ "imagebuilder:GetContainerRecipe", "imagebuilder:ListContainerRecipes" ], "Resource": [ "arn:aws:imagebuilder:us-west-2:123456789012:container-recipe/my-example-container-recipe/2021.12.03" ] } ] }'
    注意

    为了设置正确的策略来共享和取消共享某个资源,资源所有者必须具有 imagebuilder:put* 权限。

  2. 晋升为RAM资源共享

    要确保与您共享资源的所有委托人都能看到该资源,请运行中的promote-resource-share-created-from-policy Amazon RAM Amazon CLI命令。