

# AWS RAM を使用して S3 on Outposts を共有する
<a name="outposts-sharing-with-ram"></a>

Simple Storage Service (Amazon S3) on Outposts は、AWS Resource Access Manager ([AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html)) を使用して、組織内の複数のアカウント間で S3 容量の共有をサポートしています。。S3 on Outposts 共有を使用すると、他のユーザーが Outpost でバケット、エンドポイント、およびアクセスポイントを作成および管理できるようになります。

このトピックでは、AWS RAM を使用して S3 on Outposts と関連するリソースを、お客様の AWS 組織の別の AWS アカウントと共有する方法をご紹介します。

## 前提条件
<a name="outposts-ram-prereqs"></a>
+ Outpost 所有者アカウントには AWS Organizations で設定された組織が存在します。詳細については、「*AWS Organizations ユーザーガイド*」で「[組織を作成する](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_create.html)」を参照してください。
+ 組織には S3 on Outposts の容量を共有する AWS アカウント が含まれます。詳細については、「*AWS Organizations ユーザーガイド*」の「[AWS アカウント への招待の送信](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_invites.html#orgs_manage_accounts_invite-account)」を参照してください。
+ 共有する以下のオプションのいずれかを選択します。エンドポイントにもアクセスできるように、2 番目のリソース (**サブネット**または **Outposts**) を選択する必要があります。エンドポイントは、S3 on Outposts に格納されたデータにアクセスするためのネットワーク要件です。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/s3-outposts/outposts-sharing-with-ram.html)

## 手順
<a name="outposts-ram-procedure"></a>

1. Outpost を所有する AWS アカウント を使用して AWS マネジメントコンソール にサインインし、[https://console.aws.amazon.com/ram/home](https://console.aws.amazon.com/ram/home) で AWS RAM コンソールを開きます。

1. AWS RAM で AWS Organizations との共有が有効になっていることを確認します。詳細については、「*AWS RAM ユーザーガイド*」の「[AWS Organizations 内のリソース共有を有効化する](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-orgs)」を参照してください。

1. [前提条件](#outposts-ram-prereqs)で、オプション 1 またはオプション 2 を使用してリソース共有を作成します。複数の S3 on Outposts リソースがある場合は、共有するリソースの Amazon リソースネーム (ARN) を選択します。エンドポイントを有効にするには、サブネットまたは Outpost を共有します。

   リソース共有の作成の詳細については、「*AWS RAM ユーザーガイド*」の「[リソース共有を作成する](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create)」を参照してください。

1. リソースを共有した AWS アカウント は、S3 on Outposts を使用できるようになります。[前提条件](#outposts-ram-prereqs)で選択したオプションに応じて、アカウントユーザーに次の情報を提供します。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/s3-outposts/outposts-sharing-with-ram.html)

**注記**  
ユーザーは、AWS RAM コンソール、AWS Command Line Interface (AWS CLI)、AWS SDK、または REST API を使用して、リソースが共有されていることを確認できます。ユーザーは、[get-resource-shares](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ram/get-resource-shares.html) CLI コマンドを使用して、既存のリソース共有を表示できます。

## 使用例
<a name="outposts-ram-examples"></a>

S3 on Outposts リソースを別のアカウントと共有した後、そのアカウントは Outpost のバケットとオブジェクトを管理できます。**[Subnets]** (サブネット) リソース共有した場合、そのアカウントは、作成したエンドポイントを使用できます。次の例では、ユーザーが AWS CLI を使用し、これらのリソースを共有した後、Outpost とやり取るする方法についてご紹介します。

**Example : バケットの作成**  
次の例では、Outpost `op-01ac5d28a6a232904` で *amzn-s3-demo-bucket1* という名前のバケットを作成します。このコマンドを使用する前に、それぞれの `user input placeholder` をユースケースに適した値に置き換えてください。  

```
aws s3control create-bucket --bucket amzn-s3-demo-bucket1 --outpost-id op-01ac5d28a6a232904
```
このコマンドの詳細については、「*AWS CLI リファレンス*」の「[create-bucket](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3control/create-bucket.html)」を参照してください。

**Example : アクセスポイントの作成**  
次の例では、次の表に示すパラメータ例を使用して、Outpost 上にアクセスポイントを作成します。このコマンドを使用する前に、これらの `user input placeholder` 値と AWS リージョンコードをユースケースに適した値に置き換えてください。  


| **パラメータ** | **値** | 
| --- | --- | 
| アカウント ID | 111122223333 | 
| アクセスポイント名 | example-outpost-access-point | 
| Outpost ID | op-01ac5d28a6a232904 | 
| Outpost バケット名 | amzn-s3-demo-bucket1 | 
| VPC ID | vpc-1a2b3c4d5e6f7g8h9 | 
アカウント ID パラメータは、AWS アカウントバケット所有者 (共有ユーザー) の ID である必要があります。

```
aws s3control create-access-point --account-id 111122223333 --name example-outpost-access-point \
--bucket arn:aws:s3-outposts:us-east-1:111122223333:outpost/op-01ac5d28a6a232904/bucket/amzn-s3-demo-bucket1 \
--vpc-configuration VpcId=vpc-1a2b3c4d5e6f7g8h9
```
このコマンドの使用に関する詳細については、「*AWS CLI リファレンス*」の「[create-access-point](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3control/create-access-point.html)」を参照してください。

**Example : オブジェクトのアップロード**  
次の例では、ユーザーのローカルファイルシステムから、AWS アカウント *`111122223333`* が所有しているアクセスポイント *`example-outpost-access-point`* on the Outpost*`op-01ac5d28a6a232904`* を経由し、*`images/my_image.jpg`* という名前のオブジェクトへ、ファイル *`my_image.jpg`* をアップロードします。このコマンドを使用する前に、これらの `user input placeholder` 値と AWS リージョンコードをユースケースに適した値に置き換えてください。  

```
aws s3api put-object --bucket arn:aws:s3-outposts:us-east-1:111122223333:outpost/op-01ac5d28a6a232904/accesspoint/example-outpost-access-point \
--body my_image.jpg --key images/my_image.jpg
```
このコマンドの詳細については、「*AWS CLI リファレンス*」の「[put-object](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/put-object.html)」を参照してください。  
このオペレーションの結果、[Resource not found] (リソースが見つからない) エラーまたは応答がない場合、VPC に共有エンドポイントがない可能性があります。  
共有エンドポイントがあるかどうかを確認するには、[list-shared-endpoints](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3outposts/list-shared-endpoints.html) AWS CLI コマンドを使用します。共有エンドポイントがない場合は、Outpost の所有者と連携して作成します。詳細については、「*Amazon Simple Storage Service API リファレンス*」の「[ListSharedEndpoints](https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3outposts_ListSharedEndpoints.html)」を参照してください。

**Example : エンドポイントの作成**  
次の例では、共有の Outposts にエンドポイントを作成します。このコマンドを使用する前に、Outpost ID、サブネット ID、およびセキュリティグループ ID の `user input placeholder` 値をユースケースに適した値に置き換えます。  
ユーザーがこの操作を実行できるのは、リソース共有に **Outposts** リソースが含まれている場合に限ります。

```
aws s3outposts create-endpoint --outposts-id op-01ac5d28a6a232904 --subnet-id XXXXXX --security-group-id XXXXXXX
```
このコマンドの詳細については、「*AWS CLI リファレンス*」の「[create-endpoint](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3outposts/create-endpoint.html)」を参照してください。