許可の使用 - AWS Key Management Service

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

許可の使用

Agrantはポリシーツールで、AWS プリンシパルAWS KMS を使用するにはカスタマーマスターキー(CMK) を暗号化オペレーションで使用します。また、CMK (DescribeKey) 許可を作成、管理します。CMK へのアクセスを許可するとき、許可はキーポリシーおよびIAM ポリシー。許可は、キーポリシーまたは IAM ポリシーを変更することなく、作成してアクセス権限を使用し、削除できるため、一時的なアクセス権限によく使用されます。

許可は、AWS KMS と統合し、保存中のデータを暗号化する AWS サービスによって一般的に使用されます。サービスは、アカウント内のユーザーの代わりに許可を作成し、その権限を使用して、タスクが完了するとすぐに許可を取り消します。AWS サービス、許可の使用方法の詳細については、「」を参照してください。AWS サービスが AWS KMS を使用する方法または保管時の暗号化」トピックを参照してください。

複数のプログラミング言語で許可を操作する方法を示すコード例については、許可の使用

助成金について

助成金は非常に柔軟で便利なアクセス制御メカニズムです。許可を添付すると、カスタマーマスターキー(CMK) の場合、grantでは、権限で指定された条件が満たされたときに、プリンシパルが CMK で特定の操作を呼び出すことができます。

  • 各権限は、1 つの CMK のみへのアクセスを制御します。CMK は、同じ AWS アカウントまたは別の AWS アカウントにある場合があります。

  • AWS KMS は、各 CMK の許可数を制限します。詳細については、「リソースクォータ」を参照してください。

  • 許可を使用してアクセスを許可できますが、拒否することはできません。許可は、権限付与操作

  • 許可からアクセス許可を取得するプリンシパルは、アクセス許可がキーポリシーまたは IAM ポリシーから取得された場合と同様に、許可を指定せずにこれらのアクセス許可を使用できます。ただし、助成金の作成、除去、または取り消しの際、操作が完了するまで、通常は 5 分未満に短い遅延が生じる場合があります。最終的な一貫性。許可の権限をすぐに使用するには、許可トークンを使用する

  • 許可を使用すると、別の AWS アカウントのプリンシパルが CMK の使用を許可できます。

  • プリンシパルに必要な権限がある場合、プリンシパルは権限を削除できます (引退するまたは取り消しit)。これらのアクションにより、付与が許可したすべてのアクセス許可が削除されます。付与を取り消すために、どのポリシーを追加または調整するかを把握する必要はありません。

  • 許可を作成、撤退、または取り消すときに、AWS KMS 全体で変更が可能になるまで、通常は 5 分未満の間隔が短くなることがあります。詳細については、 を参照してください。許可の結果整合性

権限を作成するときや、権限を作成する権限を他のユーザーに与えるときは、注意が必要です。許可を作成する権限には、セキュリティ上の影響があります。これは、KMS: パットキーポリシーアクセス許可を使用してポリシーを設定します。

  • CMK の権限を作成する権限を持つユーザー (kms:CreateGrant) は、許可を使用して、AWS サービスを含むユーザーおよびロールが CMK を使用できるようにします。プリンシパルは、独自の AWS アカウントの ID か、別のアカウントまたは組織の ID になります。

  • 許可では、AWS KMS オペレーションのサブセットのみを許可できます。権限を使用すると、プリンシパルに CMK の表示、暗号化操作での使用、および権限の作成と破棄を許可できます。詳細については、 を参照してください。権限付与オペレーション。また、制約の付与を使用して、許可のアクセス許可を制限します。

  • プリンシパルは、キーポリシーまたは IAM ポリシーから許可を作成するアクセス権限を取得できます。これらのプリンシパルは、任意の権限付与操作は、許可がない場合でも、CMK 上で実行できます。あなたが許可するときkms:CreateGrantアクセス許可をポリシーに追加するには、ポリシー条件を使用してこの権限を制限します。

  • プリンシパルは、権限から権限を作成する権限を取得することもできます。これらのプリンシパルは、ポリシーから他のアクセス許可がある場合でも、付与されたアクセス許可のみを委任できます。詳細については、「CreateGrant アクセス許可の付与」を参照してください。

助成金に関連する概念のヘルプについては、」許可の用語

対称 CMK および非対称 CMK の許可

対称 CMK または非対称 CMK へのアクセスを制御する許可を作成できます。ただし、プリンシパルが CMK でサポートされていないオペレーションを実行できるようにする許可を作成することはできません。試行すると、AWS KMS は ValidationError 例外を返します。

対称 CMK

シンメトリック CMK の許可では、 署名, 、検証, 、または GetPublicKey 操作を許可できません。(レガシーオペレーションについては、このルールには限定的な例外がありますが、AWS KMS がサポートしていないオペレーションの許可を作成しないでください)。

非対称 CMK

非対称 CMK の許可では、データキーまたはデータキーペアを生成するオペレーションは許可されません。また、自動キーローテーションインポートされたキーマテリアル、またはカスタムキーストア内の CMK に関連するオペレーションも許可できません。

キーの使用方法が SIGN_VERIFY である CMK の許可では、暗号化オペレーションを許可できません。キーの使用方法が ENCRYPT_DECRYPT である CMK の許可では、Sign または Verify オペレーションを許可できません。

許可の用語

助成金を効果的に使用するには、AWS KMS が使用する用語と概念を理解する必要があります。

制約の付与

許可のアクセス許可を制限する条件。現在、AWS KMS は、の暗号化コンテキスト暗号化操作の要求で。詳細については、「許可制約の使用」を参照してください。

ID の付与

CMK の許可の一意の識別子。助成金は、キー識別子で許可を識別するためにRetireGrantまたはRevokeGrantリクエスト.

権限付与オペレーション

許可で許可できる AWS KMS オペレーション。これらはまた、許可トークン。これらのアクセス許可の詳細については、『AWS KMS アクセス許可

これらのオペレーションは、オペレーションを使用するアクセス許可を表します。したがって、ReEncryptオペレーションでは、以下のことができます。ReEncryptFromReEncryptTo、または両側のリクエストReEncrypt*

付与操作は次のとおりです。

CMK でサポートされていないオペレーションの許可を作成することはできません。試行すると、AWS KMS は ValidationError 例外を返します。

許可トークン

助成金を作成する場合、新しい助成金が AWS KMS 全体で利用可能になるまで、つまり AWS KMS が最終的な一貫性。あなたはそれが最終的な一貫性を達成する前に、使用許可を試した場合, あなたは、アクセス拒否エラーが発生することがあります. 許可トークンを使用すると、許可を参照し、許可のアクセス許可をすぐに使用できます。

A許可トークンは、許可を表す、ユニークで非秘密の、可変長、base64 エンコードされた文字列です。グラントトークンを使用して、任意のグラントを識別することができます権限付与操作。ただし、トークン値はハッシュダイジェストであるため、付与の詳細は明らかになりません。

グラントークンは、グラントが最終的な整合性を達成するまでのみ使用するように設計されています。その後、被付与者プリンシパルは、許可トークンやその他の許可の証拠を提供することなく、許可の許可を使用することができます。許可トークンはいつでも使用できますが、許可の整合性がとれたら、AWS KMS は許可トークンではなく、許可を使用してアクセス許可を決定します。

たとえば、次のコマンドでは、GenerateDataKeyオペレーション. これは、許可トークンを使用して、呼び出し元(被付与者プリンシパル)にGenerateDataKeyを指定した CMK で設定します。

$ aws kms generate-data-key \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --key-spec AES_256 \ --grant-token $token

また、付与トークンを使用して、付与を管理する操作で付与を識別することもできます。たとえば、プリンシパルのリタイアへの呼び出しで許可トークンを使用できます。RetireGrantオペレーション.

$ aws kms retire-grant \ --grant-token $token

CreateGrantは、許可トークンを返す唯一の操作です。付与トークンは、他の AWS KMS オペレーションまたはCloudTrail ログイベント[CreateGrant] 操作を実行します。-ListGrantsおよびListRetirableGrantsオペレーションは付与 IDですが、グラントークンではありません。

詳細については、「許可トークンの使用」を参照してください。

被付与者

許可で指定されたアクセス許可を取得するアイデンティティ。許可には 1 つ以上の被付与者プリンシパルが必要です。被付与者プリンシパルには、AWS アカウント(ルート)、IAM ユーザーIAM ロールフェデレーティッドロールまたはユーザー、または引き受けたロールユーザーです。被付与者プリンシパルは、CMK と同じアカウントか、別のアカウントになります。ただし、被付与者プリンシパルはサービスプリンシパルIAM グループ、またはAWS 組織

リタイア (助成金)

グラントを終了します。許可を使用し終わったら、許可を無効にします。

許可を取り消して廃止すると、その許可が削除されます。しかし、廃止は、許可で指定されたプリンシパルによって行われます。取り消しは、通常、キー管理者が行います。詳細については、「助成金の廃止と取り消し」を参照してください。

プリンシパルのリタイア

できるプリンシパル許可のリタイア。助成金で廃止元本を指定できますが、必須ではありません。終了するプリンシパルは、AWS アカウント(ルート)、IAM ユーザー、IAM ロール、フェデレーティッドユーザー、および引き受けたロールユーザーなど、任意の AWS プリンシパルになります。退職元プリンシパルは、CMK と同じアカウントか、別のアカウントになります。

助成金で指定されたプリンシパルを廃止することに加えて、助成金が作成された AWS アカウント(ルートユーザー)が助成金を廃止することもできます。助成金で許可されている場合RetireGrantオペレーションでは被付与者プリンシパル助成金を退職することができます。また、AWS アカウント(ルートユーザー)または廃止するプリンシパルである AWS アカウントは、同じ AWS アカウント内の IAM プリンシパルに付与を取り消すアクセス権限を委任できます。詳細については、「助成金の廃止と取り消し」を参照してください。

取り消し (助成金)

グラントを終了します。許可が許可が許可が許可可能なアクセス許可をアクティブに拒否するには、許可を取り消します。

許可を取り消して廃止すると、その許可が削除されます。しかし、廃止は、許可で指定されたプリンシパルによって行われます。取り消しは、通常、キー管理者が行います。詳細については、「助成金の廃止と取り消し」を参照してください。

結果整合性(助成金用)

助成金の作成、撤退、または取り消しの際、AWS KMS 全体で変更が有効になるまでに短い遅延が生じる場合があります。通常は 5 分未満です。この間隔が完了したとき、我々は達成した操作を考慮する最終的な一貫性

予期しないエラーが発生した場合、この短い遅延が認識されることがあります。たとえば、AWS KMS 全体で許可が認識される前に、新しい許可を管理したり、新しい許可のアクセス許可を使用しようとすると、アクセス拒否エラーが発生することがあります。助成金を廃止または取り消しても、助成金が完全に削除されるまで、被付与者プリンシパルは短期間、そのアクセス許可を使用できる場合があります。典型的な戦略は、リクエストを再試行することです。一部の AWS SDK には、自動バックオフと再試行ロジックが含まれています。

AWS KMS には、この短い遅延を軽減する機能があります。

  • 新しい権限で権限をすぐに使用するには、許可トークン。グラントトークンを使用して、任意のグラントを参照できます。権限付与操作。手順については、「許可トークンの使用」を参照してください。

  • -CreateGrantオペレーションにはNameパラメーターを使用して、再試行操作が重複する許可を作成しないようにします。

注記

サービスのすべてのエンドポイントが新しい許可状態で更新されるまで、許可トークンは、許可の有効性を優先します。ほとんどの場合、最終的な一貫性は 5 分以内に達成されます。