

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

# VPC を使用してバッチ推論ジョブを保護する
<a name="batch-vpc"></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 を設定する](#batch-vpc-setup)
+ [VPC アクセス許可をバッチ推論ロールにアタッチする](#batch-vpc-role)
+ [バッチ推論ジョブを送信する際に VPC 設定を追加する](#batch-vpc-config)

## バッチ推論中にデータを保護するために VPC を設定する
<a name="batch-vpc-setup"></a>

VPC をセットアップするには、「[VPC をセットアップする](usingVPC.md#create-vpc)」の手順に従います。S3 の VPC エンドポイントを設定し、リソースベースの IAM ポリシーを使用してバッチ推論データを含む S3 バケットへのアクセスを制限することで、VPC をさらに保護するには、「[(例) VPC を使用して Amazon S3 データへのデータアクセスを制限する](vpc-s3.md)」の手順に従います。

## VPC アクセス許可をバッチ推論ロールにアタッチする
<a name="batch-vpc-role"></a>

VPC のセットアップが完了したら、次のアクセス許可を[バッチ推論サービスロール](batch-iam-sr.md)にアタッチして、VPC へのアクセスを許可します。このポリシーを変更して、ジョブに必要な VPC リソースのみへのアクセスを許可します。*subnet-ids* と *security-group-id* を VPC からの値で置き換えます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeVpcs",
                "ec2:DescribeDhcpOptions",
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "2",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterface"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:123456789012:network-interface/*",
                "arn:aws:ec2:us-east-1:123456789012:subnet/${{subnet-id}}",
                "arn:aws:ec2:us-east-1:123456789012:security-group/${{security-group-id}}"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/BedrockManaged": [
                        "true"
                    ]
                },
                "ArnEquals": {
                    "aws:RequestTag/BedrockModelInvocationJobArn": [
                        "arn:aws:bedrock:us-east-1:123456789012:model-invocation-job/*"
                    ]
                }
            }
        },
        {
            "Sid": "3",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterfacePermission",
                "ec2:DeleteNetworkInterface",
                "ec2:DeleteNetworkInterfacePermission"
            ],
            "Resource": [
                "*"
            ],
            "Condition": {
                "StringEquals": {
                    "ec2:Subnet": [
                        "arn:aws:ec2:us-east-1:123456789012:subnet/${{subnet-id}}"
                    ]
                },
                "ArnEquals": {
                    "ec2:ResourceTag/BedrockModelInvocationJobArn": [
                        "arn:aws:bedrock:us-east-1:123456789012:model-invocation-job/*"
                    ]
                }
            }
        },
        {
            "Sid": "4",
            "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",
                        "BedrockModelInvocationJobArn"
                    ]
                }
            }
        }
    ]
}
```

------

## バッチ推論ジョブを送信する際に VPC 設定を追加する
<a name="batch-vpc-config"></a>

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

**注記**  
現在、バッチ推論ジョブを作成する際は、API を介してのみ 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` および `BedrockModelInvocationJobArn` タグを付けます。

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

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

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

```
"vpcConfig": { 
    "securityGroupIds": [
        "sg-0123456789abcdef0"
    ],
    "subnets": [
        "subnet-0123456789abcdef0",
        "subnet-0123456789abcdef1",
        "subnet-0123456789abcdef2"
    ]
}
```