

# クラスターのリソースベースのポリシーの追加と編集
<a name="rbp-attach-policy"></a>

## AWS マネジメントコンソール
<a name="rbp-attach-console"></a>

**リソースベースのポリシーを既存のクラスターに追加するには**

1. AWS マネジメントコンソールにサインインして Aurora DSQL コンソール ([https://console.aws.amazon.com/dsql/](https://console.aws.amazon.com/dsql)) を開きます。

1. [クラスターリスト] からクラスターを選択して、クラスターの詳細ページを開きます。

1. **[アクセス許可]** タブを選択します。

1. **[リソースベースのポリシー]** セクションで、**[ポリシーを追加]** を選択します。

1. JSON エディタで、ポリシードキュメントを入力します。**[ステートメントを編集]** または **[新しいステートメントを追加]** を使用してポリシーを作成できます。

1. [**Add policy**] を選択します。

**既存のリソースベースのポリシーを編集するには**

1. AWS マネジメントコンソールにサインインして Aurora DSQL コンソール ([https://console.aws.amazon.com/dsql/](https://console.aws.amazon.com/dsql)) を開きます。

1. [クラスターリスト] からクラスターを選択して、クラスターの詳細ページを開きます。

1. **[アクセス許可]** タブを選択します。

1. [**リソースベースのポリシー**] セクションで、[**編集**]を選択します。

1. JSON エディタでポリシードキュメントを変更します。**[ステートメントを編集]** または **[新しいステートメントを追加]** を使用して、ポリシーを更新できます。

1. **[Save changes]** (変更の保存) をクリックします。

## AWS CLI
<a name="rbp-attach-cli"></a>

`put-cluster-policy` コマンドを使用して、新しいポリシーをアタッチするか、クラスターの既存のポリシーを更新します。

```
aws dsql put-cluster-policy --identifier your_cluster_id --policy '{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Deny",
        "Principal": {"AWS": "*"},
        "Resource": "*",
        "Action": ["dsql:DbConnect", "dsql:DbConnectAdmin"],
        "Condition": { 
            "Null": { "aws:SourceVpc": "true" } 
        }
    }]
}'
```

## AWS SDK
<a name="rbp-attach-sdk"></a>

------
#### [ Python ]

```
import boto3
import json

client = boto3.client('dsql')

policy = {
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Deny",
        "Principal": {"AWS": "*"},
        "Resource": "*",
        "Action": ["dsql:DbConnect", "dsql:DbConnectAdmin"],
        "Condition": {
            "Null": {"aws:SourceVpc": "true"}
        }
    }]
}

response = client.put_cluster_policy(
    identifier='your_cluster_id',
    policy=json.dumps(policy)
)
```

------
#### [ Java ]

```
import software.amazon.awssdk.services.dsql.DsqlClient;
import software.amazon.awssdk.services.dsql.model.PutClusterPolicyRequest;

DsqlClient client = DsqlClient.create();

String policy = """
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [{
    "Effect": "Deny",
    "Principal": {"AWS": "*"},
    "Resource": "*",
    "Action": ["dsql:DbConnect", "dsql:DbConnectAdmin"],
    "Condition": {
      "Null": {"aws:SourceVpc": "true"}
    }
  }]
}
""";

PutClusterPolicyRequest request = PutClusterPolicyRequest.builder()
    .identifier("your_cluster_id")
    .policy(policy)
    .build();

client.putClusterPolicy(request);
```

------