

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

# Amazon Keyspaces (Apache Cassandra 向け) のセキュリティ
<a name="security"></a>

でのクラウドセキュリティが最優先事項 AWS です。お客様は AWS 、セキュリティを最も重視する組織の要件を満たすように構築されたデータセンターとネットワークアーキテクチャを活用できます。

セキュリティは、 AWS とお客様の間の責任共有です。[責任共有モデル](https://aws.amazon.com/compliance/shared-responsibility-model/)では、これをクラウド*の*セキュリティおよびクラウド*内*のセキュリティと説明しています。
+ **クラウドのセキュリティ** – AWS は、 で AWS サービスを実行するインフラストラクチャを保護する責任を担います AWS クラウド。 は、お客様が安全に使用できるサービス AWS も提供します。セキュリティの有効性は、[AWS コンプライアンスプログラム](https://aws.amazon.com/compliance/programs/)の一環として、サードパーティーの審査機関によって定期的にテストおよび検証されています。Amazon Keyspaces に適用されるコンプライアンスプログラムについては、「[AWS Services in scope by compliance program」(適用範囲内のコンプライアンスプログラム別サービス)](https://aws.amazon.com/compliance/services-in-scope/)」を参照してください。
+ **クラウドのセキュリティ** – お客様の責任は、使用する AWS サービスによって決まります。また、お客様は、お客様のデータの機密性、組織の要件、および適用可能な法律および規制などの他の要因についても責任を担います。

このドキュメントでは、Amazon Keyspaces を使用する際に責任共有モデルを適用する方法が説明されています。以下のトピックでは、セキュリティおよびコンプライアンス上の目的を達成するように Amazon Keyspaces を設定する方法について説明します。また、Amazon Keyspaces リソースのモニタリングや保護に役立つ他の AWS サービスの使用方法についても説明します。

**Topics**
+ [Amazon Keyspaces におけるデータ保護](data-protection.md)
+ [AWS Identity and Access Management Amazon Keyspaces 用](security-iam.md)
+ [Amazon Keyspaces (Apache Cassandra 向け) のコンプライアンス検証](Keyspaces-compliance.md)
+ [Amazon Keyspaces の耐障害性と災害対策](disaster-recovery-resiliency.md)
+ [Amazon Keyspaces のインフラストラクチャセキュリティ](infrastructure-security.md)
+ [Amazon Keyspaces の設定と脆弱性の分析](configuration-vulnerability.md)
+ [Amazon Keyspaces のセキュリティベストプラクティス](best-practices-security.md)

# Amazon Keyspaces におけるデータ保護
<a name="data-protection"></a>

責任 AWS [共有モデル](https://aws.amazon.com/compliance/shared-responsibility-model/)、Amazon Keyspaces (Apache Cassandra 向け) のデータ保護に適用されます。このモデルで説明されているように、 AWS はすべての を実行するグローバルインフラストラクチャを保護する責任があります AWS クラウド。ユーザーは、このインフラストラクチャでホストされるコンテンツに対する管理を維持する責任があります。また、使用する「 AWS のサービス 」のセキュリティ設定と管理タスクもユーザーの責任となります。データプライバシーの詳細については、[データプライバシーに関するよくある質問](https://aws.amazon.com/compliance/data-privacy-faq/)を参照してください。欧州でのデータ保護の詳細については、*AWS セキュリティブログ*に投稿された [AWS 責任共有モデルおよび GDPR](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/) のブログ記事を参照してください。

データ保護の目的で、認証情報を保護し AWS アカウント 、 AWS IAM アイデンティティセンター または AWS Identity and Access Management (IAM) を使用して個々のユーザーを設定することをお勧めします。この方法により、それぞれのジョブを遂行するために必要な権限のみが各ユーザーに付与されます。また、次の方法でデータを保護することもお勧めします:
+ 各アカウントで多要素認証 (MFA) を使用します。
+ SSL/TLS を使用して AWS リソースと通信します。TLS 1.2 が必須で、TLS 1.3 をお勧めします。
+ で API とユーザーアクティビティのログ記録を設定します AWS CloudTrail。CloudTrail 証跡を使用して AWS アクティビティをキャプチャする方法については、「 *AWS CloudTrail ユーザーガイド*」の[CloudTrail 証跡の使用](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-trails.html)」を参照してください。
+  AWS 暗号化ソリューションと、その中のすべてのデフォルトのセキュリティコントロールを使用します AWS のサービス。
+ Amazon Macie などの高度な管理されたセキュリティサービスを使用します。これらは、Amazon S3 に保存されている機密データの検出と保護を支援します。
+ コマンドラインインターフェイスまたは API AWS を介して にアクセスするときに FIPS 140-3 検証済み暗号化モジュールが必要な場合は、FIPS エンドポイントを使用します。利用可能な FIPS エンドポイントの詳細については、「[連邦情報処理規格 (FIPS) 140-3](https://aws.amazon.com/compliance/fips/)」を参照してください。

お客様の E メールアドレスなどの極秘または機密情報を、タグ、または **[名前]** フィールドなどの自由形式のテキストフィールドに含めないことを強くお勧めします。これは、コンソール、API、または SDK を使用して Amazon Keyspaces AWS CLIまたは他の AWS のサービス を操作する場合も同様です。 AWS SDKs タグ、または名前に使用される自由記述のテキストフィールドに入力したデータは、請求または診断ログに使用される場合があります。外部サーバーに URL を提供する場合、そのサーバーへのリクエストを検証できるように、認証情報を URL に含めないことを強くお勧めします。

**Topics**
+ [Amazon Keyspaces の保管データ暗号化](EncryptionAtRest.md)
+ [Amazon Keyspaces での転送時の暗号化](encryption-in-transit.md)
+ [Amazon Keyspaces におけるインターネットワークトラフィックプライバシー](inter-network-traffic-privacy.md)

# Amazon Keyspaces の保管データ暗号化
<a name="EncryptionAtRest"></a>

Amazon Keyspaces (Apache Cassandra 向け) の*保管データ暗号化*では、[AWS Key Management Service (AWS KMS)](https://aws.amazon.com/kms/) に保存されている暗号化キーを使用して保管中のすべてのデータを暗号化することで、セキュリティを強化します。この機能は、機密データの保護における負担と複雑な作業を減らすのに役立ちます。保管されているデータを暗号化することで、データ保護に関する厳格なコンプライアンスと規制要件を満たしたセキュリティ重視のアプリケーションを構築できます。

 Amazon Keyspaces の保管データ暗号化では、256 ビット高度暗号化基準 (AES-256) を使用してデータを暗号化します。この機能は、ストレージへの不正アクセスからデータを保護するのに役立ちます。

Amazon Keyspaces は、テーブルとストリーム内のデータを透過的に暗号化および復号します。Amazon Keyspaces では、データ暗号化にエンベロープ暗号化とキー階層が使用されます。ルート暗号化キーの保存と管理のために AWS KMS に統合されます。暗号化キー階層の詳細については、「[保管データ暗号化: Amazon Keyspaces での動作](encryption.howitworks.md)」を参照してください。エンベロープ暗号化などの AWS KMS 概念の詳細については、「 *AWS Key Management Service デベロッパーガイド*」の[AWS KMS 「 管理サービスの概念](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html)」を参照してください。

 新しいテーブルを作成するとき、以下のいずれかの *AWS KMS キー (KMS キー)* を選択できます。
+ AWS 所有のキー – これはデフォルトの暗号化タイプです。キーは Amazon Keyspaces により所有されます (追加料金なし)。
+ カスタマーマネージドキー – このキーはアカウントに保存され、ユーザーによって作成、所有、管理されます。カスタマーマネージドキーを完全に制御できます (AWS KMS 料金が適用されます）。

Amazon Keyspaces は、基になるテーブルと同じキーを使用して変更データキャプチャ (CDC) ストリームを自動的に暗号化します。CDC の詳細については、「」を参照してください[Amazon Keyspaces での変更データキャプチャ (CDC) ストリームの使用](cdc.md)。

 AWS 所有のキー とカスタマーマネージドキーはいつでも切り替えることができます。新しいテーブルを作成するときや、コンソールの使用またはプログラムによる CQL ステートメントの使用により、既存のテーブルの KMS キーを変更するときに、カスタマーマネージドポリシーを指定することができます。この方法の詳細は、「[保管データ暗号化: カスタマーマネージドキーを使用して Amazon Keyspaces のテーブルを暗号化する方法](encryption.customermanaged.md)」を参照してください。

 のデフォルトオプションを使用した保管時の暗号化 AWS 所有のキー は、追加料金なしで提供されます。ただし、カスタマーマネージドキーには AWS KMS の料金がかかります。料金の詳細については、「[AWS KMS の料金](https://aws.amazon.com/kms/pricing)」を参照してください。

保管時の Amazon Keyspaces 暗号化は AWS リージョン、 AWS 中国 (北京) および AWS 中国 (寧夏) リージョンを含むすべての で使用できます。詳細については、「[保管データ暗号化: Amazon Keyspaces での動作](encryption.howitworks.md)」を参照してください。

**Topics**
+ [保管データ暗号化: Amazon Keyspaces での動作](encryption.howitworks.md)
+ [保管データ暗号化: カスタマーマネージドキーを使用して Amazon Keyspaces のテーブルを暗号化する方法](encryption.customermanaged.md)

# 保管データ暗号化: Amazon Keyspaces での動作
<a name="encryption.howitworks"></a>

Amazon Keyspaces (Apache Cassandra 向け) の*保管データ暗号化*では、256 ビット高度暗号化基準 (AES-256) を使用してデータを暗号化します。この機能は、ストレージへの不正アクセスからデータを保護するのに役立ちます。デフォルトでは、Amazon Keyspaces テーブルのすべての顧客データが保管時に暗号化され、サーバー側の暗号化が透過的であるため、アプリケーションに変更を加える必要はありません。

保管時の暗号化は、テーブルの暗号化に使用される暗号化キーを管理するために AWS Key Management Service （AWS KMS) と統合されます。新規テーブルの作成時や、既存テーブルの更新時に、以下の *AWS KMS キー*オプションのいずれかを選択できます。
+ AWS 所有のキー – これはデフォルトの暗号化タイプです。キーは Amazon Keyspaces により所有されます (追加料金なし)。
+ カスタマーマネージドキー – このキーはアカウントに保存され、ユーザーによって作成、所有、管理されます。カスタマーマネージドキーを完全に制御できます (AWS KMS 料金が適用されます）。

**AWS KMS キー (KMS キー）**  
保管時の暗号化は、すべての Amazon Keyspaces データを AWS KMS キーで保護します。Amazon Keyspaces ではデフォルトで [AWS 所有のキー](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk) が使用されます。これは、Amazon Keyspaces サービスアカウントで作成して管理するマルチテナント暗号化キーです。  
ただし、Amazon Keyspaces テーブルの暗号化には AWS アカウントの[カスタマーマネージドキー](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)を使用できます。キースペース内のテーブルごとに異なる KMS キーを選択することができます。テーブルに対して選択した KMS キーは、すべてのメタデータと復元可能なバックアップの暗号化にも使用されます。  
テーブルを作成または更新するときは、テーブル用の KMS キーを選択します。テーブルの KMS キーは、Amazon Keyspaces コンソールまたは [ALTER TABLE](cql.ddl.keyspace.md#cql.ddl.keyspace.alter) ステートメントを使用していつでも変更できます。KMS キーの切り替えプロセスはシームレスであり、ダウンタイムが必要になることもなく、サービスの低下を招くこともありません。

**キー階層**  
Amazon Keyspaces では、キー階層を使用してデータを暗号化します。このキー階層において KMS キーはルートキーです。これは Amazon Keyspaces テーブル暗号化キーの暗号化と復号化に使用されます。テーブル暗号化キーは、読み取り操作と書き込み操作の実行時にデータの暗号化と復号化のために Amazon Keyspaces で内部的に使用される暗号化キーを暗号化するために使用されます。  
暗号化キー階層を使用すると、データを再暗号化する必要もなく、アプリケーションや継続的なデータ操作に影響を与えることもなく、KMS キーに変更を加えることができます。  

![\[保管データ暗号化に使用されるルートキー、テーブル暗号化キー、およびデータ暗号化キーを示すキー階層。\]](http://docs.aws.amazon.com/ja_jp/keyspaces/latest/devguide/images/keyspaces_encryption.png)


**テーブルキー**  
Amazon Keyspaces のテーブルキーは、キー暗号化用のキーとして使用されます。Amazon Keyspaces では、テーブルキーを使用して、テーブルやログファイルや復元可能なバックアップに保存されたデータを暗号化するために使用される内部データ暗号化キーを保護します。Amazon Keyspaces により、テーブル内の基本構造ごとに一意のデータ暗号化キーが生成されます。ただし、複数のテーブル行が同じデータ暗号化キーで保護されていることがあります。  
KMS キーをカスタマーマネージドキーに初めて設定すると、 は*データキー* AWS KMS を生成します。 AWS KMS データキーは、Amazon Keyspaces のテーブルキーを参照します。  
暗号化されたテーブルにアクセスすると、Amazon Keyspaces は AWS KMS KMS キーを使用してテーブルキーを復号するリクエストを に送信します。その後、プレーンテキストテーブルキーを使用して Amazon Keyspaces データ暗号化キーが復号化され、プレーンテキストデータ暗号化キーを使用してテーブルデータが復号化されます。  
Amazon Keyspaces は、テーブルキーとデータ暗号化キーを の外部で使用および保存します AWS KMS。これによって、[Advanced Encryption Standard](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard) (AES) 暗号化および 256 ビット暗号化キーのすべてのキーが保護されます。続いて、暗号化されたキーを暗号化されたデータと一緒に保存します。これらのキーおよびデータは、必要なときにテーブルデータの暗号化に使用できます。

**テーブルキーのキャッシュ**  
Amazon Keyspaces オペレーション AWS KMS ごとに が呼び出されないように、Amazon Keyspaces は各接続のプレーンテキストテーブルキーをメモリにキャッシュします。Amazon Keyspaces は、5 分間非アクティブ状態が続いた後にキャッシュされたテーブルキーのリクエストを取得すると、テーブルキーを復号 AWS KMS するための新しいリクエストを に送信します。この呼び出しは、テーブルキーを復号する最後のリクエスト以降に AWS KMS または AWS Identity and Access Management (IAM) で KMS キーのアクセスポリシーに加えられた変更をキャプチャします。

**エンベロープ暗号化**  
テーブルのカスタマーマネージドキーを変更すると、Amazon Keyspaces によって新しいテーブルキーが生成されます。次に、新しいテーブルキーを使用してデータ暗号化キーの再暗号化が行われます。また、新しいテーブルキーを使用して過去のテーブルキーが暗号化され、それを復元可能なバックアップの保護に使用します。このプロセスはエンベロープ暗号化と呼ばれます。これにより、カスタマーマネージドキーをローテーションしても、復元可能なバックアップにアクセスできるようになります。エンベロープ暗号化の仕組みの詳細については、*「AWS Key Management Service デベロッパーガイド」*の[「Envelope Encryption」](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#enveloping)(エンベロープ暗号化) を参照してください。

**Topics**
+ [AWS 所有キー](#keyspaces-owned)
+ [カスタマーマネージドキー](#customer-managed)
+ [保管データ暗号化の使用に関する注意事項](#encryption.usagenotes)

## AWS 所有キー
<a name="keyspaces-owned"></a>

AWS 所有のキー は に保存されません AWS アカウント。これらは、multiple. AWS services で使用するために が AWS 所有および管理する KMS キーのコレクションの一部です AWS アカウント。サービスは、 AWS 所有のキー を使用してデータを保護します。

表示、管理、使用 AWS 所有のキー、またはそれらの使用を監査することはできません。ただし、データを暗号化するキーを保護するための作業やプログラムを操作したり変更したりする必要はありません。

の使用に対して月額料金や使用料金は請求されず AWS 所有のキー、アカウントの AWS KMS クォータにもカウントされません。

## カスタマーマネージドキー
<a name="customer-managed"></a>

カスタマーマネージドキーは、 AWS アカウント ユーザーが作成、所有、管理する のキーです。ユーザーは、この KMS キーに関する完全なコントロール権を持ちます。

カスタマーマネージドキーを使用して次の機能を取得します。
+ カスタマーマネージドキーの作成と管理を行います。これには、[キーポリシー](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)、[IAM ポリシー](https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html)、カスタマーマネージドキーへのアクセスを制御する[権限](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)の設定および維持が含まれます。カスタマーマネージドキーの[有効化と無効化](https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html)、[自動キーローテーション](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html)の有効化と無効化、使用しなくなった[カスタマーマネージドキーの削除](https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html)のスケジューリングを行うことができます。管理するカスタマーマネージドキーのタグとエイリアスを作成できます。
+ [インポートされたキーマテリアル](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html)を持つカスタマーマネージドキー、またはユーザーが所有して管理する[カスタムキーストア](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html)で、カスタマーマネージドキーを使用できます。
+  AWS CloudTrail と Amazon CloudWatch Logs を使用して、Amazon Keyspaces が AWS KMS ユーザーに代わって に送信するリクエストを追跡できます。詳細については、「[ステップ 6: でモニタリングを設定する AWS CloudTrail](encryption.customermanaged.md#encryption-cmk-trail)」を参照してください。

カスタマーマネージドキー[には API コールごとに料金が発生し](https://aws.amazon.com/kms/pricing/)、これらの AWS KMS KMS キーにはクォータが適用されます。詳細については、「[AWS KMS resource or request quotas](https://docs.aws.amazon.com/kms/latest/developerguide/limits.html)」(KMS リソースクォータまたはリクエストクォータ) を参照してください。

テーブルのルート暗号化キーとしてカスタマーマネージドポリシーを指定すると、復元可能なバックアップは、バックアップの作成時にテーブルに対して指定されている暗号化キーと同じものを使用して暗号化されます。テーブルの KMS キーをローテーションすると、キーエンベロープにより、最新の KMS キーが復元可能なすべてのバックアップにアクセスできるようになります。

Amazon Keyspaces には、テーブルデータへのアクセスが可能になるカスタマーマネージドキーへのアクセス権が必要です。暗号化キーの状態が無効に設定されているか、削除がスケジュールされている場合、Amazon Keyspaces ではデータの暗号化と復号化を実行できません。そのため、テーブルで読み取り/書き込みオペレーションを実行できません。暗号化キーにアクセスできないことが検出されると、Amazon Keyspaces からアラートメール通知が送信されます。

その場合、7 日以内に暗号化キーへのアクセスを復元しないと、Amazon Keyspaces によりテーブルが自動的に削除されます。ただし、Amazon Keyspaces では、テーブルが削除される前にテーブルデータの復元可能なバックアップが作成されます。その復元可能なバックアップは Amazon Keyspaces で 35 日間維持されます。35 日を過ぎるとそのテーブルデータは復元できなくなります。復元可能なバックアップの料金はかかりませんが、標準的な[復元料金はかかります](https://aws.amazon.com/keyspaces/pricing)。

この復元可能なバックアップを使用すれば、データを新しいテーブルに復元できます。復元を開始するには、そのテーブルに対して最後に使用したカスタマーマネージドキーを有効にし、Amazon Keyspaces からのアクセスを確立する必要があります。

**注記**  
作成プロセスが完了する前の時点で、アクセスできない、または削除がスケジュールされているカスタマーマネージドキーを使用して、暗号化されたテーブルを作成すると、エラーが発生します。テーブルの作成オペレーションが失敗し、電子メール通知が送信されます。

## 保管データ暗号化の使用に関する注意事項
<a name="encryption.usagenotes"></a>

Amazon Keyspaces で保管データの暗号化を使用する場合は、以下の点を考慮してください。
+ サーバー側の保管データ暗号化は、すべての Amazon Keyspaces テーブルデータで有効になり、無効にできません。テーブル全体の保管データが暗号化されます。特定の列または行を選択して暗号化することはできません。
+ Amazon Keyspaces のデフォルトでは、単一サービスのデフォルトキー (AWS 所有のキー) を使用して、すべてのテーブルで暗号化が行われます。このキーは、存在しなければ自動的に作成されます。サービスデフォルトキーは無効にできません。
+ 保管時の暗号化では、永続的ストレージメディアの静的 (保管時) データのみが暗号化されます。転送中のデータあるいは使用中のデータのデータ安全性に対する懸念がある場合には、追加の対策を実行する必要があります。
  + 転送中のデータ: Amazon Keyspaces 内のすべてのデータが転送中に暗号化されます。デフォルトでは、Amazon Keyspaces との通信が、Secure Sockets Layer (SSL)/Transport Layer Security (TLS) 暗号化を使用して保護されます。
  + 使用中のデータ: データを保護したうえで Amazon Keyspaces に送信するには、クライアント側暗号化を使用します。
  + カスタマーマネージドキー: テーブル内の保管中のデータは、常にカスタマーマネージドキーを使用して暗号化されます。ただし、複数の行のアトミック更新を実行するオペレーションは、処理 AWS 所有のキー 中に を使用してデータを一時的に暗号化します。これには、range delete オペレーションと、静的データと非静的データに同時にアクセスするオペレーションが含まれます。
+ 1 つのカスタマーマネージドキーにより、最大 50,000 の[権限](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)が可能です。カスタマーマネージドキーに関連付けられている各 Amazon Keyspaces テーブルでは、2 つの権限が消費されます。テーブルが削除されると、1 つの権限が解放されます。2番目の権限はテーブルの自動スナップショットの作成に使用されます。これは、Amazon Keyspaces によるカスタマーマネージドキーへのアクセス権が意図せず失われた場合に、データが失われないように保護するためです。この権限は、テーブルが削除されてから 42 日後にリリースされます。

# 保管データ暗号化: カスタマーマネージドキーを使用して Amazon Keyspaces のテーブルを暗号化する方法
<a name="encryption.customermanaged"></a>

コンソールまたは CQL ステートメントを使用して、新しいテーブル AWS KMS key の を指定し、Amazon Keyspaces の既存のテーブルの暗号化キーを更新できます。次のトピックでは、新規および既存のテーブルにカスタマーマネージドキーを実装する方法について説明します。

**Topics**
+ [前提条件: を使用してカスタマーマネージドキーを作成し AWS KMS 、Amazon Keyspaces にアクセス許可を付与する](#encryption.createCMKMS)
+ [ステップ 3: 新規テーブルのカスタマーマネージドキーを指定する](#encryption.tutorial-creating)
+ [ステップ 4: 既存のテーブルの暗号化キーを更新する](#encryption.tutorial-update)
+ [ステップ 5: ログで Amazon Keyspaces 暗号化コンテキストを使用する](#encryption-context)
+ [ステップ 6: でモニタリングを設定する AWS CloudTrail](#encryption-cmk-trail)

## 前提条件: を使用してカスタマーマネージドキーを作成し AWS KMS 、Amazon Keyspaces にアクセス許可を付与する
<a name="encryption.createCMKMS"></a>

[カスタマーマネージドキー](encryption.howitworks.md#customer-managed)を使用して Amazon Keyspaces テーブルを保護する前に、まず AWS Key Management Service (AWS KMS) でキーを作成し、Amazon Keyspaces にそのキーの使用を許可する必要があります。

### ステップ 1: を使用してカスタマーマネージドキーを作成する AWS KMS
<a name="encryption-create-key"></a>

Amazon Keyspaces テーブルの保護に使用するカスタマーマネージドキーを作成するには、「 コンソールまたは AWS API [を使用して対称暗号化 KMS キーを作成する](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk)」の手順に従います。

### ステップ 2: カスタマーマネージドキーの使用を認可する
<a name="encryption-authz"></a>

[カスタマーマネージドキー](encryption.howitworks.md#customer-managed)を選択して Amazon Keyspaces テーブルを保護できるようにするには、あらかじめ、そのカスタマーマネージドキーに関するポリシーにより、そのキーの使用許可を Amazon Keyspaces に付与する必要があります。カスタマーマネージドキーに関するポリシーと権限については、ユーザーが完全に制御します。これらのアクセス権限は、[キーポリシー](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)、[IAM ポリシー](https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html)、または [許可](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)で指定できます。

Amazon Keyspaces では、デフォルトの [AWS 所有のキー](encryption.howitworks.md#keyspaces-owned) を使用して AWS アカウント内で Amazon Keyspaces テーブルを保護する場合、追加の認可は必要ありません。

以下のトピックでは、Amazon Keyspaces テーブルでカスタマーマネージドキーを使用できるようにする IAM ポリシーと権限を使用して、必要な許可を設定する方法を示します。

**Topics**
+ [カスタマーマネージドキーのキーポリシー](#encryption-customer-managed-policy)
+ [キーポリシーの例](#encryption-customer-managed-policy-sample)
+ [Amazon Keyspaces の認可への権限の使用](#encryption-grants)

#### カスタマーマネージドキーのキーポリシー
<a name="encryption-customer-managed-policy"></a>

[カスタマーマネージドキー](encryption.howitworks.md#customer-managed)を選択して Amazon Keyspaces テーブルを保護する場合、Amazon Keyspaces には、選択を行うプリンシパルの代わって KMS キーを使用する許可が付与されます。そのプリンシパル (ユーザーまたはロール) は、Amazon Keyspaces で必要となるカスタマーマネージドキーに対する許可を取得しておく必要があります。

Amazon Keyspaces には、少なくとも、カスタマーマネージドキーに対する次の許可が必要です。
+ [kms:Encrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html)
+ [kms:Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)
+ [kms:ReEncrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html)\$1 (for kms:ReEncryptFrom および kms:ReEncryptTo 向け)
+ kms:GenerateDataKey\$1 (for [kms:GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html) および [kms:GenerateDataKeyWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyWithoutPlaintext.html) 向け)
+ [kms:DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html)
+ [kms:CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)

#### キーポリシーの例
<a name="encryption-customer-managed-policy-sample"></a>

例えば、次のキーポリシーの例では、必要なアクセス許可のみを提供します。このポリシーには、以下の影響があります。
+ Amazon Keyspaces に対して、暗号化オペレーションでのそのカスタマーマネージドキーの使用と、権限の作成を許可します。ただしこれは、Amazon Keyspaces の使用許可を持つアカウント内のプリンシパルに代わって Amazon Keyspaces により処理が行われている場合に限られます。ポリシーステートメントで指定されたプリンシパルが Amazon Keyspaces の使用許可を持っていない場合、Amazon Keyspaces サービスからのコールであっても、コールは失敗します。
+ [kms:ViaService](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-via-service) 条件キーは、ポリシーステートメントにリストされているプリンシパルの代わりに Amazon Keyspaces からリクエストが送信された場合にのみアクセス許可を受け入れます。これらのプリンシパルは、これらのオペレーションを直接呼び出すことはできません。`kms:ViaService` の値である `cassandra.*.amazonaws.com` は、リージョンの位置にアスタリスク (\$1) が付いていることに注意してください。Amazon Keyspaces では、特定の から独立したアクセス許可が必要です AWS リージョン。
+ カスタマーマネージドキー管理者 (`db-team` ロールを引き受けることができるユーザー) に、カスタマーマネージドキーへの読み取り専用アクセス権と、権限 (テーブルを保護するために [Amazon Keyspaces で必要となる権限](#encryption-grants)を含む) を取り消す許可を与えます。
+ Amazon Keyspaces に、カスタマーマネージドキーへの読み取り専用アクセス権を付与します。この場合、Amazon Keyspaces によりこれらのオペレーションが直接呼び出されます。アカウントプリンシパルに代わって処理する必要はありません。

サンプルキーポリシーを使用する前に、サンプルプリンシパルを の実際のプリンシパルに置き換えます AWS アカウント。

```
{
  "Id": "key-policy-cassandra",
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid" : "Allow access through Amazon Keyspaces for all principals in the account that are authorized to use Amazon Keyspaces",
      "Effect": "Allow",
      "Principal": {"AWS": "arn:aws:iam::111122223333:user/db-lead"},
      "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey",
        "kms:CreateGrant"
      ],
      "Resource": "*",      
      "Condition": { 
         "StringLike": {
           "kms:ViaService" : "cassandra.*.amazonaws.com"
         }
      }
    },
    {
      "Sid":  "Allow administrators to view the customer managed key and revoke grants",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/db-team"
       },
      "Action": [
        "kms:Describe*",
        "kms:Get*",
        "kms:List*",
        "kms:RevokeGrant"
      ],
      "Resource": "*"
    }
  ]
}
```

#### Amazon Keyspaces の認可への権限の使用
<a name="encryption-grants"></a>

Amazon Keyspaces は、キーポリシーに加え、権限を使ってカスタマーマネージドキーに対しアクセス許可を設定できます。アカウントにあるカスタマーマネージドキーへの権限を表示するには、[ListGrants](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListGrants.html) オペレーションを使用します。Amazon Keyspaces では、[AWS 所有のキー](encryption.howitworks.md#keyspaces-owned) を使用してテーブルを保護する場合に、権限や追加のアクセス許可は必要ありません。

Amazon Keyspaces は、バックグラウンドシステムメンテナンスと継続的なデータ保護タスクを実行するときに、権限のアクセス許可を使用します。また、テーブルキーの生成にグラントを使用します。

各グラントは、テーブルに固有です。アカウントに、同じカスタマーマネージドキーを使って暗号化された複数のテーブルがある場合、テーブルごとに、各タイプの権限があります。許可は、テーブル名と AWS アカウント ID を含む [Amazon Keyspaces 暗号化コンテキスト](https://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html)によって制約されます。この権限には、権限が不要になった場合に[権限の使用停止](https://docs.aws.amazon.com/kms/latest/APIReference/API_RetireGrant.html)を行うための許可が含まれています。

権限を作成するには、暗号化されたテーブルを作成したユーザーに代わって `CreateGrant` を呼び出すアクセス許可が Amazon Keyspaces に必要です。

キーポリシーは、アカウントがカスタマーマネージドキーの[権限を取り消す](https://docs.aws.amazon.com/kms/latest/APIReference/API_RevokeGrant.html)ことも許可できます。ただし、アクティブな暗号化テーブルで権限トを取り消すと、Amazon Keyspaces はテーブルを保護して維持することはできません。

## ステップ 3: 新規テーブルのカスタマーマネージドキーを指定する
<a name="encryption.tutorial-creating"></a>

以下の手順に従って、Amazon Keyspaces コンソールまたは CQL を使用して新しいテーブルでカスタマーマネージドキーを指定します。

### カスタマーマネージドキーを使用して暗号化されたテーブルを作成する (コンソール)
<a name="encryption.tutorial-console"></a>

1. にサインインし AWS マネジメントコンソール、[https://console.aws.amazon.com/keyspaces/home](https://console.aws.amazon.com/keyspaces/home) で Amazon Keyspaces コンソールを開きます。

1. ナビゲーションペインで [**Tables]** (テーブル) を選択して、[**Create table (テーブルの作成)**] を選択します。

1. [**Table details (テーブルの詳細)**] セクションの [**Create table (テーブルの作成)**] ページで、キースペースを選択し、新しいテーブルに名前を付けます。

1. [**Schema (スキーマ)**] セクションで、テーブルのスキーマを作成します。

1. [**Table settings (テーブルの設定)**] セクションで、[**Customize settings (設定のカスタマイズ)**] を選択します。

1. [**Encryption settings (暗号化設定)**] に進みます。

   このステップでは、テーブルの暗号化設定を選択します。

   **「 の選択」の「保管時の暗号化**」セクションで、**「別の KMS キーの選択 (アドバンスド)**」オプションを選択し、検索フィールドで「」を選択する AWS KMS key か、「Amazon リソースネーム (ARN) を入力します。 ** AWS KMS key**
**注記**  
選択したキーにアクセスできない場合、または必要なアクセス許可がない場合は、「 AWS Key Management Service デベロッパーガイド」の[「キーアクセスのトラブルシューティング](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html)」を参照してください。

1. [**Create (作成)**] を選択して暗号化テーブルを作成します。

### 保管データ暗号化 (CQL) にカスタマーマネージドキーが使用される新しいテーブルを作成する
<a name="encryption.tutorial-cql"></a>

保管データ暗号化にカスタマーマネージドキーが使用される新しいテーブルを作成するには、次の例に示すように、`CREATE TABLE` ステートメントを使用します。キー ARN を、Amazon Keyspaces に付与されたアクセス許可がある有効キーの ARN に置き換えてください。

```
CREATE TABLE my_keyspace.my_table(id bigint, name text, place text STATIC, PRIMARY KEY(id, name)) WITH CUSTOM_PROPERTIES = {
        'encryption_specification':{
                'encryption_type': 'CUSTOMER_MANAGED_KMS_KEY', 
                'kms_key_identifier':'arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111'
            }
    };
```

`Invalid Request Exception` を受け取った場合、カスタマーマネージドキーが有効であり Amazon Keyspaces に必要な許可が付与されていることを確認する必要があります。キーが正しく設定されていることを確認するには、「 AWS Key Management Service デベロッパーガイド」の[「キーアクセスのトラブルシューティング](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html)」を参照してください。

## ステップ 4: 既存のテーブルの暗号化キーを更新する
<a name="encryption.tutorial-update"></a>

Amazon Keyspaces コンソールまたは CQL を使用して、 AWS 所有のキー とカスタマーマネージド KMS キーの間で既存のテーブルの暗号化キーをいつでも変更できます。

### 新しいカスタマーマネージドキーで既存のテーブルを更新する (コンソール)
<a name="encryption.tutorial-update-console"></a>

1. にサインインし AWS マネジメントコンソール、[https://console.aws.amazon.com/keyspaces/home](https://console.aws.amazon.com/keyspaces/home) で Amazon Keyspaces コンソールを開きます。

1.  ナビゲーションペインで、[**Tables (テーブル)**] を選択します。

1. 更新するテーブルを選択し、次に [**Additional settings (追加設定)**] タブを選択します。

1. [**Encryption at rest (保管データ暗号化)**] セクションで、[**Manage Encryption (暗号化の管理)**] を選択してテーブルの暗号化設定を編集します。

   **「 の選択 AWS KMS key****」で、「別の KMS キーの選択 (詳細)**」オプションを選択し、検索フィールドに「」を選択する AWS KMS key か、「Amazon リソースネーム (ARN) を入力します。
**注記**  
選択したキーが有効でない場合は、「 AWS Key Management Service デベロッパーガイド」の[「キーアクセスのトラブルシューティング](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html)」を参照してください。

   または、カスタマーマネージドキーで暗号化された AWS 所有のキー テーブルの を選択することもできます。

1. [**Save changes (変更を保存)**] を選択して、テーブルに加えた変更内容を保存します。

### 既存のテーブルに使用される暗号化キーを更新する
<a name="encryption.tutorial-update-cql"></a>

既存のテーブルの暗号化キーを変更するには、`ALTER TABLE` ステートメントを使用して、保管データ暗号化に使用するカスタマーマネージドキーを指定します。キー ARN を、Amazon Keyspaces に付与されたアクセス許可がある有効キーの ARN に置き換えてください。

```
ALTER TABLE my_keyspace.my_table WITH CUSTOM_PROPERTIES = {     
              'encryption_specification':{ 
                      'encryption_type': 'CUSTOMER_MANAGED_KMS_KEY', 
                      'kms_key_identifier':'arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111'     
                  } 
         };
```

`Invalid Request Exception` を受け取った場合、カスタマーマネージドキーが有効であり Amazon Keyspaces に必要な許可が付与されていることを確認する必要があります。キーが正しく設定されていることを確認するには、「 AWS Key Management Service デベロッパーガイド」の[「キーアクセスのトラブルシューティング](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html)」を参照してください。

を使用して暗号化キーをデフォルトの保管時の暗号化オプションに戻すには AWS 所有のキー、次の例に示すように `ALTER TABLE`ステートメントを使用できます。

```
ALTER TABLE my_keyspace.my_table WITH CUSTOM_PROPERTIES = {
                'encryption_specification':{
                      'encryption_type' : 'AWS_OWNED_KMS_KEY' 
                    } 
         };
```

## ステップ 5: ログで Amazon Keyspaces 暗号化コンテキストを使用する
<a name="encryption-context"></a>

[暗号化コンテキスト](https://docs.aws.amazon.com/kms/latest/developerguide/encrypt_context.html)は、一連のキー値のペアおよび任意非シークレットデータを含みます。データを暗号化するリクエストに暗号化コンテキストを含めると、 は暗号化コンテキストを暗号化されたデータに AWS KMS 暗号化バインドします。データを復号するには、同じ暗号化コンテキストに渡す必要があります。

Amazon Keyspaces は、すべての暗号化オペレーションで同じ AWS KMS 暗号化コンテキストを使用します。[カスタマーマネージドキー](encryption.howitworks.md#customer-managed)を使用して Amazon Keyspaces テーブルを保護する場合は、暗号化コンテキストを使用して、監査の記録やログ内でカスタマーマネージドキーの使用を特定することができます。これは、[AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) のログや [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) などのログにもプレーンテキストで表示されます。

へのリクエストでは AWS KMS、Amazon Keyspaces は 3 つのキーと値のペアを持つ暗号化コンテキストを使用します。

```
"encryptionContextSubset": {
    "aws:cassandra:keyspaceName": "my_keyspace",
    "aws:cassandra:tableName": "mytable"
    "aws:cassandra:subscriberId": "111122223333"
}
```
+ **Keyspace (キー空間)** — 1 つ目のキーバリューペアは、Amazon Keyspaces により暗号化されるテーブルが含まれているキー空間を識別します。キーは、`aws:cassandra:keyspaceName` です。この値は、このキー空間の名前です。

  ```
  "aws:cassandra:keyspaceName": "<keyspace-name>"
  ```

  例:

  ```
  "aws:cassandra:keyspaceName": "my_keyspace"
  ```
+ **Table (テーブル)** － 2 つ目のキーバリューペアは、Amazon Keyspaces により暗号化されるテーブルを識別します。キーは、`aws:cassandra:tableName` です。この値は、テーブルの名前です。

  ```
  "aws:cassandra:tableName": "<table-name>"
  ```

  例えば、次のようになります。

  ```
  "aws:cassandra:tableName": "my_table"
  ```
+ **アカウント** － 3 番目のキーバリューペアは、 AWS アカウントを識別します。キーは、`aws:cassandra:subscriberId` です。値は、アカウント ID です。

  ```
  "aws:cassandra:subscriberId": "<account-id>"
  ```

  例えば、次のようになります。

  ```
  "aws:cassandra:subscriberId": "111122223333"
  ```

## ステップ 6: でモニタリングを設定する AWS CloudTrail
<a name="encryption-cmk-trail"></a>

[カスタマーマネージドキー](encryption.howitworks.md#customer-managed)を使用して Amazon Keyspaces テーブルを保護する場合は、 AWS CloudTrail ログを使用して、Amazon Keyspaces が AWS KMS ユーザーに代わって に送信するリクエストを追跡できます。

このセクションでは、`GenerateDataKey`、`DescribeKey`、`Decrypt`、および `CreateGrant` の各リクエストについて説明します。さらに、Amazon Keyspaces では、テーブルを削除するときに [RetireGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_RetireGrant.html) オペレーションを使用して権限を削除します。

**注記**  
Amazon Keyspaces を使用する場合、オペレーションによっては、 `invokedBy`フィールドが の CloudTrail イベントを生成する場合があります`dynamodb.amazonaws.com`。これは想定され、Amazon Keyspaces が Amazon DynamoDB と統合してサービスを提供するため発生します。

**GenerateDataKey**  
Amazon Keyspaces では、保管中のデータを暗号化するために一意のテーブルキーが作成します。テーブルの KMS キー AWS KMS を指定する *[GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)* リクエストを に送信します。  
`GenerateDataKey` 演算を記録するイベントは、次のようなサンプルイベントになります。ユーザーは Amazon Keyspaces サービスアカウントです。このパラメータには、カスタマーマネージドキーの Amazon リソースネーム (ARN)、256 ビットキーを必要とするキー指定子、および、キー空間とテーブルと AWS アカウントを識別する[暗号化コンテキスト](#encryption-context)が含まれます。  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2021-04-16T04:56:05Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKey",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "keySpec": "AES_256",
        "encryptionContext": {
            "aws:cassandra:keyspaceName": "my_keyspace",
            "aws:cassandra:tableName": "my_table",
            "aws:cassandra:subscriberId": "123SAMPLE012"
        },
        "keyId": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
    },
    "responseElements": null,
    "requestID": "5e8e9cb5-9194-4334-aacc-9dd7d50fe246",
    "eventID": "49fccab9-2448-4b97-a89d-7d5c39318d6f",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123SAMPLE012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "123SAMPLE012",
    "sharedEventID": "84fbaaf0-9641-4e32-9147-57d2cb08792e"
}
```

**DescribeKey**  
Amazon Keyspaces では、[DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) オペレーションを使用して、選択した KMS キーがアカウントとリージョンに存在するかどうかが判断されます。  
`DescribeKey` 演算を記録するイベントは、次のようなサンプルイベントになります。ユーザーは Amazon Keyspaces サービスアカウントです。このパラメータには、カスタマーマネージドキーの ARN と、256 ビットキーを要求するキー識別子が含まれます。  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "IAMUser",
        "principalId": "AIDAZ3FNIIVIZZ6H7CFQG",
        "arn": "arn:aws:iam::123SAMPLE012:user/admin",
        "accountId": "123SAMPLE012",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
        "userName": "admin",
        "sessionContext": {
            "sessionIssuer": {},
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-04-16T04:55:42Z"
            }
        },
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2021-04-16T04:55:58Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "DescribeKey",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "keyId": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
    },
    "responseElements": null,
    "requestID": "c25a8105-050b-4f52-8358-6e872fb03a6c",
    "eventID": "0d96420e-707e-41b9-9118-56585a669658",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123SAMPLE012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "123SAMPLE012"
}
```

**Decrypt**  
Amazon Keyspaces のテーブルにアクセスすると、階層内でそのテーブルキーの下のキーの復号化を可能にするために、Amazon Keyspaces によりテーブルキーが復号化される必要があります。次に、テーブル内のデータを復号化します。テーブルキーを復号するために、Amazon Keyspaces はテーブルの KMS キー AWS KMS を指定する [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) リクエストを に送信します。  
`Decrypt` 演算を記録するイベントは、次のようなサンプルイベントになります。ユーザーは、テーブルにアクセスする のプリンシパル AWS アカウント です。パラメータには、暗号化されたテーブルキー (暗号文 BLOB として) と、テーブルを識別する[暗号化コンテキスト](#encryption-context)が含まれ、 AWS アカウント. は暗号文からカスタマーマネージドキーの ID AWS KMS を取得します。  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2021-04-16T05:29:44Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Decrypt",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "encryptionContext": {
            "aws:cassandra:keyspaceName": "my_keyspace",
            "aws:cassandra:tableName": "my_table",
            "aws:cassandra:subscriberId": "123SAMPLE012"
        },
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT"
    },
    "responseElements": null,
    "requestID": "50e80373-83c9-4034-8226-5439e1c9b259",
    "eventID": "8db9788f-04a5-4ae2-90c9-15c79c411b6b",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123SAMPLE012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "123SAMPLE012",
    "sharedEventID": "7ed99e2d-910a-4708-a4e3-0180d8dbb68e"
}
```

**CreateGrant**  
[カスタマーマネージドキー](encryption.howitworks.md#customer-managed)を使用して Amazon Keyspaces テーブルを保護する場合、Amazon Keyspaces では、[権限](#encryption-grants)を使用して、サービスによるデータの継続的保護とメンテナンスおよび耐久タスクの実行を許可します。これらの権限は、[AWS 所有のキー](encryption.howitworks.md#keyspaces-owned) では不要です。  
Amazon Keyspaces により作成される権限はテーブルごとに固有となります。[CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html) リクエストのプリンシパルは、テーブルを作成したユーザーです。  
`CreateGrant` 演算を記録するイベントは、次のようなサンプルイベントになります。このパラメータには、そのテーブルのカスタマーマネージドキーの ARN、被付与 (グランティー) プリンシパルと使用停止プリンシパル (Amazon Keyspaces サービス)、およびこの権限の対象となるオペレーションが含まれます。また、指定された[暗号化コンテキスト](#encryption-context)を使用するすべての暗号化オペレーションを必要とする制約も含まれています。  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "IAMUser",
        "principalId": "AIDAZ3FNIIVIZZ6H7CFQG",
        "arn": "arn:aws:iam::arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111:user/admin",
        "accountId": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111",
        "accessKeyId": "AKIAI44QH8DHBEXAMPLE",
        "userName": "admin",
        "sessionContext": {
            "sessionIssuer": {},
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-04-16T04:55:42Z"
            }
        },
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2021-04-16T05:11:10Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "CreateGrant",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "keyId": "a7d328af-215e-4661-9a69-88c858909f20",
        "operations": [
            "DescribeKey",
            "GenerateDataKey",
            "Decrypt",
            "Encrypt",
            "ReEncryptFrom",
            "ReEncryptTo",
            "RetireGrant"
        ],
        "constraints": {
            "encryptionContextSubset": {
                "aws:cassandra:keyspaceName": "my_keyspace",
                "aws:cassandra:tableName": "my_table",
                "aws:cassandra:subscriberId": "123SAMPLE012"
            }
        },
        "retiringPrincipal": "cassandratest.us-east-1.amazonaws.com",
        "granteePrincipal": "cassandratest.us-east-1.amazonaws.com"
    },
    "responseElements": {
        "grantId": "18e4235f1b07f289762a31a1886cb5efd225f069280d4f76cd83b9b9b5501013"
    },
    "requestID": "b379a767-1f9b-48c3-b731-fb23e865e7f7",
    "eventID": "29ee1fd4-28f2-416f-a419-551910d20291",
    "readOnly": false,
    "resources": [
        {
            "accountId": "123SAMPLE012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "123SAMPLE012"
}
```

# Amazon Keyspaces での転送時の暗号化
<a name="encryption-in-transit"></a>

Amazon Keyspaces では、Transport Layer Security (TLS) を使用した安全な接続しか許容されません。転送時の暗号化では、Amazon Keyspaces との間で送受信するときにデータを暗号化することによって、データ保護のレイヤーを追加します。組織のポリシー、業界や政府の規制、またはコンプライアンス要件によって、ネットワークを介したデータ転送時にアプリケーションのデータセキュリティを高めるために転送時の暗号化の使用が求められることがあります。

TLS を使用した Amazon Keyspaces への `cqlsh` 接続を暗号化する方法については、「[TLS の `cqlsh` 接続を手動で設定する方法](programmatic.cqlsh.md#encrypt_using_tls)」を参照してください。TLS 暗号化をクライアントドライバーとともに使用する方法については、「[Cassandra クライアントドライバーを使用した Amazon Keyspaces へのプログラムアクセス](programmatic.drivers.md)」を参照してください。

# Amazon Keyspaces におけるインターネットワークトラフィックプライバシー
<a name="inter-network-traffic-privacy"></a>

このトピックでは、Amazon Keyspaces (Apache Cassandra 用) がオンプレミスアプリケーションから Amazon Keyspaces への接続、および Amazon Keyspaces と同じ 内の他の AWS リソース間の接続を保護する方法について説明します AWS リージョン。

## サービスとオンプレミスのクライアントおよびアプリケーションとの間のトラフィック
<a name="inter-network-traffic-privacy-on-prem"></a>

プライベートネットワークと の間には 2 つの接続オプションがあります AWS。
+  AWS Site-to-Site VPN 接続。詳細については、*「 AWS Site-to-Site VPNユーザーガイド」*の[「What is AWS Site-to-Site VPN ?」](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html)( とは？) を参照してください。
+  Direct Connect 接続。詳細については、*「 Direct Connectユーザーガイド」*の[「What is Direct Connect ?」](https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html)( とは？) を参照してください。

マネージドサービスである Amazon Keyspaces (Apache Cassandra 向け) は、 AWS グローバルネットワークセキュリティで保護されています。 AWS セキュリティサービスと がインフラストラクチャ AWS を保護する方法については、[AWS 「 クラウドセキュリティ](https://aws.amazon.com/security/)」を参照してください。インフラストラクチャセキュリティのベストプラクティスを使用して環境を AWS 設計するには、*「Security Pillar AWS Well‐Architected Framework*」の[「Infrastructure Protection](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html)」を参照してください。

 AWS 公開された API コールを使用して、ネットワーク経由で Amazon Keyspaces にアクセスします。クライアントは以下をサポートする必要があります。
+ Transport Layer Security (TLS)。TLS 1.2 が必須で、TLS 1.3 をお勧めします。
+ DHE (楕円ディフィー・ヘルマン鍵共有) や ECDHE (楕円曲線ディフィー・ヘルマン鍵共有) などの完全前方秘匿性 (PFS) による暗号スイート。これらのモードは Java 7 以降など、ほとんどの最新システムでサポートされています。

Amazon Keyspaces では、2 つのクライアントリクエスト認証方法がサポートされています。1 つ目の方法では、サービス固有の認証情報を使用します。これは、特定の IAM ユーザーに対して生成されたパスワードベースの認証情報です。IAM コンソール、、または AWS API を使用して AWS CLI、パスワードを作成および管理できます。詳細については、「[Using IAM with Amazon Keyspaces (Amazon Keyspaces での IAM の使用)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mcs.html)」 を参照してください。

2 つ目の方法は、Cassandra 用のオープンソース DataStax Java ドライバーに対して認証プラグインを使用します。このプラグインでは、[IAM ユーザー、ロール、およびフェデレーテッドアイデンティティ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)により、[AWS 署名バージョン 4 署名プロセス (SigV4)](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) を使用して、Amazon Keyspaces (Apache Cassandra 向け) API リクエストに認証情報を追加することができます。詳細については、「[Amazon Keyspaces の AWS 認証情報の作成と設定](access.credentials.md)」を参照してください。

## 同じリージョン内の AWS リソース間のトラフィック
<a name="inter-network-traffic-privacy-within-region"></a>

インターフェイス VPC エンドポイントでは、Amazon VPC で実行されている仮想プライベートクラウド (VPC) と Amazon Keyspaces 間のプライベート通信ができます。インターフェイス VPC エンドポイントは AWS PrivateLink、VPCs と AWS サービス間のプライベート通信を可能にする AWS サービスです。 は、ネットワークトラフィックが Amazon ネットワークを離れないように、VPC 内のプライベート IPs で Elastic Network Interface を使用してこれ AWS PrivateLink を有効にします。インターフェイス VPC エンドポイントには、インターネットゲートウェイ、NAT デバイス、VPN 接続、または Direct Connect 接続は必要ありません。詳細については、「[Amazon Virtual Private CloudAmazon (仮想プライベートクラウド)](https://docs.aws.amazon.com/vpc/latest/userguide/)」と「[Interface VPC endpoints (AWS PrivateLink) (インターフェイス VPC エンドポイント ())](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html)」を参照してください。エンドポイントポリシーの例については、「[Amazon Keyspaces 用インターフェイス VPC エンドポイントの使用](vpc-endpoints.md#using-interface-vpc-endpoints)」を参照してください。

# AWS Identity and Access Management Amazon Keyspaces 用
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) は、管理者が AWS リソースへのアクセスを安全に制御 AWS のサービス するのに役立つ です。IAM 管理者は、*認証* (サインイン) され、かつ Amazon Keyspaces リソースを使用する*認可* を受ける (許可がある) ことができるユーザーを管理します。IAM は、追加料金なしで使用できる AWS のサービス です。

**Topics**
+ [オーディエンス](#security_iam_audience)
+ [アイデンティティを使用した認証](#security_iam_authentication)
+ [ポリシーを使用したアクセスの管理](#security_iam_access-manage)
+ [Amazon Keyspaces で IAM が機能する仕組み](security_iam_service-with-iam.md)
+ [Amazon Keyspaces のアイデンティティベースポリシーの例](security_iam_id-based-policy-examples.md)
+ [AWS Amazon Keyspaces の マネージドポリシー](security-iam-awsmanpol.md)
+ [Amazon Keyspaces のアイデンティティとアクセスに関するトラブルシューティング](security_iam_troubleshoot.md)
+ [Amazon Keyspaces のサービスリンクロールの使用](using-service-linked-roles.md)

## オーディエンス
<a name="security_iam_audience"></a>

 AWS Identity and Access Management (IAM) の使用方法は、ロールによって異なります。
+ **サービスユーザー** - 機能にアクセスできない場合は、管理者にアクセス許可をリクエストします (「[Amazon Keyspaces のアイデンティティとアクセスに関するトラブルシューティング](security_iam_troubleshoot.md)」を参照)。
+ **サービス管理者** - ユーザーアクセスを決定し、アクセス許可リクエストを送信します (「[Amazon Keyspaces で IAM が機能する仕組み](security_iam_service-with-iam.md)」を参照)
+ **IAM 管理者** - アクセスを管理するためのポリシーを作成します (「[Amazon Keyspaces のアイデンティティベースポリシーの例](security_iam_id-based-policy-examples.md)」を参照)

## アイデンティティを使用した認証
<a name="security_iam_authentication"></a>

認証とは、ID 認証情報 AWS を使用して にサインインする方法です。、IAM ユーザー AWS アカウントのルートユーザー、または IAM ロールを引き受けることで認証される必要があります。

 AWS IAM アイデンティティセンター (IAM Identity Center)、シングルサインオン認証、Google/Facebook 認証情報などの ID ソースからの認証情報を使用して、フェデレーティッド ID としてサインインできます。サインインの詳細については、「*AWS サインイン ユーザーガイド*」の「[AWS アカウントにサインインする方法](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html)」を参照してください。

プログラムによるアクセスの場合、 は SDK と CLI AWS を提供してリクエストを暗号化して署名します。詳細については、「*IAM ユーザーガイド*」の「[API リクエストに対するAWS 署名バージョン 4](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html)」を参照してください。

### AWS アカウント ルートユーザー
<a name="security_iam_authentication-rootuser"></a>

 を作成するときは AWS アカウント、すべての AWS のサービス および リソースへの完全なアクセス権を持つ AWS アカウント *ルートユーザー*と呼ばれる 1 つのサインインアイデンティティから始めます。日常的なタスクには、ルートユーザーを使用しないことを強くお勧めします。ルートユーザー認証情報を必要とするタスクについては、「*IAM ユーザーガイド*」の「[ルートユーザー認証情報が必要なタスク](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)」を参照してください。

### IAM ユーザーとグループ
<a name="security_iam_authentication-iamuser"></a>

*[IAM ユーザー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)*は、特定の個人やアプリケーションに対する特定のアクセス許可を持つアイデンティティです。長期認証情報を持つ IAM ユーザーの代わりに一時的な認証情報を使用することをお勧めします。詳細については、*IAM ユーザーガイド*の[「ID プロバイダーとのフェデレーションを使用して にアクセスすることを人間のユーザーに要求する AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp)」を参照してください。

[https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html)は、IAM ユーザーの集合を指定し、大量のユーザーに対するアクセス許可の管理を容易にします。詳細については、「*IAM ユーザーガイド*」の「[IAM ユーザーに関するユースケース](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html)」を参照してください。

### IAM ロール
<a name="security_iam_authentication-iamrole"></a>

*[IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)*は、特定のアクセス許可を持つアイデンティであり、一時的な認証情報を提供します。ユーザー[から IAM ロール (コンソール) に切り替えるか、 または API オペレーションを呼び出すことで、ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)を引き受けることができます。 AWS CLI AWS 詳細については、「*IAM ユーザーガイド*」の「[ロールを引き受けるための各種方法](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html)」を参照してください。

IAM ロールは、フェデレーションユーザーアクセス、一時的な IAM ユーザーのアクセス許可、クロスアカウントアクセス、クロスサービスアクセス、および Amazon EC2 で実行するアプリケーションに役立ちます。詳細については、*IAM ユーザーガイド* の [IAM でのクロスアカウントリソースアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) を参照してください。

## ポリシーを使用したアクセスの管理
<a name="security_iam_access-manage"></a>

でアクセスを制御する AWS には、ポリシーを作成し、ID AWS またはリソースにアタッチします。ポリシーは、アイデンティティまたはリソースに関連付けられたときにアクセス許可を定義します。 は、プリンシパルがリクエストを行うときにこれらのポリシー AWS を評価します。ほとんどのポリシーは JSON ドキュメント AWS として に保存されます。JSON ポリシードキュメントの詳細については、「*IAM ユーザーガイド*」の「[JSON ポリシー概要](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json)」を参照してください。

管理者は、ポリシーを使用して、どの**プリンシパル**がどの**リソース**に対して、どのような**条件**で**アクション**を実行できるかを定義することで、誰が何にアクセスできるかを指定します。

デフォルトでは、ユーザーやロールにアクセス許可はありません。IAM 管理者は IAM ポリシーを作成してロールに追加し、このロールをユーザーが引き受けられるようにします。IAM ポリシーは、オペレーションの実行方法を問わず、アクセス許可を定義します。

### アイデンティティベースのポリシー
<a name="security_iam_access-manage-id-based-policies"></a>

アイデンティティベースのポリシーは、アイデンティティ (ユーザー、グループ、またはロール) にアタッチできる JSON アクセス許可ポリシードキュメントです。これらのポリシーは、アイデンティティがどのリソースに対してどのような条件下でどのようなアクションを実行できるかを制御します。アイデンティティベースポリシーの作成方法については、*IAM ユーザーガイド* の [カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) を参照してください。

アイデンティティベースのポリシーは、*インラインポリシー* (単一の ID に直接埋め込む) または*管理ポリシー* (複数の ID にアタッチされたスタンドアロンポリシー) にすることができます。管理ポリシーとインラインポリシーのいずれかを選択する方法については、「*IAM ユーザーガイド*」の「[管理ポリシーとインラインポリシーのいずれかを選択する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html)」を参照してください。

### リソースベースのポリシー
<a name="security_iam_access-manage-resource-based-policies"></a>

リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。例としては、IAM *ロール信頼ポリシー*や Amazon S3 *バケットポリシー*などがあります。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスを制御できます。リソースベースのポリシーでは、[プリンシパルを指定する](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html)必要があります。

リソースベースのポリシーは、そのサービス内にあるインラインポリシーです。リソースベースのポリシーでは、IAM の AWS マネージドポリシーを使用できません。

### アクセスコントロールリスト (ACL)
<a name="security_iam_access-manage-acl"></a>

アクセスコントロールリスト (ACL) は、どのプリンシパル (アカウントメンバー、ユーザー、またはロール) がリソースにアクセスするためのアクセス許可を持つかを制御します。ACL はリソースベースのポリシーに似ていますが、JSON ポリシードキュメント形式は使用しません。

Amazon S3、および Amazon VPC は AWS WAF、ACLs。ACL の詳細については、*Amazon Simple Storage Service デベロッパーガイド* の [アクセスコントロールリスト (ACL) の概要](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) を参照してください。

### その他のポリシータイプ
<a name="security_iam_access-manage-other-policies"></a>

AWS は、より一般的なポリシータイプによって付与されるアクセス許可の上限を設定できる追加のポリシータイプをサポートしています。
+ **アクセス許可の境界** – アイデンティティベースのポリシーで IAM エンティティに付与することのできるアクセス許可の数の上限を設定します。詳細については、「*IAM ユーザーガイド*」の「[IAM エンティティのアクセス許可境界](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)」を参照してください。
+ **サービスコントロールポリシー (SCP)** - AWS Organizations内の組織または組織単位の最大のアクセス許可を指定します。詳細については、「*AWS Organizations ユーザーガイド*」の「[サービスコントロールポリシー](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)」を参照してください。
+ **リソースコントロールポリシー (RCP)** – は、アカウント内のリソースで利用できる最大数のアクセス許可を定義します。詳細については、「*AWS Organizations ユーザーガイド*」の「[リソースコントロールポリシー (RCP)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html)」を参照してください。
+ **セッションポリシー** – ロールまたはフェデレーションユーザーの一時セッションを作成する際にパラメータとして渡される高度なポリシーです。詳細については、「*IAM ユーザーガイド*」の「[セッションポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session)」を参照してください。

### 複数のポリシータイプ
<a name="security_iam_access-manage-multiple-policies"></a>

1 つのリクエストに複数のタイプのポリシーが適用されると、結果として作成されるアクセス許可を理解するのがさらに難しくなります。が複数のポリシータイプが関与する場合にリクエストを許可するかどうか AWS を決定する方法については、*「IAM ユーザーガイド*」の[「ポリシー評価ロジック](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html)」を参照してください。

# Amazon Keyspaces で IAM が機能する仕組み
<a name="security_iam_service-with-iam"></a>

IAM を使用して Amazon Keyspaces へのアクセスを管理する前に、Amazon Keyspaces で使用できる IAM 機能について理解しておく必要があります。Amazon Keyspaces およびその他の AWS のサービスが IAM と連携する方法の概要については、「IAM *ユーザーガイド*」の[AWS 「IAM と連携する のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。

**Topics**
+ [Amazon Keyspaces のアイデンティティベースポリシー](#security_iam_service-with-iam-id-based-policies)
+ [Amazon Keyspaces のリソースベースポリシー](#security_iam_service-with-iam-resource-based-policies)
+ [Amazon Keyspaces タグに基づいた認可](#security_iam_service-with-iam-tags)
+ [Amazon Keyspaces の IAM ロール](#security_iam_service-with-iam-roles)

## Amazon Keyspaces のアイデンティティベースポリシー
<a name="security_iam_service-with-iam-id-based-policies"></a>

IAM アイデンティティベースのポリシーでは許可または拒否するアクションとリソース、またアクションを許可または拒否する条件を指定できます。Amazon Keyspaces は、特定のアクション、リソース、および条件キーをサポートしています。JSON ポリシーで使用するすべての要素については、『*IAM ユーザーガイド*』の「[IAM JSON policy elements reference (IAM JSON ポリシーエレメントのリファレンス)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)」を参照してください。

IAM アクセス権限ポリシーに使用できる Amazon Keyspaces サービス固有のリソースとアクション、および条件コンテキストキーを確認するには、『*Service Authorization Reference (サービス認可リファレンス)*』の「[Actions, Resources, and Condition Keys for Amazon Keyspaces (for Apache Cassandra) (Amazon Keyspaces (Apache Cassandra 向け)のアクション、リソース、および条件キー)](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkeyspacesforapachecassandra.html)」を参照してください。

### アクション
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

管理者は JSON AWS ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件下で****アクション**を実行できるかということです。

JSON ポリシーの `Action` 要素にはポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。このアクションは関連付けられたオペレーションを実行するためのアクセス許可を付与するポリシーで使用されます。

Amazon Keyspaces のポリシーアクションは、アクションの前にプレフィックス `cassandra:` を使用します。例えば、Amazon Keyspaces `CREATE` CQL ステートメントを使用して Amazon Keyspaces のキースペースを作成するための権限を付与するには、ポリシーに `cassandra:Create` アクションを含めます。ポリシーステートメントには`Action` または `NotAction` 要素を含める必要があります。Amazon Keyspaces は、このサービスで実行できるタスクを記述する独自のアクションのセットを定義します。

単一のステートメントに複数のアクションを指定するには次のようにコンマで区切ります。

```
"Action": [
      "cassandra:CREATE",
      "cassandra:MODIFY"
          ]
```

Amazon Keyspaces アクションのリストを確認するには、『*Service Authorization Reference (サービス認可リファレンス)*』の「[Actions Defined by Amazon Keyspaces (for Apache Cassandra) (Amazon Keyspaces (Apache Cassandra 向け) で定義されるアクション)](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkeyspacesforapachecassandra.html#amazonkeyspacesforapachecassandra-actions-as-permissions)」を参照してください。

### リソース
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

管理者は JSON AWS ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件**下で**アクション**を実行できるかということです。

`Resource` JSON ポリシー要素はアクションが適用されるオブジェクトを指定します。ベストプラクティスとして、[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) を使用してリソースを指定します。リソースレベルのアクセス許可をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (\$1) を使用します。

```
"Resource": "*"
```

Amazon Keyspaces では、キースペース、テーブル、ストリームを IAM アクセス許可の `Resource`要素で使用できます。

**注記**  
Amazon Keyspaces のユーザーキースペースとテーブルにアクセスするには、IAM ポリシーにシステムテーブルに対する`cassandra:Select`アクセス許可が含まれている必要があります。  

```
arn:${Partition}:cassandra:${Region}:${Account}:/keyspace/system*
```
これは、次のシナリオに適用されます。  
AWS マネジメントコンソールへのアクセス
、、`GetKeyspace`、 などの SDK リソースオペレーション `GetTable` `ListKeyspaces` `ListTables`
標準 Apache Cassandra クライアントドライバー接続。ドライバーは接続の初期化中にシステムテーブルを自動的に読み取るため
システムテーブルは読み取り専用であり、変更できません。

Amazon Keyspaces のキースペースリソースには次の ARN があります。

```
arn:${Partition}:cassandra:${Region}:${Account}:/keyspace/${keyspaceName}/
```

Amazon Keyspaces のテーブルリソースには次の ARN があります。

```
arn:${Partition}:cassandra:${Region}:${Account}:/keyspace/${keyspaceName}/table/${tableName}
```

Amazon Keyspaces ストリームリソースには、次の ARN があります。

```
arn:${Partition}:cassandra:{Region}:${Account}:/keyspace/${keyspaceName}/table/${tableName}/stream/${streamLabel}
```

ARN の形式の詳細については、[「Amazon リソースネーム (ARNsと AWS サービス名前空間](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)」を参照してください。

例えば、ステートメントで `mykeyspace` キースペースを指定するには、次の ARN を使用します。

```
"Resource": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/"
```

特定のアカウントに属するすべてのキースペースを指定するには、ワイルドカード (\$1) を使用します。

```
"Resource": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/*"
```

リソースを作成するためのアクションなど、Amazon Keyspaces アクションには特定のリソースで実行できないものがあります。このような場合はワイルドカード \$1を使用する必要があります。

```
"Resource": "*"
```

 たとえば、 `mytable`の IAM プリンシパルにアクセス`SELECT`許可を付与するには`mykeyspace`、プリンシパルに `mytable`と の両方を読み取るアクセス許可が必要です`keyspace/system*`。複数リソースを単一ステートメントで指定するには、ARN をカンマで区切ります。

```
"Resource": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable",
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
```

Amazon Keyspaces リソースのタイプとその ARN のリストを確認するには、*「Service Authorization Reference」*(サービス認可リファレンス) の[「Resources Defined by Amazon Keyspaces (for Apache Cassandra)」](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkeyspacesforapachecassandra.html#amazonkeyspacesforapachecassandra-resources-for-iam-policies)(Amazon Keyspaces (Apache Cassandra 向け) で定義されるリソース) を参照してください。どのアクションで各リソースの ARN を指定できるかについては、[「Actions Defined by Amazon Keyspaces (for Apache Cassandra)」](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkeyspacesforapachecassandra.html#amazonkeyspacesforapachecassandra-actions-as-permissions)(Amazon Keyspaces (Apache Cassandra 向け) で定義されるアクション) を参照してください。

### 条件キー
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

管理者は JSON AWS ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件下で****アクション**を実行できるかということです。

`Condition` 要素は、定義された基準に基づいてステートメントが実行される時期を指定します。イコールや未満などの[条件演算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)を使用して条件式を作成して、ポリシーの条件とリクエスト内の値を一致させることができます。すべての AWS グローバル条件キーを確認するには、*「IAM ユーザーガイド*」の[AWS 「グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)」を参照してください。

Amazon Keyspaces では独自の条件キーが定義されており、また一部のグローバル条件キーの使用がサポートされています。すべての AWS グローバル条件キーを確認するには、*「IAM ユーザーガイド*」の[AWS 「グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)」を参照してください。



 すべての Amazon Keyspaces アクションでは、`aws:RequestTag/${TagKey}`、`aws:ResourceTag/${TagKey}` および `aws:TagKeys` 条件キーがサポートされます。詳細については、「[タグに基いた Amazon Keyspaces リソースアクセス](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-tags)」を参照してください。

Amazon Keyspaces の条件キーのリストを確認するには、『*Service Authorization Reference (サービス認可リファレンス)*』の「[Condition Keys for Amazon Keyspaces (for Apache Cassandra)](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkeyspacesforapachecassandra.html#amazonkeyspacesforapachecassandra-policy-keys)」(Amazon Keyspaces (Apache Cassandra 向け) の条件キー) を参照してください。どのアクションおよびリソースと条件キーを使用できるかについては、「[Actions Defined by Amazon Keyspaces (for Apache Cassandra) (Amazon Keyspaces (Apache Cassandra 向け)](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkeyspacesforapachecassandra.html#amazonkeyspacesforapachecassandra-actions-as-permissions)」で定義されるアクション) を参照してください。

### 例
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>

Amazon Keyspaces のアイデンティティベースポリシーの例は、「[Amazon Keyspaces のアイデンティティベースポリシーの例](security_iam_id-based-policy-examples.md)」でご確認ください。

## Amazon Keyspaces のリソースベースポリシー
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Amazon Keyspaces では、リソースベースのポリシーはサポートされていません。詳細なリソースベースポリシーのページの例については、「[https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html)」を参照してください。

## Amazon Keyspaces タグに基づいた認可
<a name="security_iam_service-with-iam-tags"></a>

タグを使用して Amazon Keyspaces リソースへのアクセスを管理することができます。タグに基づいてリソースアクセスを管理するには、`cassandra:ResourceTag/key-name`、`aws:RequestTag/key-name`、または `aws:TagKeys` の条件キーを使用して、ポリシーの[条件要素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)でタグ情報を提供します。Amazon Keyspaces リソースのタグ付けの詳細については、「[Amazon Keyspaces リソースのタグとラベルを操作する](tagging-keyspaces.md)」を参照してください。

リソースのタグに基づいてリソースへのアクセスを制限するためのアイデンティティベースのポリシーの例を表示するには、「[タグに基いた Amazon Keyspaces リソースアクセス](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-tags)」を参照してください。

## Amazon Keyspaces の IAM ロール
<a name="security_iam_service-with-iam-roles"></a>

[IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)は、特定のアクセス許可 AWS アカウント を持つ 内のエンティティです。

### Amazon Keyspaces での一時認証情報の使用
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

一時的な認証情報を使用して、フェデレーションでサインイン、IAM ロールを引き受ける、またはクロスアカウントロールを引き受けることができます。一時的なセキュリティ認証情報を取得するには、[AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) や [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html) などの AWS STS API オペレーションを呼び出します。

Amazon Keyspaces は、以下の言語で Github リポジトリから入手できる AWS Signature Version 4 (SigV4) 認証プラグインでの一時的な認証情報の使用をサポートしています。
+ Java: [https://github.com/aws/aws-sigv4-auth-cassandra-java-driver-plugin](https://github.com/aws/aws-sigv4-auth-cassandra-java-driver-plugin)。
+ Node.js: [https://github.com/aws/aws-sigv4-auth-cassandra-nodejs-driver-plugin](https://github.com/aws/aws-sigv4-auth-cassandra-nodejs-driver-plugin)。
+ Python: [https://github.com/aws/aws-sigv4-auth-cassandra-python-driver-plugin](https://github.com/aws/aws-sigv4-auth-cassandra-python-driver-plugin)。
+ Go: [https://github.com/aws/aws-sigv4-auth-cassandra-gocql-driver-plugin](https://github.com/aws/aws-sigv4-auth-cassandra-gocql-driver-plugin)。

認証プラグインを実装してプログラムによって Amazon Keyspaces にアクセスする方法の例とチュートリアルについては、「[Cassandra クライアントドライバーを使用した Amazon Keyspaces へのプログラムアクセス](programmatic.drivers.md)」を参照してください。

### サービスリンクロール
<a name="security_iam_service-with-iam-roles-service-linked"></a>

[サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用すると、 AWS サービスは他の サービスのリソースにアクセスして、ユーザーに代わってアクションを実行できます。サービスリンクロールは IAM アカウント内に表示され、サービスによって所有されます。IAM 管理者は、サービスリンクロールの許可を表示できますが、編集することはできません。

Amazon Keyspaces のサービスリンクロールの作成または管理の詳細については、**「[Amazon Keyspaces のサービスリンクロールの使用](using-service-linked-roles.md)」**を参照してください。

### サービスロール
<a name="security_iam_service-with-iam-roles-service"></a>

Amazon Keyspaces ではサービスロールがサポートされていません。

# Amazon Keyspaces のアイデンティティベースポリシーの例
<a name="security_iam_id-based-policy-examples"></a>

デフォルトでは、IAM ユーザーおよびロールには Amazon Keyspaces リソースを作成または変更する権限はありません。また、コンソール、CQLSH AWS CLI、または AWS API を使用してタスクを実行することはできません。IAM 管理者は、ユーザーとロールに必要な、指定されたリソースで特定の API オペレーションを実行する権限をユーザーとロールに付与する IAM ポリシーを作成する必要があります。続いて、管理者はそれらの権限が必要な IAM ユーザーまたはグループにそのポリシーをアタッチする必要があります。

これらの JSON ポリシードキュメント例を使用して IAM のアイデンティティベースのポリシーを作成する方法については、『*IAM ユーザーガイド*』の「[JSON タブでのポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor)」を参照してください。

**Topics**
+ [ポリシーに関するベストプラクティス](#security_iam_service-with-iam-policy-best-practices)
+ [Amazon Keyspaces コンソールの使用](#security_iam_id-based-policy-examples-console)
+ [自分の権限の表示をユーザーに許可する](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Amazon Keyspaces テーブルへのアクセス](#security_iam_id-based-policy-examples-access-one-table)
+ [タグに基いた Amazon Keyspaces リソースアクセス](#security_iam_id-based-policy-examples-tags)

## ポリシーに関するベストプラクティス
<a name="security_iam_service-with-iam-policy-best-practices"></a>

ID ベースのポリシーは、ユーザーのアカウント内で誰かが Amazon Keyspaces リソースを作成、アクセス、または削除できるどうかを決定します。これらのアクションでは、 AWS アカウントに費用が発生する場合があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:
+ ** AWS 管理ポリシーを開始し、最小特権のアクセス許可に移行する** – ユーザーとワークロードにアクセス許可の付与を開始するには、多くの一般的なユースケースにアクセス許可を付与する*AWS 管理ポリシー*を使用します。これらは で使用できます AWS アカウント。ユースケースに固有の AWS カスタマー管理ポリシーを定義することで、アクセス許可をさらに減らすことをお勧めします。詳細については、*IAM ユーザーガイド* の [AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) または [ジョブ機能のAWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) を参照してください。
+ **最小特権を適用する** – IAM ポリシーでアクセス許可を設定する場合は、タスクの実行に必要な許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、最小特権アクセス許可とも呼ばれています。IAM を使用して許可を適用する方法の詳細については、*IAM ユーザーガイド* の [IAM でのポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) を参照してください。
+ **IAM ポリシーで条件を使用してアクセスをさらに制限する** - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。たとえば、ポリシー条件を記述して、すべてのリクエストを SSL を使用して送信するように指定できます。条件を使用して、サービスアクションが などの特定の を通じて使用されている場合に AWS のサービス、サービスアクションへのアクセスを許可することもできます CloudFormation。詳細については、*IAM ユーザーガイド* の [IAM JSON ポリシー要素:条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) を参照してください。
+ **IAM アクセスアナライザー を使用して IAM ポリシーを検証し、安全で機能的な権限を確保する** - IAM アクセスアナライザー は、新規および既存のポリシーを検証して、ポリシーが IAM ポリシー言語 (JSON) および IAM のベストプラクティスに準拠するようにします。IAM アクセスアナライザーは 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーの作成をサポートします。詳細については、*IAM ユーザーガイド* の [IAM Access Analyzer でポリシーを検証する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) を参照してください。
+ **多要素認証 (MFA) を要求する** – で IAM ユーザーまたはルートユーザーを必要とするシナリオがある場合は AWS アカウント、MFA をオンにしてセキュリティを強化します。API オペレーションが呼び出されるときに MFA を必須にするには、ポリシーに MFA 条件を追加します。詳細については、*IAM ユーザーガイド* の [MFA を使用した安全な API アクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) を参照してください。

IAM でのベストプラクティスの詳細については、*IAM ユーザーガイド* の [IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) を参照してください。

## Amazon Keyspaces コンソールの使用
<a name="security_iam_id-based-policy-examples-console"></a>

Amazon Keyspaces では、Amazon Keyspaces コンソールにアクセスするための特定の権限は必要ありません。内の Amazon Keyspaces リソースの詳細を一覧表示および表示するには、少なくとも読み取り専用のアクセス許可が必要です AWS アカウント。最小限必要な許可よりも厳しく制限されたアイデンティティベースポリシーを作成すると、そのポリシーを添付したエンティティ (IAM ユーザーまたはロール) に対してコンソールが意図したとおりに機能しません。

Amazon Keyspaces コンソールアクセスのエンティティには、2 つの AWS マネージドポリシーを使用できます。
+ [AmazonKeyspacesReadOnlyAccess\$1v2](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonKeyspacesReadOnlyAccess_v2.html) – Amazon Keyspaces への読み取り専用アクセス権を付与するポリシーです。
+ [AmazonKeyspacesFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonKeyspacesFullAccess.html) – Amazon Keyspaces へのアクセスを許可し、すべての機能へのフルアクセスを認めるポリシーです。

Amazon Keyspaces のマネージドポリシーの詳細については、「[AWS Amazon Keyspaces の マネージドポリシー](security-iam-awsmanpol.md)」を参照してください。

## 自分の権限の表示をユーザーに許可する
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

この例では、ユーザーアイデンティティにアタッチされたインラインおよびマネージドポリシーの表示を IAM ユーザーに許可するポリシーの作成方法を示します。このポリシーには、コンソールで、または AWS CLI または AWS API を使用してプログラムでこのアクションを実行するアクセス許可が含まれています。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

## Amazon Keyspaces テーブルへのアクセス
<a name="security_iam_id-based-policy-examples-access-one-table"></a>

**注記**  
Amazon Keyspaces のユーザーキースペースとテーブルにアクセスするには、IAM ポリシーにシステムテーブルに対する`cassandra:Select`アクセス許可が含まれている必要があります。  

```
arn:${Partition}:cassandra:${Region}:${Account}:/keyspace/system*
```
これは、次のシナリオに適用されます。  
AWS マネジメントコンソールへのアクセス
、、`GetKeyspace`、 などの SDK リソースオペレーション `GetTable` `ListKeyspaces` `ListTables`
標準 Apache Cassandra クライアントドライバー接続。ドライバーは接続の初期化中にシステムテーブルを自動的に読み取るため
システムテーブルは読み取り専用であり、変更できません。

次のサンプルポリシーは、Amazon Keyspaces のシステムテーブルへの読み取り専用 (`SELECT`) アクセス許可を付与しています。すべてのサンプルで、Amazon リソースネーム (ARN) のリージョンとアカウント ID を実際の値と置き換えてください。

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "cassandra:Select"
         ],
         "Resource":[
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
         ]
      }
   ]
}
```

次のサンプルポリシーは、キースペース `mykeyspace` のユーザーテーブル `mytable` への読み取り専用アクセスを追加します。

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "cassandra:Select"
         ],
         "Resource":[
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable",
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
         ]
      }
   ]
}
```

以下のサンプルポリシーでは、ユーザーテーブルへの読み取り/書き込みアクセス権と、システムテーブルへの読み取りアクセス権を割り当てます。

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "cassandra:Select",
            "cassandra:Modify"
         ],
         "Resource":[
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable",
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
         ]
      }
   ]
}
```

次のサンプルポリシーでは、ユーザーがキースペース `mykeyspace` でテーブルを作成できます。

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "cassandra:Create",
            "cassandra:Select"
         ],
         "Resource":[
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/*",
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
         ]
      }
   ]
}
```

次のサンプルポリシーは、システムテーブルへの読み取りアクセスを割り当てますが、ユーザーテーブル へのアクセス `SELECT` (読み取り) と `MODIFY` (書き込み) を制限します`mytable`。

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cassandra:Select"
      ],
      "Resource": [
        "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
      ]
    },
    {
      "Effect": "Deny",
      "Action": [
        "cassandra:Select",
        "cassandra:Modify"
      ],
      "Resource": [
        "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable"
      ]
    }
  ]
}
```

## タグに基いた Amazon Keyspaces リソースアクセス
<a name="security_iam_id-based-policy-examples-tags"></a>

アイデンティティベースポリシーの条件を使用して、タグに基づいた Amazon Keyspaces リソースへのアクセスを制御することができます。これらのポリシーは、アカウント内のキースペースとテーブルの可視性を制御します。システムテーブルのタグベースのアクセス許可は、リクエストが AWS SDK を使用して行われた場合と、Cassandra ドライバーおよび開発者ツールを介した Cassandra クエリ言語 (CQL) API 呼び出しでは動作が異なることに注意してください。
+ タグベースのアクセスの使用時に AWS SDK でリクエストを行い、`List` リソースリクエストと `Get` リソースリクエストを行うには、呼び出し元にはシステムテーブルへの読み取りアクセス権限が必要です。たとえば、`GetTable` オペレーションでシステムテーブルからデータを読み取るには `Select` アクション権限が必要です。呼び出し元に特定のテーブルに対するタグベースのアクセス権限しかない場合、システムテーブルへの追加アクセスが必要な操作は失敗します。
+ 確立されている Cassandra ドライバーの動作との互換性を保つため、Cassandra ドライバーと開発者ツールを介して Cassandra クエリ言語 (CQL) API コールでシステムテーブルに対して操作を実行するとき、タグベースの承認ポリシーは適用されません。

次の例では、テーブルの `Owner` にユーザーのユーザー名の値が含まれている場合に、そのテーブルを表示するための権限をユーザーに与えるポリシーを作成する方法を説明します。この例では、システムテーブルへの読み取りアクセス権限も与えられています。

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Sid":"ReadOnlyAccessTaggedTables",
         "Effect":"Allow",
         "Action":"cassandra:Select",
         "Resource":[
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/*",
            "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
         ],
         "Condition":{
            "StringEquals":{
               "aws:ResourceTag/Owner":"${aws:username}"
            }
         }
      }
   ]
}
```

このポリシーはアカウントの IAM ユーザーにアタッチできます。`richard-roe` という名前のユーザーが Amazon Keyspaces テーブルを表示しようとすると、そのテーブルには `Owner=richard-roe` または `owner=richard-roe` というタグが付きます。それ以外の場合、アクセスは拒否されます。条件キー名では大文字と小文字は区別されないため、条件タグキー `Owner` は `Owner` と `owner` に一致します。詳細については、『*IAM ユーザーガイド*』の「[IAM JSON ポリシー要素: 条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)」を参照してください。

次のポリシーでは、テーブルの `Owner` にユーザーのユーザー名の値が含まれている場合に、タグ付きのテーブルを作成するための権限をユーザーに付与します。

```
{ 
    "Version": "2012-10-17",		 	 	  
    "Statement": [ 
       { 
          "Sid": "CreateTagTableUser", 
          "Effect": "Allow", 
          "Action": [
              "cassandra:Create", 
              "cassandra:TagResource"
          ], 
          "Resource": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/*", 
          "Condition":{
             "StringEquals":{
                "aws:RequestTag/Owner":"${aws:username}"
            }
         }
      }
   ]
}
```

# AWS Amazon Keyspaces の マネージドポリシー
<a name="security-iam-awsmanpol"></a>





 AWS 管理ポリシーは、 によって作成および管理されるスタンドアロンポリシーです AWS。 AWS 管理ポリシーは、ユーザー、グループ、ロールにアクセス許可の割り当てを開始できるように、多くの一般的なユースケースにアクセス許可を付与するように設計されています。

 AWS 管理ポリシーは、すべての AWS お客様が使用できるため、特定のユースケースに対して最小特権のアクセス許可を付与しない場合があることに注意してください。ユースケースに固有の[カスタマー管理ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)を定義して、アクセス許可を絞り込むことをお勧めします。

 AWS 管理ポリシーで定義されているアクセス許可は変更できません。が AWS マネージドポリシーで定義されたアクセス許可 AWS を更新すると、ポリシーがアタッチされているすべてのプリンシパル ID (ユーザー、グループ、ロール) に影響します。 AWS は、新しい が起動されるか、新しい API オペレーション AWS のサービス が既存のサービスで使用できるようになったときに、 AWS マネージドポリシーを更新する可能性が最も高くなります。

詳細については、「**IAM ユーザーガイド」の「[AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)」を参照してください。









## AWS マネージドポリシー: AmazonKeyspacesReadOnlyAccess\$1v2
<a name="security-iam-awsmanpol-AmazonKeyspacesReadOnlyAccess_v2"></a>





`AmazonKeyspacesReadOnlyAccess_v2` ポリシーを IAM アイデンティティにアタッチできます。



このポリシーは、Amazon Keyspaces への読み取り専用アクセス権を付与するもので、プライベート VPC エンドポイント経由で接続する場合に必要な権限が含まれます。



**権限の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `Amazon Keyspaces` – Amazon Keyspaces への読み取り専用アクセスを提供します。
+ `Amazon Keyspaces CDC streams` – プリンシパルに Amazon Keyspaces CDC ストリームの表示を許可します。
+ `Application Auto Scaling` — Application Auto Scaling の設定をプリンシパルが表示できるようにします。これは、テーブルにアタッチされているオートスケーリングポリシーをユーザーが表示できる場合に必須です。
+ `CloudWatch` - CloudWatch で設定されたメトリクスデータとアラームをプリンシパルが表示できるようにします。これは、テーブルに対して設定された請求対象テーブルサイズと CloudWatch アラームをユーザーが表示できる場合に必須です。
+ `AWS KMS` – プリンシパルが で設定されたキーを表示できるようにします AWS KMS。これは、ユーザーがアカウントで作成および管理している AWS KMS キーを表示して、Amazon Keyspaces に割り当てられたキーが有効な対称暗号化キーであることを確認するために必要です。
+ `Amazon EC2` — VPC エンドポイントを介して Amazon Keyspaces に接続するプリンシパルで、Amazon EC2 インスタンスの VPC にエンドポイントとネットワークインターフェイスの情報をクエリできます。Amazon Keyspaces が接続負荷分散に使用される `system.peers` テーブルで利用可能なインターフェイス VPC エンドポイントを検索して保存できるようにするには、Amazon EC2 インスタンスへのこの読み取り専用アクセスが必要です。



`JSON` 形式のポリシーを確認するには、「[AmazonKeyspacesReadOnlyAccess\$1v2](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonKeyspacesReadOnlyAccess_v2.html)」を参照してください。

## AWS マネージドポリシー: AmazonKeyspacesReadOnlyAccess
<a name="security-iam-awsmanpol-AmazonKeyspacesReadOnlyAccess"></a>





`AmazonKeyspacesReadOnlyAccess` ポリシーを IAM アイデンティティにアタッチできます。



このポリシーは、Amazon Keyspaces への読み取り専用アクセス権を付与するものです。



**権限の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `Amazon Keyspaces` – Amazon Keyspaces への読み取り専用アクセスを提供します。
+ `Amazon Keyspaces CDC streams` – プリンシパルに Amazon Keyspaces CDC ストリームの表示を許可します。
+ `Application Auto Scaling` — Application Auto Scaling の設定をプリンシパルが表示できるようにします。これは、テーブルにアタッチされているオートスケーリングポリシーをユーザーが表示できる場合に必須です。
+ `CloudWatch` - CloudWatch で設定されたメトリクスデータとアラームをプリンシパルが表示できるようにします。これは、テーブルに対して設定された請求対象テーブルサイズと CloudWatch アラームをユーザーが表示できる場合に必須です。
+ `AWS KMS` – プリンシパルが で設定されたキーを表示できるようにします AWS KMS。これは、ユーザーがアカウントで作成および管理している AWS KMS キーを表示して、Amazon Keyspaces に割り当てられたキーが有効な対称暗号化キーであることを確認するために必要です。



ポリシーを `JSON` フォーマットで確認するには、「[AmazonKeyspacesReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonKeyspacesReadOnlyAccess.html)」を参照してください。

## AWS マネージドポリシー: AmazonKeyspacesFullAccess
<a name="security-iam-awsmanpol-AmazonKeyspacesFullAccess"></a>





`AmazonKeyspacesFullAccess` ポリシーを IAM アイデンティティにアタッチできます。



このポリシーは、Amazon Keyspaces への無制限の管理者アクセスを許可する管理者用権限を付与するものです。



**権限の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `Amazon Keyspaces` — プリンシパルが任意の Amazon Keyspaces リソースにアクセスしてすべてのアクションを実行できるようにします。
+ `Application Auto Scaling` — プリンシパルが Amazon Keyspaces テーブルのオートスケーリングポリシーの作成、表示、削除を実行できるようにします。これは、管理者が Amazon Keyspaces テーブルのオートスケーリングポリシーを管理できる場合に必須です。
+ `CloudWatch` — プリンシパルが請求可能なテーブルサイズを表示できるほか、Amazon Keyspaces 自動スケーリングポリシーの CloudWatch アラームの作成、表示、削除を実行できるようにします。これは、管理者が請求対象テーブルサイズを表示し、CloudWatch ダッシュボードを作成できる場合に必須です。
+ `IAM` — 以下の機能が有効なとき、Amazon Keyspaces は IAM でサービスにリンクされたロールを自動的に作成できます。
  + `Amazon Keyspaces CDC streams` – 管理者がテーブルのストリームを有効にすると、Amazon Keyspaces はサービスにリンクされたロール [AWSServiceRoleForAmazonKeyspacesCDC](using-service-linked-roles-CDC-streams.md#service-linked-role-permissions-CDC-streams) を作成し、ユーザーに代わって CloudWatch メトリクスをアカウントに発行します。
  + `Application Auto Scaling` – 管理者がテーブルの Application Auto Scaling を有効にすると、Amazon Keyspaces はサービスにリンクされたロール [AWSServiceRoleForApplicationAutoScaling\$1CassandraTable](using-service-linked-roles-app-auto-scaling.md#service-linked-role-permissions-app-auto-scaling) を作成し、ユーザーに代わって自動スケーリングアクションを実行します。
  + `Amazon Keyspaces multi-Region replication` – 管理者が新しいマルチリージョンキースペースを作成するか、既存の単一リージョンキースペース AWS リージョン に新しい を追加すると、Amazon Keyspaces はサービスにリンクされたロール [AWSServiceRoleForAmazonKeyspacesReplication](using-service-linked-roles-multi-region-replication.md#service-linked-role-permissions-multi-region-replication) を作成し、ユーザーに代わって選択したリージョンにテーブル、データ、メタデータのレプリケーションを実行します。
+ `AWS KMS` — AWS KMSで設定されたキーをプリンシパルが表示できるようにします。これは、ユーザーがアカウントで作成および管理している AWS KMS キーを表示して、Amazon Keyspaces に割り当てられたキーが有効な対称暗号化キーであることを確認するために必要です。
+ `Amazon EC2` — VPC エンドポイントを介して Amazon Keyspaces に接続するプリンシパルで、Amazon EC2 インスタンスの VPC にエンドポイントとネットワークインターフェイスの情報をクエリできます。Amazon Keyspaces が接続負荷分散に使用される `system.peers` テーブルで利用可能なインターフェイス VPC エンドポイントを検索して保存するために、Amazon EC2 インスタンスへのこの読み取り専用アクセス権限が必要です。



`JSON` 形式のポリシーを確認するには、「[AmazonKeyspacesFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonKeyspacesFullAccess.html)」を参照してください。

## AWS マネージドポリシー: KeyspacesCDCServiceRolePolicy
<a name="security-iam-awsmanpol-KeyspacesCDCServiceRolePolicy"></a>





IAM エンティティに `KeyspacesCDCServiceRolePolicy` をアタッチすることはできません。このポリシーは、Amazon Keyspaces がユーザーに代わってアクションを実行できるようにするサービスにリンクされたロールにアタッチされます。詳細については、「[Amazon Keyspaces CDC ストリームのロールの使用](using-service-linked-roles-CDC-streams.md)」を参照してください。



このポリシーは、ユーザーに代わって Amazon Keyspaces CDC ストリームメトリクスデータを CloudWatch に発行`AWSServiceRoleForAmazonKeyspacesCDC`するために必要なアクセス許可をサービスにリンクされたロールに付与します。



**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。




+ `CloudWatch` – service-linked-roleの [AWSServiceRoleForAmazonKeyspacesCDC](using-service-linked-roles-CDC-streams.md#service-linked-role-permissions-CDC-streams) が、ユーザーに代わって Amazon Keyspaces CDC ストリームから CloudWatch アカウントの にメトリクスデータをパブリッシュ`"cloudwatch:namespace": "AWS/Cassandra"`できるようにします。



`JSON` 形式のポリシーを確認するには、[KeyspacesCDCServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/KeyspacesCDCServiceRolePolicy.html)」を参照してください。





## AWS マネージドポリシーに対する Amazon Keyspaces の更新
<a name="security-iam-awsmanpol-updates"></a>



このサービスがこれらの変更の追跡を開始してからの Amazon Keyspaces の AWS マネージドポリシーの更新に関する詳細を表示します。このページへの変更に関する自動アラートについては、[Amazon Keyspaces (Apache Cassandra 向け) のドキュメント履歴](doc-history.md) ページの RSS フィードを購読してください。




| 変更 | 説明 | 日付 | 
| --- | --- | --- | 
|  [KeyspacesCDCServiceRolePolicy](#security-iam-awsmanpol-KeyspacesCDCServiceRolePolicy) – 新しいポリシー  |  Amazon Keyspaces は、ユーザーに代わって Amazon Keyspaces CDC ストリームメトリクスデータを CloudWatch に発行`AWSServiceRoleForAmazonKeyspacesCDC`するために必要なアクセス許可をサービスにリンク`KeyspacesCDCServiceRolePolicy`されたロールに付与する新しい管理ポリシーを追加しました。詳細については、「[Amazon Keyspaces CDC ストリームのロールの使用](using-service-linked-roles-CDC-streams.md)」を参照してください。  | 2025 年 7 月 2 日 | 
|  [AmazonKeyspacesReadOnlyAccess\$1v2](#security-iam-awsmanpol-AmazonKeyspacesReadOnlyAccess_v2) – 既存のポリシーの更新  |  Amazon Keyspaces は、IAM プリンシパルが Amazon Keyspaces CDC ストリームを表示できるようにする新しいアクセス許可を追加しました。詳細については、「[Amazon Keyspaces で CDC ストリームを表示する](keyspaces-view-cdc.md)」を参照してください。  | 2025 年 7 月 2 日 | 
|  [AmazonKeyspacesReadOnlyAccess](#security-iam-awsmanpol-AmazonKeyspacesReadOnlyAccess) — 既存のポリシーに対する更新  |  Amazon Keyspaces は、IAM プリンシパルが Amazon Keyspaces CDC ストリームを表示できるようにする新しいアクセス許可を追加しました。詳細については、「[Amazon Keyspaces で CDC ストリームを表示する](keyspaces-view-cdc.md)」を参照してください。  | 2025 年 7 月 2 日 | 
|  [AmazonKeyspacesFullAccess](#security-iam-awsmanpol-AmazonKeyspacesFullAccess) — 既存のポリシーに対する更新  |  Amazon Keyspaces は、サービスにリンクされたロール [AWSServiceRoleForAmazonKeyspacesCDC](using-service-linked-roles-CDC-streams.md#service-linked-role-permissions-CDC-streams) の `KeyspacesCDCServiceRolePolicy`マネージドポリシーを作成し、管理者がテーブルのストリームを有効にするときに必要なアクセス許可を追加しました。 Amazon Keyspaces は、サービスにリンクされたロール`AWSServiceRoleForAmazonKeyspacesCDC`を使用して、ユーザーに代わって CloudWatch メトリクスをアカウントに発行します。詳細については、「[Amazon Keyspaces CDC ストリームのロールの使用](using-service-linked-roles-CDC-streams.md)」を参照してください。  | 2025 年 7 月 2 日 | 
|  [AmazonKeyspacesFullAccess](#security-iam-awsmanpol-AmazonKeyspacesFullAccess) — 既存のポリシーに対する更新  |  Amazon Keyspaces は、サービスにリンクされたロール [AWSServiceRoleForAmazonKeyspacesReplication](using-service-linked-roles-multi-region-replication.md#service-linked-role-permissions-multi-region-replication) `KeyspacesReplicationServiceRolePolicy`の を更新し、管理者が単一またはマルチリージョンのキースペース AWS リージョン に新しい を追加するときに必要なアクセス許可を追加しました。 Amazon Keyspaces は、サービスにリンクされたロール`AWSServiceRoleForAmazonKeyspacesReplication`を使用して、ユーザーに代わってテーブル、その設定、データをレプリケートします。詳細については、「[Amazon Keyspaces のマルチリージョンレプリケーションでのロールの使用](using-service-linked-roles-multi-region-replication.md)」を参照してください。  | 2024 年 11 月 19 日 | 
|  [AmazonKeyspacesFullAccess](#security-iam-awsmanpol-AmazonKeyspacesFullAccess) — 既存のポリシーに対する更新  |  Amazon Keyspaces は、管理者が単一またはマルチリージョンのキースペースに新しいリージョンを追加したときに、Amazon Keyspaces がサービスにリンクされたロールを作成できるようにする新しいアクセス許可を追加しました。 Amazon Keyspaces は、サービスにリンクされたロールを使用して、ユーザーに代わってデータレプリケーションタスクを実行します。詳細については、「[Amazon Keyspaces のマルチリージョンレプリケーションでのロールの使用](using-service-linked-roles-multi-region-replication.md)」を参照してください。  | 2023 年 10 月 3 日 | 
|  [AmazonKeyspacesReadOnlyAccess\$1v2](#security-iam-awsmanpol-AmazonKeyspacesReadOnlyAccess) – 新しいポリシー  |  Amazon Keyspaces は、インターフェイス VPC エンドポイントを介して Amazon Keyspaces に接続し、Amazon EC2 インスタンスにアクセスしてネットワーク情報を検索するクライアントに読み取り専用アクセス許可を追加する新しいポリシーを作成しました。 Amazon Keyspaces は、接続負荷を分散するために、使用可能なインターフェイス VPC エンドポイントを `system.peers` テーブルに保存します。詳細については、「[インターフェイス VPC エンドポイントと Amazon Keyspaces の使用](vpc-endpoints.md)」を参照してください。  | 2023 年 9 月 12 日 | 
|  [AmazonKeyspacesFullAccess](#security-iam-awsmanpol-AmazonKeyspacesFullAccess) — 既存のポリシーに対する更新  |  Amazon Keyspaces で、管理者がマルチリージョンキー空間を作成する際に、Amazon Keyspaces でサービスにリンクされたロールを作成できる新しい権限を追加しました。 Amazon Keyspaces は、サービスにリンクされたロール`AWSServiceRoleForAmazonKeyspacesReplication`を使用して、ユーザーに代わってデータレプリケーションタスクを実行します。詳細については、「[Amazon Keyspaces のマルチリージョンレプリケーションでのロールの使用](using-service-linked-roles-multi-region-replication.md)」を参照してください。  | 2023 年 6 月 5 日 | 
|  [AmazonKeyspacesReadOnlyAccess](#security-iam-awsmanpol-AmazonKeyspacesReadOnlyAccess) — 既存のポリシーに対する更新  |  Amazon Keyspaces で、ユーザーが CloudWatch を使用してテーブルの請求対象サイズを表示できる新しい権限を追加しました。 Amazon Keyspaces は Amazon CloudWatch と統合されているため、請求対象となるテーブルのサイズをモニタリングできます。詳細については、「[Amazon Keyspaces のメトリクス](metrics-dimensions.md#keyspaces-metrics-dimensions)」を参照してください。  | 2022 年 7 月 7 日 | 
|  [AmazonKeyspacesFullAccess](#security-iam-awsmanpol-AmazonKeyspacesFullAccess) — 既存のポリシーに対する更新  |  Amazon Keyspaces で、ユーザーが CloudWatch でテーブルの請求対象サイズを表示できる新しい権限を追加しました。 Amazon Keyspaces は Amazon CloudWatch と統合されているため、請求対象となるテーブルのサイズをモニタリングできます。詳細については、「[Amazon Keyspaces のメトリクス](metrics-dimensions.md#keyspaces-metrics-dimensions)」を参照してください。  | 2022 年 7 月 7 日 | 
|  [AmazonKeyspacesReadOnlyAccess](#security-iam-awsmanpol-AmazonKeyspacesReadOnlyAccess) — 既存のポリシーに対する更新  |  Amazon Keyspaces は、ユーザーが Amazon Keyspaces の保管時の暗号化用に設定された AWS KMS キーを表示できるようにする新しいアクセス許可を追加しました。 Amazon Keyspaces 保管時の暗号化は と統合 AWS KMS され、保管時のデータの暗号化に使用される暗号化キーを保護および管理します。Amazon Keyspaces 用に設定された AWS KMS キーを表示するには、読み取り専用アクセス許可が追加されました。  | 2021 年 6 月 1 日 | 
|  [AmazonKeyspacesFullAccess](#security-iam-awsmanpol-AmazonKeyspacesFullAccess) — 既存のポリシーに対する更新  |  Amazon Keyspaces は、ユーザーが Amazon Keyspaces の保管時の暗号化用に設定された AWS KMS キーを表示できるようにする新しいアクセス許可を追加しました。 Amazon Keyspaces 保管時の暗号化は と統合 AWS KMS され、保管時のデータの暗号化に使用される暗号化キーを保護および管理します。Amazon Keyspaces 用に設定された AWS KMS キーを表示するには、読み取り専用アクセス許可が追加されました。  | 2021 年 6 月 1 日 | 
|  Amazon Keyspaces で変更の追跡が開始されました。  |  Amazon Keyspaces は、 AWS 管理ポリシーの変更の追跡を開始しました。  | 2021 年 6 月 1 日 | 

# Amazon Keyspaces のアイデンティティとアクセスに関するトラブルシューティング
<a name="security_iam_troubleshoot"></a>

次の情報は、Amazon Keyspaces と IAM の使用に伴って発生する可能性がある一般的な問題の診断や修復に使用できます。

**Topics**
+ [Amazon Keyspaces でアクションを実行するための認可を受けていません。](#security_iam_troubleshoot-no-permissions)
+ [IAM ユーザーまたはロールを変更しましたが、その変更がすぐには反映されませんでした](#security_iam_troubleshoot-effect)
+ [Amazon Keyspaces ポイントインタイムリカバリ (PITR) を使用してテーブルを復元できません。](#security_iam_troubleshoot-pitr)
+ [iam: PassRole を実行する権限がない](#security_iam_troubleshoot-passrole)
+ [管理者として Amazon Keyspaces へのアクセスを他のユーザーに許可したい](#security_iam_troubleshoot-admin-delegate)
+ [自分の 以外のユーザーに Amazon Keyspaces リソース AWS アカウント へのアクセスを許可したい](#security_iam_troubleshoot-cross-account-access)

## Amazon Keyspaces でアクションを実行するための認可を受けていません。
<a name="security_iam_troubleshoot-no-permissions"></a>

にアクションを実行する権限がないと AWS マネジメントコンソール 通知された場合は、管理者に連絡してサポートを依頼する必要があります。担当の管理者はお客様のユーザー名とパスワードを発行した人です。

以下のエラーの例は、`mateojackson` IAM ユーザーがコンソールを使用して*テーブル*の詳細を表示したときに、そのテーブルの `cassandra:Select` 権限を持っていない場合に発生します。

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: cassandra:Select on resource: mytable
```

この場合、Mateo は、`cassandra:Select` アクションを使用して `mytable` リソースへのアクセスが許可されるように、管理者にポリシーの更新を依頼します。

## IAM ユーザーまたはロールを変更しましたが、その変更がすぐには反映されませんでした
<a name="security_iam_troubleshoot-effect"></a>

IAM ポリシーの変更が、Amazon Keyspaces への接続が既存で確立されているアプリケーションに反映されるまで、最長で 10 分かかる場合があります。アプリケーションで新しい接続が確立された場合は、IAM ポリシーの変更がすぐに反映されます。既存の IAM ユーザーまたはロールに変更を加えても、その変更がすぐに反映されない場合は、10 分ほど待つか、Amazon Keyspaces への接続を切って接続し直してください。

## Amazon Keyspaces ポイントインタイムリカバリ (PITR) を使用してテーブルを復元できません。
<a name="security_iam_troubleshoot-pitr"></a>

ポイントインタイムリカバリ (PITR) を使用して Amazon Keyspaces テーブルの復元を試みた際に、復元プロセスが開始しても正常に完了しない場合は、復元プロセスに必要な権限の一部が設定されていない可能性があります。管理者に問い合わせて、Amazon Keyspaces でテーブルを復元できるようにポリシーを更新してもらう必要があります。

Amazon Keyspaces では、ユーザー権限に加えて、復元プロセス中にプリンシパルに代わってアクションを実行するための権限が必要になる場合があります。これは、テーブルが顧客管理キーで暗号化されている場合や、着信トラフィックを制限する IAM ポリシーを使用している場合です。例えば、IAM ポリシーで条件キーを使用してソーストラフィックを特定のエンドポイントまたは IP 範囲に制限している場合、復元オペレーションは失敗します。プリンシパルの代わりに Amazon Keyspaces によってテーブルの復元オペレーションが実行されるようにするには、IAM ポリシーに `aws:ViaAWSService` グローバル条件キーを追加する必要があります。

テーブルを復元するための権限の詳細については、「[Amazon Keyspaces PITR のテーブル復元用の IAM アクセス許可を設定する](howitworks_restore_permissions.md)」を参照してください。

## iam: PassRole を実行する権限がない
<a name="security_iam_troubleshoot-passrole"></a>

`iam:PassRole` アクションを実行する権限がないというエラーが表示された場合は、ポリシーを更新して Amazon Keyspaces にロールを渡せるようにする必要があります。

一部の AWS のサービス では、新しいサービスロールまたはサービスにリンクされたロールを作成する代わりに、そのサービスに既存のロールを渡すことができます。そのためには、サービスにロールを渡すアクセス許可が必要です。

以下の例のエラーは、`marymajor` という IAM ユーザーがコンソールを使用して Amazon Keyspaces でアクションを実行しようする場合に発生します。ただし、このアクションをサービスが実行するには、サービスロールから付与された権限が必要です。Mary には、ロールをサービスに渡すアクセス許可がありません。

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

この場合、Mary のポリシーを更新してメアリーに `iam:PassRole` アクションの実行を許可する必要があります。

サポートが必要な場合は、 AWS 管理者にお問い合わせください。サインイン資格情報を提供した担当者が管理者です。

## 管理者として Amazon Keyspaces へのアクセスを他のユーザーに許可したい
<a name="security_iam_troubleshoot-admin-delegate"></a>

他のユーザーに Amazon Keyspaces へのアクセスを認めるには、アクセス権を必要とするユーザーやアプリケーションにアクセス許可を付与する必要があります。 AWS IAM アイデンティティセンター を使用してユーザーとアプリケーションを管理する場合は、アクセス許可セットをユーザーやグループに割り当て、それぞれのアクセスレベルを定義します。アクセス許可セットは、ユーザーまたはアプリケーションに関連付けられている IAM ロールに自動的に IAM ポリシーを作成して割り当てます。詳細については、「*AWS IAM アイデンティティセンター ユーザーガイド*」の「[アクセス許可セット](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)」を参照してください。

IAM アイデンティティセンターを使用していない場合は、アクセスを必要としているユーザーまたはアプリケーションの IAM エンティティ (ユーザーまたはロール) を作成する必要があります。次に、Amazon Keyspaces の適切な権限を付与するポリシーを、そのエンティティにアタッチする必要があります。アクセス許可が付与されたら、ユーザーまたはアプリケーション開発者に認証情報を提供します。これらの認証情報を使用して AWSにアクセスします。IAM ユーザー、グループ、ポリシー、アクセス許可の作成の詳細については、「*IAM ユーザーガイド*」の「[IAM アイデンティティ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html)」と「[IAM のポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)」を参照してください。

## 自分の 以外のユーザーに Amazon Keyspaces リソース AWS アカウント へのアクセスを許可したい
<a name="security_iam_troubleshoot-cross-account-access"></a>

他のアカウントのユーザーや組織外の人が、リソースにアクセスするために使用できるロールを作成できます。ロールの引き受けを委託するユーザーを指定できます。リソースベースのポリシーまたはアクセスコントロールリスト (ACL) をサポートするサービスの場合、それらのポリシーを使用して、リソースへのアクセスを付与できます。

詳細については、以下を参照してください:
+ Amazon Keyspaces がこれらの機能をサポートしているかどうかを確認するには、「[Amazon Keyspaces で IAM が機能する仕組み](security_iam_service-with-iam.md)」を参照してください。
+ 所有 AWS アカウント している のリソースへのアクセスを提供する方法については、IAM *ユーザーガイド*の[「所有 AWS アカウント している別の の IAM ユーザーへのアクセスを提供する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html)」を参照してください。
+ リソースへのアクセスをサードパーティーに提供する方法については AWS アカウント、*IAM ユーザーガイド*の[「サードパーティー AWS アカウント が所有する へのアクセスを提供する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)」を参照してください。
+ ID フェデレーションを介してアクセスを提供する方法については、*IAM ユーザーガイド* の [外部で認証されたユーザー (ID フェデレーション) へのアクセスの許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) を参照してください。
+ クロスアカウントアクセスにおけるロールとリソースベースのポリシーの使用方法の違いについては、「*IAM ユーザーガイド*」の「[IAM でのクロスアカウントのリソースへのアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)」を参照してください。

# Amazon Keyspaces のサービスリンクロールの使用
<a name="using-service-linked-roles"></a>

Amazon Keyspaces (Apache Cassandra 用) は、 AWS Identity and Access Management (IAM) [サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用します。サービスリンクロールは、Amazon Keyspaces に直接リンクされた特殊なタイプの IAM ロールです。サービスにリンクされたロールは Amazon Keyspaces によって事前定義されており、サービスがユーザーに代わって他の AWS サービスを呼び出すために必要なすべてのアクセス許可が含まれています。

サービスにリンクされたロールをサポートする他のサービスの詳細については、[AWS 「IAM と連携するサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照し、「サービス**にリンクされたロール**」列で**「はい**」があるサービスを探します。サービスリンクロールに関するドキュメントをサービスで表示するには、リンクで **[はい]** を選択します。

**Topics**
+ [Amazon Keyspaces アプリケーションの自動スケーリングにロールを使用](using-service-linked-roles-app-auto-scaling.md)
+ [Amazon Keyspaces のマルチリージョンレプリケーションでのロールの使用](using-service-linked-roles-multi-region-replication.md)
+ [Amazon Keyspaces CDC ストリームのロールの使用](using-service-linked-roles-CDC-streams.md)

# Amazon Keyspaces アプリケーションの自動スケーリングにロールを使用
<a name="using-service-linked-roles-app-auto-scaling"></a>

Amazon Keyspaces (Apache Cassandra 用) は、 AWS Identity and Access Management (IAM) [サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用します。サービスリンクロールは、Amazon Keyspaces に直接リンクされた特殊なタイプの IAM ロールです。サービスにリンクされたロールは Amazon Keyspaces によって事前定義されており、サービスがユーザーに代わって他の AWS サービスを呼び出すために必要なすべてのアクセス許可が含まれています。

必要な許可を手動で追加する必要がないため、サービスリンクロールは Amazon Keyspaces のセットアップを容易にします。サービスリンクロールの許可は Amazon Keyspaces が定義し、特に定義されない限り、Amazon Keyspaces のみがそのロールを引き受けることができます。定義されるアクセス許可には、信頼ポリシーと許可ポリシーが含まれており、その許可ポリシーを他の IAM エンティティにアタッチすることはできません。

サービスリンクロールを削除するには、まずその関連リソースを削除します。これは、リソースにアクセスするための許可を不用意に削除できないため、Amazon Keyspaces リソースを保護できます。

## Amazon Keyspaces のサービスリンクロール権限
<a name="service-linked-role-permissions-app-auto-scaling"></a>

Amazon Keyspaces では、**AWSServiceRoleForApplicationAutoScaling\$1CassandraTable** という名前のサービスリンクロールを使用して、ユーザーに代わってアプリケーションオートスケーリングにより Amazon Keyspaces と Amazon CloudWatch が呼び出されるようにします。

AWSServiceRoleForApplicationAutoScaling\$1CassandraTable サービスリンクロールは、以下のサービスを信頼してロールを引き受けます。
+ `cassandra.application-autoscaling.amazonaws.com`

このロール権限ポリシーは、アプリケーションオートスケーリングにより、指定された Amazon Keyspaces リソースで以下のアクションが実行されるようにします。
+ アクション: `cassandra:Select`。対象リソース: `arn:*:cassandra:*:*:/keyspace/system/table/*`
+ アクション: リソース `arn:*:cassandra:*:*:/keyspace/system_schema/table/*` での `cassandra:Select`
+ アクション: リソース `arn:*:cassandra:*:*:/keyspace/system_schema_mcs/table/*` での `cassandra:Select`
+ アクション: リソース `arn:*:cassandra:*:*:"*"` での `cassandra:Alter`

## Amazon Keyspaces 向けのサービスリンクロールの作成
<a name="create-service-linked-role-app-auto-scaling"></a>

Amazon Keyspaces のオートスケーリング用のサービスリンクロールについては、手動で作成する必要はありません。、CQL AWS マネジメントコンソール、、 AWS CLIまたは AWS API を使用してテーブルで Amazon Keyspaces 自動スケーリングを有効にすると、Application Auto Scaling によってサービスにリンクされたロールが作成されます。

このサービスリンクロールを削除した後で再度作成する必要が生じた場合は同じ方法でアカウントにロールを再作成できます。テーブルで Amazon Keyspaces の自動スケーリングを有効にすると、Application Auto Scaling が再びサービスリンクロールを自動作成します。

**重要**  
 このサービスリンクロールはこのロールでサポートされている機能を使用する別のサービスでアクションが完了した場合にアカウントに表示されます。詳細については、[「新しいロールが AWS アカウント](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_roles.html#troubleshoot_roles_new-role-appeared)」を参照してください。

## Amazon Keyspaces のサービスリンクロールの編集
<a name="edit-service-linked-role-app-auto-scaling"></a>

Amazon Keyspaces では、サービスリンクロール AWSServiceRoleForApplicationAutoScaling\$1CassandraTable を編集できません。サービスリンクロールの作成後は、さまざまなエンティティがロールを参照する可能性があるため、ロール名を変更することはできません。ただし、IAM を使用してロールの説明を編集することはできます。詳細については、「*IAM ユーザーガイド*」の「[サービスリンクロールの編集](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)」を参照してください。

## Amazon Keyspaces のサービスリンクロールの削除
<a name="delete-service-linked-role-app-auto-scaling"></a>

サービスリンクロールを必要とする機能やサービスが不要になった場合は、ロールを削除することをお勧めします。そうすることで、使用していないエンティティがアクティブにモニタリングまたはメンテナンスされることがなくなります。ただし、サービスにリンクされたロールを手動で削除する AWS リージョン には、まずアカウント内のすべてのテーブルですべてのテーブルの自動スケーリングを無効にする必要があります。Amazon Keyspaces テーブルのオートスケーリングを無効にするには、「[テーブルの Amazon Keyspaces 自動スケーリングを無効にする](autoscaling.turnoff.md)」を参照してください。

**注記**  
リソースの変更を試みた時点で、Amazon Keyspaces のオートスケーリングでロールが使用されていると、登録解除が失敗する可能性があります。その場合は、数分待ってからオペレーションを再試行してください。

**IAM を使用してサービスリンクロールを手動で削除するには**

IAM コンソール、 AWS CLI、または AWS API を使用して、AWSServiceRoleForApplicationAutoScaling\$1CassandraTable サービスにリンクされたロールを削除します。詳細については、「[IAM ユーザーガイド](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)」の「*サービスリンクロールの削除*」を参照してください。

**注記**  
Amazon Keyspaces のオートスケーリングで使用されたサービスリンクロールを削除するには、まずアカウント内のすべてのテーブルでオートスケーリングを無効にする必要があります。

## Amazon Keyspaces サービスにリンクされたロールのサポートされているリージョン
<a name="slr-regions-app-auto-scaling"></a>

Amazon Keyspaces は、サービスが利用可能なすべてのリージョンでサービスにリンクされたロールの使用をサポートします。詳細については、[「Service endpoints for Amazon Keyspaces」](https://docs.aws.amazon.com/keyspaces/latest/devguide/programmatic.endpoints.html)(Amazon Keyspaces のサービスエンドポイント) を参照してください。

# Amazon Keyspaces のマルチリージョンレプリケーションでのロールの使用
<a name="using-service-linked-roles-multi-region-replication"></a>

Amazon Keyspaces (Apache Cassandra 用) は、 AWS Identity and Access Management (IAM) [サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用します。サービスリンクロールは、Amazon Keyspaces に直接リンクされた特殊なタイプの IAM ロールです。サービスにリンクされたロールは Amazon Keyspaces によって事前定義されており、サービスがユーザーに代わって他の AWS サービスを呼び出すために必要なすべてのアクセス許可が含まれています。

必要な許可を手動で追加する必要がないため、サービスリンクロールは Amazon Keyspaces のセットアップを容易にします。サービスリンクロールの許可は Amazon Keyspaces が定義し、特に定義されない限り、Amazon Keyspaces のみがそのロールを引き受けることができます。定義されるアクセス許可には、信頼ポリシーと許可ポリシーが含まれており、その許可ポリシーを他の IAM エンティティにアタッチすることはできません。

サービスリンクロールを削除するには、まずその関連リソースを削除します。これは、リソースにアクセスするための許可を不用意に削除できないため、Amazon Keyspaces リソースを保護できます。

## Amazon Keyspaces のサービスリンクロール権限
<a name="service-linked-role-permissions-multi-region-replication"></a>

Amazon Keyspaces は、**AWSServiceRoleForAmazonKeyspacesReplication** という名前のサービスにリンクされたロールを使用して、Amazon Keyspaces がユーザーに代わってキースペース AWS リージョン に新しい を追加し、テーブルとそのすべてのデータと設定を新しいリージョンにレプリケートできるようにします。このロールでは、Amazon Keyspaces がユーザーに代わってすべてのリージョンのテーブルへの書き込みをレプリケートすることもできます。

AWSServiceRoleForAmazonKeyspacesReplication サービスにリンクされたロールは、以下のサービスを信頼してロールを引き受けます。
+ `replication.cassandra.amazonaws.com`

KeyspacesReplicationServiceRolePolicy という名前のロールのアクセス許可ポリシーは、以下のアクションを実行することを Amazon Keyspaces に許可します。
+ アクション: `cassandra:Select` 
+ アクション: `cassandra:SelectMultiRegionResource` 
+ アクション: `cassandra:Modify` 
+ アクション: `cassandra:ModifyMultiRegionResource` 
+ アクション: `cassandra:AlterMultiRegionResource`
+ アクション: `application-autoscaling:RegisterScalableTarget` – Amazon Keyspaces は、Auto Scaling が有効になっているプロビジョニングモードで単一のリージョンテーブルにレプリカを追加するときに、アプリケーションの Auto Scaling アクセス許可を使用します。
+ アクション: `application-autoscaling:DeregisterScalableTarget` 
+ アクション: `application-autoscaling:DescribeScalableTargets` 
+ アクション: `application-autoscaling:PutScalingPolicy` 
+ アクション: `application-autoscaling:DescribeScalingPolicies` 
+ アクション: `cassandra:Alter`
+ アクション: `cloudwatch:DeleteAlarms`
+ アクション: `cloudwatch:DescribeAlarms`
+ アクション: `cloudwatch:PutMetricAlarm`

Amazon Keyspaces esのサービスにリンクされたロール AWSServiceRoleForAmazonKeyspacesReplication は、ポリシーで指定された Amazon リソースネーム (ARN)「arn: \$1」に対するアクセス権「アクション:」を提供しますが、Amazon Keyspaces はアカウントの ARN を提供します。

サービスにリンクされたロール AWSServiceRoleForAmazonKeyspacesReplication を作成するアクセス許可は、 `AmazonKeyspacesFullAccess`マネージドポリシーに含まれています。詳細については、「[AWS マネージドポリシー: AmazonKeyspacesFullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonKeyspacesFullAccess)」を参照してください。

ユーザー、グループ、またはロールにサービスリンクロールの作成、編集、または削除を許可するには、アクセス許可を設定する必要があります。詳細については*IAM ユーザーガイド* の「[サービスにリンクされた役割のアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)」を参照してください。

## Amazon Keyspaces 向けのサービスリンクロールの作成
<a name="create-service-linked-role-multi-region-replication"></a>

サービスにリンクされたロールは手動で作成できません。 AWS マネジメントコンソール、、 AWS CLIまたは AWS API でマルチリージョンキースペースを作成すると、Amazon Keyspaces によってサービスにリンクされたロールが作成されます。

このサービスリンクロールを削除した後で再度作成する必要が生じた場合は同じ方法でアカウントにロールを再作成できます。マルチリージョンキースペース を作成すると、Amazon Keyspaces によってサービスにリンクされたロールが再度作成されます。

## Amazon Keyspaces のサービスリンクロールの編集
<a name="edit-service-linked-role-multi-region-replication"></a>

Amazon Keyspaces では、AWSServiceRoleForAmazonKeyspacesReplication というサービスにリンクされたロールを編集できません。サービスリンクロールの作成後は、さまざまなエンティティがロールを参照する可能性があるため、ロール名を変更することはできません。ただし、IAM を使用してロールの説明を編集することはできます。詳細については、「*IAM ユーザーガイド*」の「[サービスリンクロールの編集](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)」を参照してください。

## Amazon Keyspaces のサービスリンクロールの削除
<a name="delete-service-linked-role-multi-region-replication"></a>

サービスリンクロールを必要とする機能やサービスが不要になった場合は、ロールを削除することをお勧めします。そうすることで、モニタリングや保守が積極的に行われていない未使用のエンティティを排除できます。ただし、サービスにリンクされたロールを手動で削除する AWS リージョン には、まずアカウント内のすべてのマルチリージョンキースペースをすべて削除する必要があります。

### サービスリンクロールのクリーンアップ
<a name="service-linked-role-review-before-delete-multi-region-replication"></a>

IAM を使用してサービスにリンクされたロールを削除するには、最初に、そのロールで使用されているマルチリージョンキースペースとテーブルをすべて削除する必要があります。

**注記**  
リソースを削除しようとしているときに Amazon Keyspaces サービスがロールを使用している場合は、削除が失敗する可能性があります。失敗した場合は数分待ってから操作を再試行してください。

**AWSServiceRoleForAmazonKeyspacesReplication (コンソール) が使用している Amazon Keyspaces リソースを削除するには**

1. にサインインし AWS マネジメントコンソール、[https://console.aws.amazon.com/keyspaces/home](https://console.aws.amazon.com/keyspaces/home) で Amazon Keyspaces コンソールを開きます。

1. 左側のパネルから [**Keyspaces**] を選択します。

1. リストからマルチリージョンキースペースをすべて選択します。

1. [**削除**] を選択して削除を確認し、[**キースペースを削除**] を選択します。

次のいずれかの方法で、マルチリージョンキースペースをプログラムで削除することもできます。
+ Cassandra クエリ言語 (CQL) [DROP KEYSPACE](cql.ddl.keyspace.md#cql.ddl.keyspace.drop) ステートメント
+ CLI の [delete-keyspace](https://docs.aws.amazon.com/cli/latest/reference/keyspaces/delete-keyspace.html) AWS オペレーション。
+ Amazon Keyspaces API の [DeleteKeyspace](https://docs.aws.amazon.com/keyspaces/latest/APIReference/API_DeleteKeyspace.html) 操作。

### サービスリンク役割の手動による削除
<a name="slr-manual-delete-multi-region-replication"></a>

IAM コンソール、 AWS CLI、または AWS API を使用して、AWSServiceRoleForAmazonKeyspacesReplication サービスにリンクされたロールを削除します。詳細については、「*IAM ユーザーガイド*」の「[サービスにリンクされたロールの削除](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)」を参照してください。

## Amazon Keyspaces サービスにリンクされたロールのサポートされているリージョン
<a name="slr-regions-multi-region-replication"></a>

Amazon Keyspaces は、サービスを利用できるすべてのリージョンで、サービスにリンクされたロールの使用をサポートしているわけではありません。AWSServiceRoleForAmazonKeyspacesReplication ロールは、以下のリージョンで使用できます。


****  

| リージョン名 | リージョン識別子 | Amazon Keyspaces でのサポート | 
| --- | --- | --- | 
| 米国東部 (バージニア北部) | us-east-1 | はい | 
| 米国東部 (オハイオ) | us-east-2 | はい | 
| 米国西部 (北カリフォルニア) | us-west-1 | はい | 
| 米国西部 (オレゴン)  | us-west-2 | はい | 
| アジアパシフィック (ムンバイ) | ap-south-1 | はい | 
| アジアパシフィック (大阪) | ap-northeast-3 | はい | 
| アジアパシフィック (ソウル) | ap-northeast-2 | はい | 
| アジアパシフィック (シンガポール) | ap-southeast-1 | はい | 
| アジアパシフィック (シドニー) | ap-southeast-2 | はい | 
| アジアパシフィック (東京) | ap-northeast-1 | はい | 
| カナダ (中部) | ca-central-1 | はい | 
| 欧州 (フランクフルト) | eu-central-1 | はい | 
| 欧州 (アイルランド) | eu-west-1 | はい | 
| 欧州 (ロンドン) | eu-west-2 | はい | 
| 欧州 (パリ) | eu-west-3 | はい | 
| アフリカ (ケープタウン) | af-south-1 | はい | 
| 南米 (サンパウロ) | sa-east-1 | はい | 
| AWS GovCloud (米国東部) | us-gov-east-1 | いいえ | 
| AWS GovCloud (米国西部) | us-gov-west-1 | いいえ | 

# Amazon Keyspaces CDC ストリームのロールの使用
<a name="using-service-linked-roles-CDC-streams"></a>

Amazon Keyspaces (Apache Cassandra 用) は、 AWS Identity and Access Management (IAM) [サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用します。サービスリンクロールは、Amazon Keyspaces に直接リンクされた特殊なタイプの IAM ロールです。サービスにリンクされたロールは Amazon Keyspaces によって事前定義されており、サービスがユーザーに代わって他の AWS サービスを呼び出すために必要なすべてのアクセス許可が含まれています。

必要な許可を手動で追加する必要がないため、サービスリンクロールは Amazon Keyspaces のセットアップを容易にします。サービスリンクロールの許可は Amazon Keyspaces が定義し、特に定義されない限り、Amazon Keyspaces のみがそのロールを引き受けることができます。定義される許可は信頼ポリシーと許可ポリシーに含まれており、その許可ポリシーを他の IAM エンティティにアタッチすることはできません。

サービスにリンクされたロールは削除できません。

## Amazon Keyspaces のサービスリンクロール権限
<a name="service-linked-role-permissions-CDC-streams"></a>

Amazon Keyspaces は、**AWSServiceRoleForAmazonKeyspacesCDC** という名前のサービスにリンクされたロールを使用して、Amazon Keyspaces CDC ストリームがユーザーに代わって CloudWatch メトリクスをアカウントに発行できるようにします。

AWSServiceRoleForAmazonKeyspacesCDC サービスにリンクされたロールは、次のサービスを信頼してロールを引き受けます。
+ `cassandra-streams.amazonaws.com`

[KeyspacesCDCServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/KeyspacesCDCServiceRolePolicy.html) という名前のロールアクセス許可ポリシーにより、Amazon Keyspaces は CloudWatch 名前空間 のリソースに対して次のアクションを実行できます`AWS/Cassandra`。
+ アクション: `cloudwatch:PutMetricData`。対象リソース: `*`

  AWSServiceRoleForAmazonKeyspacesCDC には、次の条件に一致するすべてのリソースに対するアクセス許可 Action: cloudwatch:PutMetricData が用意されています。 `"cloudwatch:namespace": "AWS/Cassandra"`

KeyspacesCDCServiceRolePolicy の詳細については、「」を参照してください[AWS マネージドポリシー: KeyspacesCDCServiceRolePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-KeyspacesCDCServiceRolePolicy)。

サービスにリンクされたロール AWSServiceRoleForAmazonKeyspacesCDC を自動的に作成するテーブルの CDC ストリームを有効にするには、IAM プリンシパルに次のアクセス許可が必要です。

```
{
    "Sid": "KeyspacesCDCServiceLinkedRole",
    "Effect": "Allow",
    "Action": "iam:CreateServiceLinkedRole",
    "Resource": "arn:aws:iam::*:role/aws-service-role/cassandra-streams.amazonaws.com/AWSServiceRoleForAmazonKeyspacesCDC",
    "Condition": {
    "StringLike": {
        "iam:AWSServiceName": "cassandra-streams.amazonaws.com"
    }
}
```

サービスにリンクされたロール AWSServiceRoleForAmazonKeyspacesCDC を作成するアクセス許可は、 `AmazonKeyspacesFullAccess`マネージドポリシーに含まれています。詳細については、「[AWS マネージドポリシー: AmazonKeyspacesFullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonKeyspacesFullAccess)」を参照してください。

## Amazon Keyspaces 向けのサービスリンクロールの作成
<a name="create-service-linked-role-CDC-streams"></a>

Amazon Keyspaces CDC ストリームのサービスにリンクされたロールを手動で作成する必要はありません。、CQL AWS マネジメントコンソール、、 AWS CLIまたは AWS API を使用してテーブルで Amazon Keyspaces CDC ストリームを有効にすると、Amazon Keyspaces によってサービスにリンクされたロールが作成されます。

このサービスリンクロールを削除した後で再度作成する必要が生じた場合は同じ方法でアカウントにロールを再作成できます。テーブルの Amazon Keyspaces CDC ストリームを有効にすると、Amazon Keyspaces によってサービスにリンクされたロールが再度作成されます。

## Amazon Keyspaces のサービスリンクロールの編集
<a name="edit-service-linked-role-CDC-streams"></a>

Amazon Keyspaces では、AWSServiceRoleForAmazonKeyspacesCDC サービスにリンクされたロールを編集することはできません。サービスリンクロールの作成後は、さまざまなエンティティがロールを参照する可能性があるため、ロール名を変更することはできません。ただし、IAM を使用してロールの説明を編集することはできます。詳細については、「*IAM ユーザーガイド*」の「[サービスリンクロールの編集](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)」を参照してください。

## Amazon Keyspaces サービスにリンクされたロールのサポートされているリージョン
<a name="slr-regions-CDC-streams"></a>

Amazon Keyspaces は、サービスが利用可能なすべてのリージョンでサービスにリンクされたロールの使用をサポートします。詳細については、「[AWS リージョンとエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html)」を参照してください。

# Amazon Keyspaces (Apache Cassandra 向け) のコンプライアンス検証
<a name="Keyspaces-compliance"></a>

サードパーティーの監査者は、複数の コンプライアンスプログラムの一環として、Amazon Keyspaces (Apache Cassandra 向け) のセキュリティと AWS コンプライアンスを評価します。具体的には次のとおりです。
+ ISO/IEC 27001:2013、27017:2015、27018:2019、および ISO/IEC 9001:2015。詳細については、「[AWS ISO and CSA STAR certifications and services (ISO および CSA STAR に関する認定およびサービス)](https://aws.amazon.com/compliance/iso-certified/)」 を参照してください。
+ System and Organization Controls (SOC)
+ Payment Card Industry (PCI)
+ Federal Risk and Authorization Management Program (FedRAMP) High
+ Health Insurance Portability and Accountability Act (HIPAA)

 AWS のサービス が特定のコンプライアンスプログラムの範囲内にあるかどうかを確認するには、[AWS のサービス 「コンプライアンスプログラムによるスコープ](https://aws.amazon.com/compliance/services-in-scope/)」の「コンプライアンス」を参照して、関心のあるコンプライアンスプログラムを選択します。一般的な情報については、[AWS 「コンプライアンスプログラム](https://aws.amazon.com/compliance/programs/)」を参照してください。

を使用して、サードパーティーの監査レポートをダウンロードできます AWS Artifact。詳細については、[「Downloading Reports in AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html)」を参照してください。

を使用する際のお客様のコンプライアンス責任 AWS のサービス は、お客様のデータの機密性、貴社のコンプライアンス目的、適用される法律および規制によって決まります。を使用する際のコンプライアンス責任の詳細については AWS のサービス、[AWS 「 セキュリティドキュメント](https://docs.aws.amazon.com/security/)」を参照してください。

# Amazon Keyspaces の耐障害性と災害対策
<a name="disaster-recovery-resiliency"></a>

 AWS グローバルインフラストラクチャは、 AWS リージョン およびアベイラビリティーゾーンを中心に構築されています。 は、低レイテンシー、高スループット、高度に冗長なネットワークで接続された、物理的に分離および分離された複数のアベイラビリティーゾーン AWS リージョン を提供します。アベイラビリティーゾーンでは、アベイラビリティーゾーン間で中断せずに、自動的にフェイルオーバーするアプリケーションとデータベースを設計および運用することができます。アベイラビリティーゾーンは、従来の単一または複数のデータセンターインフラストラクチャよりも可用性、耐障害性、およびスケーラビリティが優れています。

Amazon Keyspaces は、耐久性と高可用性 AWS リージョン を実現するために、同じ 内の複数の AWS アベイラビリティーゾーンでデータを自動的に 3 回レプリケートします。

 AWS リージョン およびアベイラビリティーゾーンの詳細については、[AWS 「 グローバルインフラストラクチャ](https://aws.amazon.com/about-aws/global-infrastructure/)」を参照してください。

Amazon Keyspaces には、 AWS グローバルインフラストラクチャに加えて、データの耐障害性とバックアップのニーズをサポートするのに役立つ機能がいくつか用意されています。

**マルチリージョンレプリケーション**  
Amazon Keyspaces は、データまたはアプリケーションを地理的距離を超えてレプリケートする必要がある場合に、マルチリージョンレプリケーションを提供します。Amazon Keyspaces テーブルは、選択したさまざまな にレプリケート AWS リージョン できます。詳細については、「[Amazon Keyspaces のマルチリージョンレプリケーション (Apache Cassandra 用）](multiRegion-replication.md)」を参照してください。

**ポイントインタイムリカバリ (PITR)**  
PITR を使用すると、テーブルデータを継続的にバックアップできるため、Amazon Keyspaces テーブルの偶発的な書き込みや削除などのオペレーションを防止できます。詳細については、「[Point-in-Time Recovery for Amazon Keyspaces (Amazon Keyspaces 向けポイントインタイムリカバリ) ](https://docs.aws.amazon.com/keyspaces/latest/devguide/PointInTimeRecovery.html)」を参照してください。

# Amazon Keyspaces のインフラストラクチャセキュリティ
<a name="infrastructure-security"></a>

マネージドサービスである Amazon Keyspaces (Apache Cassandra 向け) は、 AWS グローバルネットワークセキュリティで保護されています。 AWS セキュリティサービスと がインフラストラクチャ AWS を保護する方法については、[AWS 「 クラウドセキュリティ](https://aws.amazon.com/security/)」を参照してください。インフラストラクチャセキュリティのベストプラクティスを使用して環境を AWS 設計するには、*「Security Pillar AWS Well‐Architected Framework*」の[「Infrastructure Protection](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html)」を参照してください。

 AWS 公開された API コールを使用して、ネットワーク経由で Amazon Keyspaces にアクセスします。クライアントは以下をサポートする必要があります。
+ Transport Layer Security (TLS)。TLS 1.2 が必須で、TLS 1.3 をお勧めします。
+ DHE (楕円ディフィー・ヘルマン鍵共有) や ECDHE (楕円曲線ディフィー・ヘルマン鍵共有) などの完全前方秘匿性 (PFS) による暗号スイート。これらのモードは Java 7 以降など、ほとんどの最新システムでサポートされています。

Amazon Keyspaces では、2 つのクライアントリクエスト認証方法がサポートされています。1 つ目の方法では、サービス固有の認証情報を使用します。これは、特定の IAM ユーザーに対して生成されたパスワードベースの認証情報です。IAM コンソール、、または AWS API を使用して AWS CLI、パスワードを作成および管理できます。詳細については、「[Using IAM with Amazon Keyspaces (Amazon Keyspaces での IAM の使用)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mcs.html)」 を参照してください。

2 つ目の方法は、Cassandra 用のオープンソース DataStax Java ドライバーに対して認証プラグインを使用します。このプラグインでは、[IAM ユーザー、ロール、およびフェデレーテッドアイデンティティ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)により、[AWS 署名バージョン 4 署名プロセス (SigV4)](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) を使用して、Amazon Keyspaces (Apache Cassandra 向け) API リクエストに認証情報を追加することができます。詳細については、「[Amazon Keyspaces の AWS 認証情報の作成と設定](access.credentials.md)」を参照してください。

これらの API オペレーションは任意のネットワークの場所から呼び出すことができますが、Amazon Keyspaces はリソースベースのアクセスポリシーをサポートしており、ソース IP アドレスに基づく制限を含めることができます。Amazon Keyspaces ポリシーを使用して、特定の Amazon Virtual Private Cloud (Amazon VPC) エンドポイントまたは特定の VPCs からのアクセスを制御することもできます。これにより、実質的に、ネットワーク内の特定の VPC からのみ、特定の Amazon Keyspaces リソースへの AWS ネットワークアクセスが分離されます。

インターフェイス VPC エンドポイントを使用して、Amazon VPC と Amazon Keyspaces 間のトラフィックが Amazon ネットワークから離れないようにすることができます。インターフェイス VPC エンドポイントは AWS PrivateLink、Amazon VPC AWS 内のプライベート IPs を持つ Elastic Network Interface を使用して AWS サービス間のプライベート通信を可能にするテクノロジーを利用しています。詳細については、「[インターフェイス VPC エンドポイントと Amazon Keyspaces の使用](vpc-endpoints.md)」を参照してください。

# インターフェイス VPC エンドポイントと Amazon Keyspaces の使用
<a name="vpc-endpoints"></a>

インターフェイス VPC エンドポイントでは、Amazon VPC で実行されている仮想プライベートクラウド (VPC) と Amazon Keyspaces 間のプライベート通信ができます。インターフェイス VPC エンドポイントは AWS PrivateLink、VPC と AWS AWS サービス間のVPCs。

AWS PrivateLink は、ネットワークトラフィックが Amazon ネットワークを離れないように、VPC 内のプライベート IP アドレスを持つ Elastic Network Interface を使用してこれを可能にします。インターフェイス VPC エンドポイントは、インターネットゲートウェイ、NAT デバイス、VPN 接続、または Direct Connect 接続を必要としません。詳細については、[「Amazon Virtual Private CloudAmazon」](https://docs.aws.amazon.com/vpc/latest/userguide/)(仮想プライベートクラウド) と[「Interface VPC endpoints (AWS PrivateLink)」](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html)(インターフェイス VPC エンドポイント ()) を参照してください。

**Topics**
+ [Amazon Keyspaces 用インターフェイス VPC エンドポイントの使用](#using-interface-vpc-endpoints)
+ [インターフェイス VPC エンドポイント情報を含む `system.peers` テーブルエントリの入力](#system_peers)
+ [Amazon Keyspaces のインターフェイス VPC エンドポイントへのアクセスの制御](#interface-vpc-endpoints-policies)
+ [利用可能な状況](#availability)
+ [VPC エンドポイントポリシーと Amazon Keyspaces ポイントインタイムリカバリ (PITR)](#VPC_PITR_restore)
+ [よくあるエラーおよび警告](#vpc_troubleshooting)

## Amazon Keyspaces 用インターフェイス VPC エンドポイントの使用
<a name="using-interface-vpc-endpoints"></a>

Amazon Keyspaces と Amazon VPC リソース間のトラフィックがインターフェイス VPC エンドポイントを経由して流れるように、インターフェイス VPC エンドポイントを作成することができます。開始するには、[インターフェイスエンドポイントの作成](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html#create-interface-endpoint)手順を実行します。次に、前のステップで作成したエンドポイントに関連付けられたセキュリティグループを編集し、ポート 9142 のインバウンドルールを設定します。詳細については、[「Adding, removing, and updating rules」](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#AddRemoveRules)(ルールの追加、削除、および更新) を参照してください。

VPC エンドポイントを介して Amazon Keyspaces への接続を設定するステップバイステップのチュートリアルについては、「[チュートリアル: インターフェイス VPC エンドポイントを使用して Amazon Keyspaces に接続する](vpc-endpoints-tutorial.md)」を参照してください。VPC AWS アカウント 内の異なる のアプリケーションから分離された Amazon Keyspaces リソースのクロスアカウントアクセスを設定する方法については、「」を参照してください[VPC エンドポイントを使用して Amazon Keyspaces へのクロスアカウントアクセスを設定する](access.cross-account.md)。

## インターフェイス VPC エンドポイント情報を含む `system.peers` テーブルエントリの入力
<a name="system_peers"></a>

Apache Cassandra ドライバーにより、`system.peers` テーブルを使用してクラスターに関するノード情報のクエリが行われます。Cassandra ドライバーでは、ノード情報を使用して接続のロードバランスと再試行オペレーションが行われます。Amazon Keyspaces では、パブリックエンドポイント経由のクライアント接続のために、9 つのエントリが `system.peers` テーブルに自動で入力されます。

同様の機能を備えたインターフェイス VPC エンドポイントを経由するクライアント接続を実現するために、Amazon Keyspaces では、VPC エンドポイントを利用できる各アベイラビリティーゾーンのエントリが含まれているアカウント内で、`system.peers` テーブルへの入力が行われます。Amazon Keyspaces では、使用可能な VPC エンドポイントを探し出して `system.peers` テーブルに保存する場合、Amazon Keyspaces への接続に使用する IAM エンティティ対して、エンドポイントとネットワークインターフェイスの情報について VPC をクエリするためのアクセス許可を付与する必要があります。

**重要**  
`system.peers` テーブルに使用可能なインターフェイス VPC エンドポイントを入力することで、ロードバランシングが改善され、読み取り/書き込みスループットが向上します。全てのクライアントがインターフェイス VPC エンドポイントを使用して Amazon Keyspaces にアクセスすることが推奨され、Apache Spark に必要です。

Amazon Keyspaces への接続に使用する IAM エンティティに、必要なインターフェイス VPC エンドポイント情報を検索するための許可を付与するには、既存の IAM ロールまたはユーザーポリシーを更新するか、または、次の例に示すように新しい IAM ポリシーを作成します。

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Sid":"ListVPCEndpoints",
         "Effect":"Allow",
         "Action":[
            "ec2:DescribeNetworkInterfaces",
            "ec2:DescribeVpcEndpoints"
         ],
         "Resource":"*"
      }
   ]
}
```

**注記**  
管理ポリシー `AmazonKeyspacesReadOnlyAccess_v2` および `AmazonKeyspacesFullAccess` には、Amazon Keyspaces が Amazon EC2 インスタンスにアクセスして、使用可能なインターフェイス VPC エンドポイントに関する情報を読み取れるようにするために必要なアクセス権限が含まれています。

ポリシーが正しく設定されていることを確認するには、`system.peers` テーブルをクエリしてネットワーク情報を表示します。`system.peers` テーブルが空である場合は、ポリシーが正常に設定されなかったこと、または `DescribeNetworkInterfaces` と `DescribeVPCEndpoints` API アクションのリクエストレートクォータを超過していることを示している可能性があります。`DescribeVPCEndpoints` は `Describe*` カテゴリーになって*不変アクション*とみなされます。`DescribeNetworkInterfaces` は*フィルター処理とページ分割が施されていない不変アクション*のサブセットになり、別のクォータが適用されます。詳細については、「Amazon EC2 API Reference」(Amazon EC2 API リファレンス) の[「Request token bucket sizes and refill rates」](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/throttling.html#throttling-limits-rate-based)(リクエストトークンのバケットサイズと補充レート) を参照してください。

空のテーブルが表示された場合は、数分待ってから、リクエストレートクォータ問題の除外を再試行してください。VPC エンドポイントが正しく設定されていることを確認するには、「[VPC エンドポイント接続が正しく機能しない](troubleshooting.connecting.md#troubleshooting.connection.vpce)」を参照してください。クエリによりテーブルから結果が返された場合は、ポリシーが正しく設定されています。



## Amazon Keyspaces のインターフェイス VPC エンドポイントへのアクセスの制御
<a name="interface-vpc-endpoints-policies"></a>

VPC エンドポイントポリシーによって、次の 2 つの方法でリソースへのアクセスを制御できます。
+ **IAM ポリシー** – 特定の VPC エンドポイントを経由する Amazon Keyspaces へのアクセスを許可されているリクエスト、ユーザー、またはグループを管理できます。これを実行するには、IAM ユーザー、グループ、またはロールにアタッチされているポリシー内で[条件キー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)を使用します。
+ **VPC ポリシー** — ポリシーをアタッチすることで、Amazon Keyspaces リソースへのアクセス権が付与されている VPC エンドポイントを制御できます。特定のキースペースまたはテーブルへのアクセスを制限して、特定の VPC エンドポイントを通過するトラフィックのみを許可するには、リソースアクセスを制限する既存のIAMポリシーを編集し、その VPC エンドポイントを追加します。



以下は、Amazon Keyspaces リソースにアクセスするためのエンドポイントポリシーです。
+ **IAM ポリシー例: トラフィックが指定 VPCエンドポイントからのものでない限り特定の Amazon Keyspaces テーブルへのすべてのアクセスを制限する** - このサンプルポリシーは IAM ユーザー、ロール、またはグループにアタッチできます。これにより、受信トラフィックが指定の VPC エンドポイントから発信されない限り、指定の Amazon Keyspaces テーブルへのアクセスが制限されます。

  ```
  {
     "Version": "2012-10-17",		 	 	 
     "Statement": [
        {
           "Sid": "UserOrRolePolicyToDenyAccess",
           "Action": "cassandra:*",
           "Effect": "Deny",
           "Resource": [
                          "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable",
                          "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
             ],
           "Condition": { "StringNotEquals" : { "aws:sourceVpce": "vpce-abc123" } }
        }
     ]
  }
  ```
**注記**  
特定のテーブルへのアクセスを制限するには、システムテーブルへのアクセスも含める必要があります。システムテーブルは読み取り専用です。
+ **VPC ポリシーの例: 読み取り専用アクセス** - このサンプルポリシーは VPC エンドポイントにアタッチできます。詳細については、[「Controlling access to Amazon VPC resources」](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html#vpc-endpoint-policies)(Amazon VPC のリソースに対するアクセスの制御) を参照してください。これにより、このポリシーがアタッチされている VPC エンドポイントを経由する Amazon Keyspaces リソースへの読み取り専用アクセスに、アクションが制限されます。

  ```
  {
    "Version": "2012-10-17",		 	 	 
    "Statement": [
      {
        "Sid": "ReadOnly",
        "Principal": "*",
        "Action": [
          "cassandra:Select"
        ],
        "Effect": "Allow",
        "Resource": "*"
      }
    ]
  }
  ```
+ **VPC ポリシーの例: 特定の Amazon Keyspaces テーブルへのアクセスを制限する** - このサンプルポリシーは VPC エンドポイントにアタッチできます。これにより、このポリシーがアタッチされている VPC エンドポイントを経由する特定のデータストリームへのアクセスが制限されます。

  ```
  {
     "Version": "2012-10-17",		 	 	 
     "Statement": [
          {
              "Sid": "RestrictAccessToTable",
              "Principal": "*",
              "Action": "cassandra:*",
              "Effect": "Allow",
              "Resource": [
                          "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable",
                          "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
             ]
          }
     ]
  }
  ```
**注記**  
特定のテーブルへのアクセスを制限するには、システムテーブルへのアクセスも含める必要があります。システムテーブルは読み取り専用です。

## 利用可能な状況
<a name="availability"></a>

Amazon Keyspaces は、 AWS リージョン サービスが利用可能なすべての でインターフェイス VPC エンドポイントの使用をサポートしています。詳細については、「[Amazon Keyspaces のサービスエンドポイント](programmatic.endpoints.md)」を参照してください。

## VPC エンドポイントポリシーと Amazon Keyspaces ポイントインタイムリカバリ (PITR)
<a name="VPC_PITR_restore"></a>

IAM ポリシーを[条件キー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)とともに使用して受信トラフィックを制限している場合は、テーブルの復元オペレーションが失敗することがあります。例えば、`aws:SourceVpce` 条件キーを使用してソーストラフィックを特定のエンドポイントに制限している場合、テーブルの復元オペレーションは失敗します。プリンシパルの代わりに Amazon Keyspaces によって復元オペレーションが実行されるようにするには、IAM ポリシーに `aws:ViaAWSService` 条件キーを追加する必要があります。`aws:ViaAWSService` 条件キーは、任意の AWS サービスがプリンシパルの認証情報を使用してリクエストを行うときにアクセスを許可します。詳細については、*「IAM ユーザーガイド」*の[「IAM JSON policy elements: Condition key」](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)(IAM JSON ポリシー要素: 条件キー) を参照してください。以下のポリシーはこの例です。

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Sid":"CassandraAccessForVPCE",
         "Effect":"Allow",
         "Action":"cassandra:*",
         "Resource":"*",
         "Condition":{
            "Bool":{
               "aws:ViaAWSService":"false"
            },
            "StringEquals":{
               "aws:SourceVpce":[
                  "vpce-12345678901234567"
               ]
            }
         }
      },
      {
         "Sid":"CassandraAccessForAwsService",
         "Effect":"Allow",
         "Action":"cassandra:*",
         "Resource":"*",
         "Condition":{
            "Bool":{
               "aws:ViaAWSService":"true"
            }
         }
      }
   ]
}
```

## よくあるエラーおよび警告
<a name="vpc_troubleshooting"></a>

**Amazon Virtual Private Cloud を使用していて Amazon Keyspaces に接続すると、次の警告が表示される場合があります。**

```
Control node cassandra.us-east-1.amazonaws.com/1.111.111.111:9142 has an entry for itself in system.peers: this entry will be ignored. This is likely due to a misconfiguration; 
please verify your rpc_address configuration in cassandra.yaml on all nodes in your cluster.
```

この警告は、接続している Amazon VPC エンドポイントを含め、Amazon Keyspaces が表示権限を持つすべての Amazon VPC エンドポイントのエントリが `system.peers` テーブルに含まれているために発生します。この警告を無視しても問題ありません。

その他のエラーについては、「[VPC エンドポイント接続が正しく機能しない](troubleshooting.connecting.md#troubleshooting.connection.vpce)」を参照してください。

# インターフェイス VPC エンドポイントでの Amazon Keyspaces CDC ストリームの使用
<a name="vpc-endpoints-streams"></a>

インターフェイス VPC エンドポイントでは、Amazon VPC で実行されている仮想プライベートクラウド (VPC) と Amazon Keyspaces 間のプライベート通信ができます。インターフェイス VPC エンドポイントは AWS PrivateLink、VPC と AWS AWS サービス間のVPCs。

AWS PrivateLink は、ネットワークトラフィックが Amazon ネットワークを離れないように、VPC 内のプライベート IP アドレスを持つ Elastic Network Interface を使用してこれを可能にします。インターフェイス VPC エンドポイントは、インターネットゲートウェイ、NAT デバイス、VPN 接続、または Direct Connect 接続を必要としません。詳細については、[「Amazon Virtual Private CloudAmazon」](https://docs.aws.amazon.com/vpc/latest/userguide/)(仮想プライベートクラウド) と[「Interface VPC endpoints (AWS PrivateLink)」](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html)(インターフェイス VPC エンドポイント ()) を参照してください。

**Topics**
+ [Amazon Keyspaces CDC ストリームのインターフェイス VPC エンドポイントの使用](#using-interface-vpc-endpoints-streams)
+ [Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイント](#interface-vpc-endpoints-streams-types)
+ [Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイントを作成する](#create-interface-vpc-endpoints-streams)
+ [Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイントを更新する](#update-interface-vpc-endpoints-streams)
+ [Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイントを使用してストリームを一覧表示する](#list-interface-vpc-endpoints-streams)
+ [Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイントのポリシーを作成する](#interface-vpc-endpoints-streams-policy)

## Amazon Keyspaces CDC ストリームのインターフェイス VPC エンドポイントの使用
<a name="using-interface-vpc-endpoints-streams"></a>

インターフェイス VPC エンドポイントを使用すると、Amazon Keyspaces CDC ストリームと Amazon VPC リソース間のトラフィックがインターフェイス VPC エンドポイントを経由し始めることができます。VPC エンドポイントポリシーを使用して、CDC ストリームへのアクセスを制限できます。

Amazon Keyspaces CDC ストリームの詳細については、「」を参照してください[Amazon Keyspaces での変更データキャプチャ (CDC) ストリームの使用](cdc.md)。

## Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイント
<a name="interface-vpc-endpoints-streams-types"></a>

インターフェイスエンドポイントを作成すると、Amazon Keyspaces CDC ストリームはストリームに*リージョン*と*ゾーン*の 2 種類のエンドポイント固有の DNS 名を生成します。

**リージョン別**  
リージョン DNS 名には、次の情報が含まれます。  
+ 一意の Amazon VPC エンドポイント ID
+ サービス識別子
+  AWS リージョン「��
+ `vpce.amazonaws.com` サフィックス
ID が の Amazon VPC エンドポイントの場合`vpce-1a2b3c4d`、生成された DNS 名は次の例のようになります。 `vpce-1a2b3c4d-5e6f.cassandra-streams.us-east-1.vpce.amazonaws.com`

**ゾーン別**  
ゾーン DNS 名には、リージョン DNS 名の情報に加えて、[アベイラビリティーゾーン](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/)が含まれます。ID の Amazon VPC エンドポイントに対して生成された DNS 名`vpce-1a2b3c4d`は、次の例のようになります。 にアベイラビリティーゾーンが含まれる AWS リージョン ようになりました。 `vpce-1a2b3c4d-5e6f-us-east-1a.cassandra-streams.us-east-1.vpce.amazonaws.com`  
このオプションは、アーキテクチャがアベイラビリティーゾーンを分離する場合に使用できます。例えば、障害を隔離し、リージョン間のデータ転送コストを削減するために使用できます。  
最適な信頼性を実現するには、最低 3 つのアベイラビリティーゾーンにサービスをデプロイすることをお勧めします。

## Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイントを作成する
<a name="create-interface-vpc-endpoints-streams"></a>

 AWS CLI または AWS SDK を使用して、Amazon Keyspaces CDC Streams インターフェイスエンドポイントを介して Amazon Keyspaces CDC Streams API オペレーションにアクセスできます。使用可能なすべての API オペレーションの完全なリストについては、[https://docs.aws.amazon.com/keyspaces/latest/StreamsAPIReference/Welcome.html](https://docs.aws.amazon.com/keyspaces/latest/StreamsAPIReference/Welcome.html)」を参照してください。

VPC エンドポイントの作成方法の詳細については、「Amazon VPC ユーザーガイド」の[「インターフェイスエンドポイントの作成](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html#create-interface-endpoint)」を参照してください。

VPC エンドポイントを作成するには、次の例の 構文を使用できます。

```
aws ec2 create-vpc-endpoint \
  --region us-east-1 \
  --service-name api.aws.us-east-1.cassandra-streams \
  --vpc-id client-vpc-id \
  --subnet-ids client-subnet-id \
  --vpc-endpoint-type Interface \
  --security-group-ids client-sg-id
```

## Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイントを更新する
<a name="update-interface-vpc-endpoints-streams"></a>

VPC エンドポイントを更新するには、次の例の 構文を使用できます。

```
aws ec2 modify-vpc-endpoint \
  --region us-east-1 \
  --vpc-endpoint-id client-vpc-id \
  --policy-document policy-document \ #example optional parameter
  --add-security-group-ids security-group-ids \ #example optional parameter
```

## Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイントを使用してストリームを一覧表示する
<a name="list-interface-vpc-endpoints-streams"></a>

VPC エンドポイントを使用しているストリームを一覧表示するには、次の例の 構文を使用できます。VPC エンドポイント ID のリージョンと DNS 名を自分の情報に置き換えてください。

```
aws keyspacesstreams \
  --endpoint https://vpce-1a2b3c4d-5e6f.cassandra-streams.us-east-1.vpce.amazonaws.com \
  --region us-east-1 \
  list-streams
```

## Amazon Keyspaces CDC ストリームインターフェイス VPC エンドポイントのポリシーを作成する
<a name="interface-vpc-endpoints-streams-policy"></a>

Amazon Keyspaces CDC ストリームへのアクセスを制御するエンドポイントポリシーを Amazon VPC エンドポイントにアタッチできます。このポリシーでは、以下の情報を指定します。
+ アクションを実行できる AWS Identity and Access Management (IAM) プリンシパル
+ 実行可能なアクション
+ アクションを実行できるリソース

特定の Amazon Keyspaces CDC ストリームへのアクセスを制限して Amazon VPC 内の特定の AWS サービスのみを許可するには、次の例を使用できます。

次のストリームポリシーは、 アクション`cassandra:GetStream`と、アカウント `/keyspace/mykeyspace/table/mytable/`に属するリソースに`2025-02-20T11:22:33.444`アタッチされた指定されたストリーム`cassandra:GetRecords`の任意の IAM プリンシパルへのアクセスを許可します`123456788901`。このエンドポイントポリシーを使用するには、リージョン、アカウント ID、リソースをストリームラベルに置き換えてください。

```
{
"Version": "2012-10-17",		 	 	 
  "Id": "Policy1216114807515",
  "Statement": [
    { "Sid": "Access-to-specific-stream-only",
      "Principal": "*",
      "Action": [
        "cassandra:GetStream",
        "cassandra:GetRecords"
      ],
      "Effect": "Allow",
      "Resource": ["arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable/stream/2025-02-20T11:22:33.444"]
    }
  ]
}
```

**注記**  
Amazon Keyspaces は、CDC ストリームのゲートウェイエンドポイントをサポートしていません。

# Amazon Keyspaces の設定と脆弱性の分析
<a name="configuration-vulnerability"></a>

AWS は、ゲストオペレーティングシステム (OS) やデータベースのパッチ適用、ファイアウォール設定、ディザスタリカバリなどの基本的なセキュリティタスクを処理します。これらの手順は適切な第三者によって確認され、証明されています。詳細については、以下のリソース を参照してください。
+ [責任共有モデル](https://aws.amazon.com/compliance/shared-responsibility-model/)、、 
+ [アマゾン ウェブ サービス: セキュリティプロセスの概要](https://d0.awsstatic.com/whitepapers/Security/AWS_Security_Whitepaper.pdf) (ホワイトペーパー) 

# Amazon Keyspaces のセキュリティベストプラクティス
<a name="best-practices-security"></a>

Amazon Keyspaces (Apache Cassandra 向け) には、独自のセキュリティポリシーを策定および実装する際に考慮すべきさまざまなセキュリティ機能が用意されています。以下のベストプラクティスは一般的なガイドラインであり、完全なセキュリティソリューションを説明するものではありません。これらのベストプラクティスはお客様の環境に適切ではないか、十分ではない場合があるため、これらは指示ではなく、有用な考慮事項と見なしてください。

**Topics**
+ [Amazon Keyspaces の予防的セキュリティベストプラクティス](best-practices-security-preventative.md)
+ [Amazon Keyspaces の発見的セキュリティベストプラクティス](best-practices-security-detective.md)

# Amazon Keyspaces の予防的セキュリティベストプラクティス
<a name="best-practices-security-preventative"></a>

セキュリティに関する以下のベストプラクティスは、Amazon Keyspaces でのセキュリティインシデントの予測と予防に役立ちます。

**保管データ暗号化を使用する**  
Amazon Keyspaces では、テーブルに保管されているすべてのユーザーデータに対して、[AWS Key Management Service (AWS KMS)](https://aws.amazon.com/kms/) に保存されている暗号化キーを使用して保管データ暗号化が行われます。この機能は、基になるストレージへの不正アクセスからデータを保護することによって、データ保護の追加レイヤーを提供します。  
デフォルトでは、Amazon Keyspaces はすべてのテーブルを暗号化 AWS 所有のキー するために を使用します。このキーは、存在しなければ自動的に作成されます。サービスデフォルトキーは無効にできません。  
代わりに、[カスタマーマネージドキー](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)を保管データ暗号化に使用できます。詳細については、[「Amazon Keyspaces Encryption at Rest」](https://docs.aws.amazon.com/keyspaces/latest/devguide/EncryptionAtRest.html)(Amazon Keyspaces の保管データ暗号化) を参照してください。

**IAM ロールを使用して Amazon Keyspaces へのアクセスを認証する**  
ユーザー、アプリケーション、およびその他の AWS サービスが Amazon Keyspaces にアクセスするには、 AWS API リクエストに有効な AWS 認証情報を含める必要があります。 AWS 認証情報をアプリケーションまたは EC2 インスタンスに直接保存しないでください。自動更新されない長期認証情報条件のため、漏洩すると業務に深刻な悪影響が及ぶ可能性があります。IAM ロールでは、 AWS サービスおよびリソースにアクセスするために使用できる一時的なアクセスキーを有効にすることができます。  
詳細については、[「IAM ロール」](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)を参照してください。

**IAM ポリシーを使用して Amazon Keyspaces ベースの認可を行う**  
許可を付与する場合、許可を取得するユーザー、取得する許可の対象となる Amazon Keyspaces、およびそれらのリソースに対して許可される特定のアクションを決定します。最小特権の実装は、セキュリティリスクはもちろん、エラーや悪意ある行動によってもたらされる可能性のある影響を減らす上での鍵となります。  
IAM アイデンティティ (ユーザー、グループ、ロール) にアクセス権限ポリシーをアタッチし、Amazon Keyspaces リソースでオペレーションを実行する許可を付与します。  
これを行うには、次を使用します。  
+ [AWS 管理 (事前定義) ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)
+ [カスタマー管理ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)

**詳細に設定されたアクセスコントロールのための IAM ポリシー条件を使用する**  
Amazon Keyspaces でアクセス許可を付与するときは、アクセス権限ポリシーを有効にする方法を決める条件を指定できます。最小特権の実装は、セキュリティリスクはもちろん、エラーや悪意ある行動によってもたらされる可能性のある影響を減らす上での鍵となります。  
IAM ポリシーを使用して、アクセス許可を付与するときに条件を指定できます。例えば、次のオペレーションを実行できます。  
+ 特定のキースペースまたはテーブルに対する読み取り専用アクセスをユーザーに許可するために、アクセス許可を付与します。
+ ユーザーのアイデンティティに基づいて、特定のテーブルへのユーザー書き込みアクセスを許可するために、アクセス許可を付与します。
 詳細については、「[Identity-Based Policy Examples (アイデンティティベースのポリシーの例)](https://docs.aws.amazon.com/keyspaces/latest/devguide/security_iam_id-based-policy-examples.html)」を参照してください。

**クライアント側の暗号化を考慮する**  
機密データや機密データを Amazon Keyspaces に保存する場合は、データを可能な限りオリジンの近くで暗号化して、ライフサイクル全体にわたってデータを保護することを検討してください。伝送中および保管時の機密データを暗号化することで、サードパーティーがお客様のプレーンテキストデータを使用することはできません。

# Amazon Keyspaces の発見的セキュリティベストプラクティス
<a name="best-practices-security-detective"></a>

セキュリティに関する以下のベストプラクティスは、潜在的なセキュリティ上の弱点とインシデントの検出に役立つため、発見的とみなされています。

**を使用して AWS Key Management Service (AWS KMS) AWS KMS キーの使用状況をモニタリング AWS CloudTrail する**  
保管時の暗号化に[カスタマーマネージド AWS KMS キー](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)を使用している場合、このキーの使用は にログインされます AWS CloudTrail。CloudTrail は、アカウントで実行されたアクションをレコードすることで、ユーザーのアクティビティを可視化します。CloudTrail は、リクエストの実行者、使用されたサービス、実行されたアクション、アクションのパラメータ、 AWS サービスによって返されたレスポンス要素など、各アクションに関する重要な情報を記録します。この情報は、 AWS リソースに加えられた変更を追跡し、運用上の問題をトラブルシューティングするのに役立ちます。CloudTrail を使用すると、社内ポリシーや規制スタンダードへのコンプライアンスが容易になります。  
CloudTrail を使用して、キーの使用状況を監査できます。CloudTrail は、アカウントの AWS API コールおよび関連イベントの履歴を含むログファイルを作成します。これらのログファイルには、統合 AWS サービスを通じて行われたものに加えて、コンソール、 AWS SDKs、コマンドラインツールを使用して行われたすべての AWS KMS API リクエストが含まれます。これらのログファイルを使用して、 AWS KMS キーが使用された日時、リクエストされたオペレーション、リクエスタの ID、リクエスト元の IP アドレスなどに関する情報を取得できます。詳細については、「[AWS CloudTrailを使用した AWS Key Management Service API 呼び出しのログ記録](https://docs.aws.amazon.com/kms/latest/developerguide/logging-using-cloudtrail.html)」と「[AWS CloudTrail ユーザーガイド](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/)」を参照してください。

**CloudTrail を使用して、Amazon Keyspaces データ定義言語 (DDL) オペレーションをモニタリングする**  
CloudTrail は、アカウントで実行されたアクションをレコードすることで、ユーザーのアクティビティを可視化します。CloudTrail は、リクエストを行ったユーザー、使用されたサービス、実行されたアクション、アクションのパラメータ、 AWS のサービスから返されたレスポンス要素など、各アクションに関する重要な情報をレコードします。この情報は、 AWS リソースに加えられた変更の追跡、およびオペレーション問題のトラブルシューティングに役立ちます。CloudTrail を使用すると、社内ポリシーや規制スタンダードへのコンプライアンスが容易になります。  
Amazon Keyspaces [DDL オペレーション](cql.ddl.md)はすべて CloudTrail のログに自動的に記録されます。DDL オペレーションでは、Amazon Keyspaces のキースペースとテーブルの作成と管理を行います。  
Amazon Keyspaces でアクティビティが発生すると、そのアクティビティはイベント履歴の他の AWS サービスイベントとともに CloudTrail イベントに記録されます。詳細については、[「Logging Amazon Keyspaces operations by using AWS CloudTrail」](https://docs.aws.amazon.com/keyspaces/latest/devguide/logging-using-cloudtrail.html) ( を使用した Amazon Keyspaces オペレーションのログ記録) を参照してください。で最近のイベントを表示、検索、ダウンロードできます AWS アカウント。詳細については、*「AWS CloudTrail ユーザーガイド」*の[「Viewing events with CloudTrail event history」](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)(CloudTrail イベント履歴でのイベントの表示) を参照してください。  
Amazon Keyspaces のイベントなど AWS アカウント、 のイベントの継続的な記録については、[証跡](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)を作成します。証跡により、CloudTrail はログファイルを Amazon Simple Storage Service (Amazon S3) バケットに配信できます。デフォルトでは、コンソールで証跡を作成すると、証跡がすべての AWS リージョンに適用されます。証跡では、 AWS パーティションのすべてのリージョンからのイベントがログに記録され、指定した S3 バケットにログファイルが配信されます。さらに、CloudTrail ログで収集されたイベントデータをさらに分析して処理するように他の AWS サービスを設定できます。

**識別とオートメーションのために Amazon Keyspaces リソースにタグを付ける**  
タグの AWS 形式でリソースにメタデータを割り当てることができます。各タグは、カスタマー定義のキーと値 (オプション) で構成されるシンプルなラベルです。タグを使用すると、リソースの管理、検索、フィルターが容易になります。  
タグ付けを行うと、グループ化されたコントロールを実装できます。タグには固有のタイプはありませんが、 用途、所有者、環境などの基準でリソースを分類できます。次に例をいくつか示します。  
+ アクセス — タグに基づいて Amazon Keyspaces リソースへのアクセスを制御するために使用されます。詳細については、「[Amazon Keyspaces タグに基づいた認可](security_iam_service-with-iam.md#security_iam_service-with-iam-tags)」を参照してください。
+ セキュリティ — データ保護設定などの要件を決定するために使用されます。
+ 機密性 — リソースでサポートされるデータ機密性レベルの識別子。
+ 環境 — 開発、テスト、本番稼働用インフラストラクチャを区別するために使用されます。
詳細については、「[AWS tagging strategies ( タグ付け戦略)](https://aws.amazon.com/answers/account-management/aws-tagging-strategies/)」と「[Adding tags and labels to resources (リソースへのタグとラベルの追加)](https://docs.aws.amazon.com/keyspaces/latest/devguide/tagging-keyspaces.html)」を参照してください。