

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# (オプション) VPC を使用してカスタムモデルのインポートジョブを保護する
<a name="vpc-custom-model-import"></a>

カスタムモデルのインポートジョブを実行すると、ジョブは Amazon S3 バケットにアクセスして入力データをダウンロードし、ジョブメトリクスをアップロードします。データへのアクセスを制御するには、[Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) で仮想プライベートクラウド (VPC) を使用することをお勧めします。データをインターネット経由で利用できないように VPC を設定し、代わりに [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html) で VPC インターフェイスエンドポイントを作成してデータへのプライベート接続を確立することで、データをさらに保護することができます。Amazon VPC と Amazon Bedrock AWS PrivateLink の統合方法の詳細については、「」を参照してください[Amazon VPC と AWS PrivateLink を使用してデータを保護する](usingVPC.md)。

カスタムモデルのインポートに VPC を設定して使用するには、次の手順を実行します。

**Topics**
+ [VPC をセットアップする](#create-vpc-cmi)
+ [Amazon S3 VPC エンドポイントを作成する](#train-vpc-s3-cmi)
+ [(オプション) IAM ポリシーを使用して S3 ファイルへのアクセスを制限する](#train-vpc-policy-cmi)
+ [カスタムモデルのインポートロールに VPC アクセス許可をアタッチします。](#vpc-data-access-role-cmi)
+ [モデルのインポートジョブを送信するときに VPC 設定を追加する](#vpc-config-cmi)

## VPC をセットアップする
<a name="create-vpc-cmi"></a>

「[Get started with Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-getting-started.html)」および「[VPC の作成](https://docs.aws.amazon.com/vpc/latest/userguide/create-vpc.html)」のガイダンスに従って、モデルのインポートデータに「[デフォルト VPC](https://docs.aws.amazon.com/vpc/latest/userguide/default-vpc.html)」を使用するか、新しい VPC を作成できます。

VPC を作成する際、標準 Amazon S3 URL (例: `http://s3-aws-region.amazonaws.com/{{model-bucket}}`) が解決されるように、エンドポイントルートテーブルにデフォルトの DNS 設定を使うことをお勧めします。

## Amazon S3 VPC エンドポイントを作成する
<a name="train-vpc-s3-cmi"></a>

インターネットアクセスなしで VPC を設定する場合は、モデルのインポートジョブが、トレーニングデータと検証データを保存し、モデルアーティファクトを保存する S3 バケットにアクセスできるように、[Amazon S3 VPC エンドポイント](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html)を作成する必要があります。

「[Create a gateway endpoint for Amazon S3](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html#create-gateway-endpoint-s3)」の手順に従って、S3 VPC エンドポイントを作成します。

**注記**  
VPC にデフォルトの DNS 設定を使用しない場合は、エンドポイントルートテーブルを設定することで、トレーニングジョブのデータの場所の URL が解決されるようにする必要があります。VPC エンドポイントルートテーブルについては、 「[Routing for Gateway endpoints](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpce-gateway.html#vpc-endpoints-routing)」を参照してください。

## (オプション) IAM ポリシーを使用して S3 ファイルへのアクセスを制限する
<a name="train-vpc-policy-cmi"></a>

[リソースベースのポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_identity-vs-resource.html)を使用して、S3 ファイルへのアクセスをより厳密に制御できます。次のタイプのリソースベースのポリシーを使用できます。
+ **エンドポイントポリシー** – エンドポイントポリシーは、VPC エンドポイント経由のアクセスを制限します。デフォルトのエンドポイントポリシーでは、VPC のすべてのユーザーまたはサービスに対して Amazon S3 へのフルアクセスが許可されています。エンドポイントの作成中または作成後に、オプションでリソースベースのポリシーをエンドポイントにアタッチして、エンドポイントが特定のバケットにアクセスできるようにする、または特定の IAM ロールのみがエンドポイントにアクセスできるようにするなど、制限を追加できます。例については、「[Edit the VPC endpoint policy](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html#edit-vpc-endpoint-policy-s3)」を参照してください。

  以下は、モデルの重みを含むバケットへのアクセスのみを許可するように VPC エンドポイントにアタッチできるポリシーの例です。

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

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "RestrictAccessToModelWeightsBucket",
              "Effect": "Allow",
              "Principal": "*",
              "Action": [
                  "s3:GetObject",
                  "s3:ListBucket"
              ],
              "Resource": [
                  "arn:aws:s3:::{{model-weights-bucket}}",
                  "arn:aws:s3:::{{model-weights-bucket/*}}"
              ]
          }
      ]
  }
  ```

------

## カスタムモデルのインポートロールに VPC アクセス許可をアタッチします。
<a name="vpc-data-access-role-cmi"></a>

VPC とエンドポイントの設定が完了したら、[モデルインポート IAM ロール](model-import-iam-role.md)に次のアクセス許可をアタッチする必要があります。このポリシーを変更して、ジョブに必要な VPC リソースのみへのアクセスを許可します。{{subnet-ids}} と {{security-group-id}} を VPC からの値で置き換えます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeVpcs",
                "ec2:DescribeDhcpOptions",
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterface"
            ],
            "Resource": [
                "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:network-interface/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/BedrockManaged": [
                        "true"
                    ]
                },
                "ArnEquals": {
                    "aws:RequestTag/BedrockModelImportJobArn": [
                        "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-import-job/*"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterface"
            ],
            "Resource": [
                "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:subnet/{{subnet-id}}",
                "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:subnet/{{subnet-id2}}",
                "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:security-group/{{security-group-id}}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterfacePermission",
                "ec2:DeleteNetworkInterface",
                "ec2:DeleteNetworkInterfacePermission"
            ],
            "Resource": "*",
            "Condition": {
                "ArnEquals": {
                    "ec2:Subnet": [
                        "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:subnet/{{subnet-id}}",
                        "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:subnet/{{subnet-id2}}"
                    ],
                    "ec2:ResourceTag/BedrockModelImportJobArn": [
                        "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-import-job/*"
                    ]
                },
                "StringEquals": {
                    "ec2:ResourceTag/BedrockManaged": "true"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateTags"
            ],
            "Resource": "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:network-interface/*",
            "Condition": {
                "StringEquals": {
                    "ec2:CreateAction": [
                        "CreateNetworkInterface"
                    ]
                },
                "ForAllValues:StringEquals": {
                    "aws:TagKeys": [
                        "BedrockManaged",
                        "BedrockModelImportJobArn"
                    ]
                }
            }
        }
    ]
}
```

------

## モデルのインポートジョブを送信するときに VPC 設定を追加する
<a name="vpc-config-cmi"></a>

これまでのセクションの手順に従って VPC および必要なロールとアクセス許可を設定し終わったら、この VPC を使用するモデルのインポートジョブを作成することができます。

ジョブの VPC サブネットとセキュリティグループを指定すると、Amazon Bedrock はサブネットの 1 つのセキュリティグループに関連付けられた *Elastic Network Interface* (ENI) を作成します。ENI により、Amazon Bedrock ジョブは VPC 内のリソースに接続できます。ENI については、「*Amazon VPC ユーザーガイド*」の「[Elastic Network Interfaces](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ElasticNetworkInterfaces.html)」を参照してください。Amazon Bedrock は、作成した ENI に `BedrockManaged` および `BedrockModelImportJobArn` タグを付けます。

アベイラビリティーゾーンごとに少なくとも 1 つのサブネットを指定することをお勧めします。

セキュリティグループを使用すると、VPC リソースへの Amazon Bedrock のアクセスを制御するためのルールを設定できます。

使用する VPC の設定は、コンソールまたは API 経由のいずれでも行うことができます。任意の方法のタブを選択し、その手順に従います。

------
#### [ Console ]

Amazon Bedrock コンソールでは、モデルのインポートジョブを作成するときに、オプションの **[VPC の設定]** セクションで VPC サブネットとセキュリティグループを指定します。モデルのインポートジョブの設定に関する詳細は、「[Submit a model import job](model-customization-import-model-job.md)」を参照してください。

------
#### [ API ]

[CreateModelCustomizationJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateModelCustomizationJob.html) リクエストを送信する際、次の例のように、使用する VPC サブネットとセキュリティグループを指定するために `VpcConfig` をリクエストパラメータとして含めることができます。

```
"VpcConfig": { 
"SecurityGroupIds": [
    "{{sg-0123456789abcdef0}}"
    ],
    "Subnets": [
          "{{subnet-0123456789abcdef0}}",
          "{{subnet-0123456789abcdef1}}",
          "{{subnet-0123456789abcdef2}}"
     ]
 }
```

------