Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

DynamoDB での属性ベースのアクセス制御の使用

フォーカスモード
DynamoDB での属性ベースのアクセス制御の使用 - Amazon DynamoDB

属性ベースのアクセス制御 (ABAC) は、アイデンティティベースのポリシーまたは他の AWS ポリシー (リソースベースのポリシーや組織の IAM ポリシーなど) のタグ条件に基づいてアクセス許可を定義する認可戦略です。DynamoDB テーブルにタグをアタッチすると、タグベースの条件に対して評価されます。テーブルに関連付けられたインデックスは、テーブルに追加するタグを継承します。DynamoDB テーブルごとに最大 50 個のタグを追加できます。テーブル内のすべてのタグにサポートされる最大サイズは 10 KB です。DynamoDB リソースのタグ付けとタグ付けの制限の詳細については、「DynamoDB でのタグ付けのリソース」および「Tagging restrictions in DynamoDB」を参照してください。

タグを使用して AWS リソースへのアクセスを制御する方法の詳細については、「IAM ユーザーガイド」の以下のトピックを参照してください。

ABAC を使用すると、チームやアプリケーションに異なるアクセスレベルを適用して、より少ないポリシーで DynamoDB テーブルに対してアクションを実行できます。IAM ポリシーの条件要素でタグを指定して、DynamoDB テーブルやインデックスへのアクセスを制御できます。これらの条件により、IAM プリンシパル、ユーザー、またはロールが DynamoDB テーブルとインデックスに対して持つアクセスのレベルが決まります。IAM プリンシパルが DynamoDB へのアクセスリクエストを行うと、リソースと ID のタグは IAM ポリシーのタグ条件に照らして評価されます。その後、タグ条件が満たされた場合にのみポリシーが有効になります。これにより、次のいずれかを効果的に示す IAM ポリシーを作成できます。

  • キーが X で値は Y であるタグを持つリソースのみをユーザーが管理できるようにします

  • キー X でタグ付けされたリソースへのすべてのユーザーのアクセスを拒否します

例えば、タグのキーと値のペアが "environment": "staging" である場合にのみ、ユーザーがテーブルを更新できるようにするポリシーを作成できます。aws:ResourceTag 条件キーを使用して、そのテーブルにアタッチされているタグに基づいてテーブルへのアクセスを許可または拒否できます。

属性ベースの条件は、ポリシーの作成時、または後で AWS Management Console、AWS API、AWS Command Line Interface (AWS CLI)、AWS SDK、または AWS CloudFormation を使用して含めることができます。

次の例では、名前 environment と値 production を持つタグキーが含まれている場合に、MusicTable という名前の付いたテーブルで UpdateItem アクションを許可します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:UpdateItem" ], "Resource": "arn:aws:dynamodb:*:*:table/MusicTable", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "production" } } } ] }

ABAC を使用する理由

  • ポリシー管理の簡素化: 異なるポリシーを作成して IAM プリンシパルごとにアクセスレベルを定義する必要がないため、使用するポリシーが少なくなります。

  • スケーラブルなアクセス制御: ABAC を使用すると、新しい DynamoDB リソースを作成する際のポリシーの更新が必要なくなるため、アクセス制御のスケーリングが容易になります。タグを使用して、リソースのタグと一致するタグを含む IAM プリンシパルへのアクセスを許可できます。新しい IAM プリンシパルまたは DynamoDB リソースをオンボードし、適切なタグを適用して、ポリシーを変更することなく、必要なアクセス許可を自動的に付与できます。

  • きめ細かなアクセス許可管理: ポリシーの作成時には最小特権を付与することがベストプラクティスです。ABAC を使用すると、IAM プリンシパルのタグを作成し、そのタグを使用して IAM プリンシパルのタグと一致する特定のアクションとリソースへのアクセスを付与できます。

  • 社内ディレクトリとの整合性: 社内ディレクトリから既存の従業員属性にタグをマッピングして、アクセス制御ポリシーを組織構造に整合させることができます。

DynamoDB で ABAC を実装するための条件キー

AWS ポリシーで次の条件キーを使用して、DynamoDB テーブルとインデックスへのアクセスレベルを制御できます。

  • aws:ResourceTag/tag-key: DynamoDB テーブルまたはインデックスのタグのキーと値のペアがポリシーでのタグのキーと値と一致するかどうかに基づいてアクセスを制御します。この条件キーは、既存のテーブルまたはインデックスで動作するすべての API に関連しています。

    dynamodb:ResourceTag 条件は、リソースにタグをアタッチしていないかのように評価されます。

  • aws:RequestTag/tag-key: リクエストで渡されたタグのキーと値のペアと、ポリシーで指定したタグのペアを比較できます。この条件キーは、リクエストペイロードの一部としてタグを含む API に関連しています。これらの API には、CreateTableTagResource が含まれます。

  • aws:TagKeys: リクエスト内のタグキーをポリシーで指定したキーと比較します。この条件キーは、リクエストペイロードの一部としてタグを含む API に関連しています。これらの API には、CreateTableTagResourceUntagResource が含まれます。

DynamoDB で ABAC を使用する際の考慮事項

DynamoDB テーブルまたはインデックスで ABAC を使用する場合は、次の考慮事項が適用されます。

  • DynamoDB Streams では、タグ付けと ABAC はサポートされていません。

  • DynamoDB のバックアップでは、タグ付けと ABAC はサポートされていません。バックアップで ABAC を使用するには、AWS Backup を使用することをお勧めします。

  • タグは復元されたテーブルには保持されません。ポリシーでタグベースの条件を使用する前に、復元されたテーブルにタグを追加する必要があります。

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.