

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

# 为您的 I Amazon RAM mage Builder 资源创建资源共享
<a name="manage-shared-resources-share"></a>

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

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

## 选项 1：创建 RAM 资源共享
<a name="share-opt1-create-resource-share"></a>

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

**控制台**  
要使用 Amazon RAM 控制台创建资源共[享，请参阅*Amazon RAM 用户指南*中的共享您拥有的 Amazon 资源](https://docs.amazonaws.cn/ram/latest/userguide/working-with-sharing.html#working-with-sharing-create)。
+ 

**Amazon CLI**  
要使用 Amazon RAM 命令行界面创建资源共享，请运行中的**[create-resource-share](https://docs.amazonaws.cn/cli/latest/reference/ram/create-resource-share.html)**命令 Amazon CLI。

## 选项 2：应用资源策略并提升到现有的资源共享
<a name="share-opt2-promote-resource-share"></a>

共享资源的第二个选项包括两个步骤，两个步骤都在中 Amazon CLI 运行命令。第一步使用中的 Image Builder 命令 Amazon CLI 将基于资源的策略应用于共享资源。第二步使用中的**[promote-resource-share-created-from-policy](https://docs.amazonaws.cn/cli/latest/reference/ram/promote-resource-share-created-from-policy.html)** Amazon RAM 命令将资源提升为 RAM 资源共享， Amazon CLI 以确保与您共享该资源的所有委托人都能看到该资源。

1. 

**应用资源策略**

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

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

------
#### [ Image ]

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

   运行中的 **[put-image-policy](https://docs.amazonaws.cn/cli/latest/reference//imagebuilder/put-image-policy.html)** 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](https://docs.amazonaws.cn/cli/latest/reference//imagebuilder/put-component-policy.html)** 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](https://docs.amazonaws.cn/cli/latest/reference//imagebuilder/put-image-recipe-policy.html)** 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](https://docs.amazonaws.cn/cli/latest/reference//imagebuilder/put-container-recipe-policy.html)** 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*` 权限。

1. 

**提升为 RAM 资源共享**

   要确保与您共享资源的所有委托人都能看到该资源，请运行中的**[promote-resource-share-created-from-policy](https://docs.amazonaws.cn/cli/latest/reference/ram/promote-resource-share-created-from-policy.html)** Amazon RAM Amazon CLI命令。