S3 向量中的身分和存取管理 - Amazon Simple Storage Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

S3 向量中的身分和存取管理

注意

Amazon S3 Vectors 為 Amazon Simple Storage Service 的預覽版本,可能會有所變更。

S3 Vectors 中的存取管理遵循 AWS 安全最佳實務,提供多層控制,以確保只有授權的使用者和應用程式才能存取您的向量資料。此服務與 IAM 整合,並支援以身分為基礎的政策和資源為基礎的政策,讓您靈活地建構和管理整個組織的許可。

驗證和授權請求

S3 Vectors 使用 AWS 標準身分驗證和授權機制來保護對向量儲存貯體及其內容的存取。對 S3 Vectors 的每個請求都必須使用有效的 AWS 登入資料進行驗證,而且服務會根據身分型政策、資源型政策以及任何適用服務控制政策的組合來評估許可。

當用戶端使用 AWS 登入資料 (存取金鑰、來自 的臨時登入資料或 IAM 角色) 向 S3 Vectors 提出請求時 AWS STS,身分驗證程序就會開始。服務會驗證這些登入資料,然後針對請求的動作和目標資源,評估與已驗證身分相關聯的許可。此評估程序會考慮多種政策類型,並套用最低權限原則來判斷是否應允許或拒絕請求。

S3 Vectors 中的授權會以多個精細程度運作。您可以在向量儲存貯體層級、個別向量索引層級,甚至是索引內的特定操作上控制存取。此階層式許可模型可讓您實作符合您組織結構和資料控管需求的複雜存取控制機制。

為向量儲存貯體定義的資源類型

S3 Vectors 定義可在 IAM 政策和以資源為基礎的政策中參考的特定資源類型。了解這些資源類型對於建立有效的存取控制政策至關重要,這些政策可為適當的使用者和應用程式提供適當的存取層級。

下表說明 S3 Vectors 中可用的資源類型。

S3 向量中可用的資源類型
資源類型 ARN 格式 描述
VectorBucket arn:aws:s3vectors:region123456789012:bucket/bucket-name 代表向量儲存貯體,並用於儲存貯體層級的操作,例如建立、刪除或設定儲存貯體
索引 arn:aws:s3vectors:region123456789012:bucket/bucket-name/index/index-name 代表儲存貯體中的向量索引,並用於索引特定的操作,例如查詢向量或管理索引內容

向量儲存貯體的政策動作

S3 Vectors 提供一組完整的政策動作,對應於您可以在向量儲存貯體和索引上執行的各種操作。這些動作旨在提供對誰可以執行特定操作的精細控制,讓您有效地實作最低權限原則。

下表列出 S3 Vectors 資源的所有可用政策動作。

S3 Vectors 資源的政策動作
資源類型 API 操作 政策動作 政策動作的描述 存取層級 條件索引鍵
帳戶 ListVectorBuckets s3vectors:ListVectorBuckets 准許列出帳戶和區域中的所有向量儲存貯體 清單
VectorBucket CreateVectorBucket s3vectors:CreateVectorBucket 准許使用指定的組態建立新的向量儲存貯體 寫入 s3vectors:sseType、s3vectors:kmsKeyArn
VectorBucket GetVectorBucket s3vectors:GetVectorBucket 准許擷取向量儲存貯體屬性和組態 讀取
VectorBucket DeleteVectorBucket s3vectors:DeleteVectorBucket 准許刪除空的向量儲存貯體 寫入
VectorBucket ListIndexes s3vectors:ListIndexes 准許列出向量儲存貯體中的所有索引 清單
VectorBucket PutVectorBucketPolicy s3vectors:PutVectorBucketPolicy 准許在向量儲存貯體上套用或更新資源型政策 許可管理
VectorBucket GetVectorBucketPolicy s3vectors:GetVectorBucketPolicy 准許擷取連接到向量儲存貯體的資源型政策 讀取
VectorBucket DeleteVectorBucketPolicy s3vectors:DeleteVectorBucketPolicy 准許從向量儲存貯體中移除資源型政策 許可管理
索引 CreateIndex s3vectors:CreateIndex 准許使用指定的維度和中繼資料組態建立新的向量索引 寫入
索引 GetIndex s3vectors:GetIndex 准許擷取向量索引屬性和組態 讀取
索引 DeleteIndex s3vectors:DeleteIndex 准許刪除向量索引及其所有內容 寫入
索引 QueryVectors (必要) s3vectors:QueryVectors

准許對 索引中的向量執行相似性查詢。

s3vectors:QueryVectors 僅使用 ,您可以擷取近似最近鄰的向量索引鍵及其與查詢向量的計算距離。只有在您未設定任何中繼資料篩選條件,且未請求向量資料或中繼資料 (藉由將 returnMetadata 參數保持為 false 或未指定) 時,此許可才足夠。

讀取
(有條件需要):s3vectors:GetVectors

如果您設定中繼資料篩選條件,請在請求中將 returnMetadata 設定為 true,則為必要。

使用 s3vectors:QueryVectorss3vectors:GetVectors時,您可以使用中繼資料條件來篩選結果,並擷取向量索引鍵及其相關聯的資料、中繼資料和與查詢向量的計算距離。

讀取
索引 PutVectors s3vectors:PutVectors 准許在索引中新增或更新向量 寫入
索引 GetVectors s3vectors:GetVectors 准許依向量索引鍵擷取特定向量及其中繼資料 讀取
索引 ListVectors (必要) s3vectors:ListVectors

准許列出索引中的向量索引鍵。

只有使用 時s3vectors:ListVectors,您可以在 returnDatareturnMetadata 參數皆為 false 或未指定時列出向量索引鍵。

讀取
(有條件需要):s3vectors:GetVectors

如果您在請求中將 returnDatareturnMetadata 參數設定為 true,則為必要。

使用 s3vectors:ListVectorss3vectors:GetVectors,您可以透過將 returnDatareturnMetadata 設定為 true 來擷取向量索引鍵及其相關聯的資料和中繼資料。

讀取
索引 DeleteVectors s3vectors:DeleteVectors 准許從索引刪除特定向量 寫入

這些動作可以透過各種方式組合,以建立符合您特定存取需求的政策。例如,您可以建立包含 s3vectors:GetVectorBuckets3vectors:QueryVectorss3vectors:ListIndexess3vectors:GetVectors動作的唯讀政策,或包含查詢和向量擷取許可的政策,但不包括建立或刪除索引等管理動作。

向量儲存貯體的條件索引鍵

向量儲存貯體的條件索引鍵
條件索引鍵 描述 Type
1 s3vectors:sseType 依伺服器端加密類型篩選存取權 有效值: AES256 | aws:kms 字串
2 s3vectors:kmsKeyArn 針對用於加密向量儲存貯體的 AWS AWS KMS 金鑰,依金鑰 ARN 篩選存取權 ARN