

# セキュリティとアクセスコントロール
<a name="VectorSearch.Security"></a>

IAM ポリシーは、ベクトルインデックスオペレーションへのアクセスを制御します。次のアクセス許可が適用されます。
+ **ベクトルインデックスの作成と削除** – テーブルリソースに対する `dynamodb:CreateTable` または `dynamodb:UpdateTable` アクセス許可が必要です。ベクトルインデックス管理に追加のアクセス許可は必要ありません。
+ **ベクトルインデックスの検索** – インデックスリソースに対する `dynamodb:SearchVectors` アクセス許可が必要です。リソース ARN 形式は `arn:aws:dynamodb:{{region}}:{{account-id}}:table/{{table-name}}/index/{{index-name}}` です。
+ **ベクトルを含む項目の書き込み** – 標準の書き込みオペレーション (`dynamodb:PutItem`、`dynamodb:UpdateItem`) と同じアクセス許可を使用します。ベクトルデータ自体に追加のアクセス許可は必要ありません。

**FGAC 条件キーは SearchVectors には適用されません**  
`SearchVectors` API で Amazon DynamoDB のきめ細かなアクセスコントロール (FGAC) を使用することはできません。FGAC を適用する `dynamodb:` IAM 条件コンテキストキー (`dynamodb:LeadingKeys`、`dynamodb:Attributes`、`dynamodb:Select` など) は、`SearchVectors` には影響しません。つまり、これらを使用して、検索できる項目または属性を制限することはできません。代わりに、インデックスリソース ARN に対して `dynamodb:SearchVectors` アクションを付与して、インデックスレベルでアクセスを制御します。

DynamoDB は、ベーステーブルと同じ暗号化を使用して、保管中のベクトルデータを暗号化します。ベクトルインデックスは、AWS 所有キー、AWS マネージドキー、または AWS KMS のカスタマーマネージドキーのいずれであっても、テーブルの暗号化設定を継承します。ベクトルインデックスに対して暗号化を個別に設定することはありません。

検索専用アクセスの最小特権ポリシーを含む IAM ポリシーの例については、「[ベクトルインデックスを検索するためのアクセスを許可する IAM ポリシー](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/iam-policy-example-search-vectors.html)」を参照してください。