Amazon S3:可讓 Amazon Cognito 使用者存取其儲存貯體中的物件 - AWS Identity and Access Management

Amazon S3:可讓 Amazon Cognito 使用者存取其儲存貯體中的物件

此範例會示範如何建立身分型政策,允許 Amazon Cognito 使用者存取特定 S3 儲存貯體中的物件。此政策僅允許存取名稱包含 cognito 的物件、應用程式的名稱和聯合身分使用者的 ID,由 ${cognito-identity.amazonaws.com:sub} 變數呈現。此政策僅會授予從 AWS API 或 AWS CLI 以程式設計方式完成此動作的必要許可。若要使用此政策,請將範例政策中的斜體預留位置文字取代為您自己的資訊。然後,遵循建立政策編輯政策中的指示進行操作。

注意

物件索引鍵中使用的 'sub' 值不是使用者集區中的使用者的 sub 值,而是身分集區中與使用者相關聯的身分 ID。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListYourObjects", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::bucket-name" ], "Condition": { "StringLike": { "s3:prefix": [ "cognito/application-name/${cognito-identity.amazonaws.com:sub}/*" ] } } }, { "Sid": "ReadWriteDeleteYourObjects", "Effect": "Allow", "Action": [ "s3:DeleteObject", "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::bucket-name/cognito/application-name/${cognito-identity.amazonaws.com:sub}/*" ] } ] }

Amazon Cognito 為您的 Web 和行動應用程式提供身分驗證、授權和使用者管理。您的使用者可透過使用者名稱和密碼直接登入,或透過第三方 (例如 Facebook、Amazon 或 Google) 登入。

Amazon Cognito 的兩個主要元件是使用者集區和身分集區。使用者集區是一種使用者目錄,能為應用程式使用者提供註冊和登入的選項。身分集區可讓您將您的使用者存取授予其他 AWS 服務。您可以單獨或一併使用身分集區和使用者集區。

如需有關 Amazon Cognito 的詳細資訊,請參閱下列: