

# Policy Engine を使用してゲートウェイを作成する
<a name="create-gateway-with-policy"></a>

このセクションでは、ポリシーの適用に関連付けられたポリシーエンジンを使用してゲートウェイを作成する例を示します。

**注記**  
\* 認可設定の値は、インバウンド認可をセットアップしたときの値です。\* 明示的なゲートウェイサービスロール ARN の指定を伴うオプションを選択する場合は、設定した既存のロールを必ず指定してください。詳細については、「Amazon Bedrock AgentCore Gateway サービスロールのアクセス許可」を参照してください。

次のいずれかの方法を選択します。

**Example**  

1. ターミナルで次のコードを実行して、 AWS CLI を使用してポリシーエンジンでゲートウェイを作成します。

   ```
   aws bedrock-agentcore-control create-gateway \
     --name my-gateway \
     --role-arn arn:aws:iam::123456789012:role/my-gateway-service-role \
     --protocol-type MCP \
     --authorizer-type CUSTOM_JWT \
     --authorizer-configuration '{
       "customJWTAuthorizer": {
         "discoveryUrl": "https://cognito-idp.us-west-2.amazonaws.com/some-user-pool/.well-known/openid-configuration",
         "allowedClients": ["clientId"]
       }
     }' \
     --policy-engine-configuration '{
       "mode": "ENFORCE",
       "arn": "arn:aws:bedrock-agentcore:us-west-2:123456789012:policy-engine/my_policy_engine"
     }'
   ```

   レスポンスの gatewayUrl は、ゲートウェイを呼び出すときに使用するエンドポイントです。

1. 次の Python コードは、Python SDK (Boto3) AWS を使用してポリシーエンジンでゲートウェイを作成する方法を示しています。

   ```
   import boto3
   
   gateway_client = boto3.client('bedrock-agentcore-control')
   
   response = gateway_client.create_gateway(
       name='my-gateway',
       protocolType='MCP',
       authorizerType='CUSTOM_JWT',
       authorizerConfiguration={
           'customJWTAuthorizer': {
               'allowedClients': ['clientId'],
               'discoveryUrl': 'https://cognito-idp.us-west-2.amazonaws.com/some-user-pool/.well-known/openid-configuration'
           }
       },
       roleArn='arn:aws:iam::123456789012:role/my-gateway-service-role',
       policyEngineConfiguration={
           'mode': 'ENFORCE',
           'arn': 'arn:aws:bedrock-agentcore:us-west-2:123456789012:policy-engine/my_policy_engine'
       }
   )
   print(f"GATEWAY ARN: {response['gatewayArn']}")
   print(f"GATEWAY URL: {response['gatewayUrl']}")
   ```

   レスポンスの gatewayUrl は、ゲートウェイを呼び出すときに使用するエンドポイントです。