Amazon S3: Amazon Cognito 사용자가 버킷에 있는 객체에 액세스하도록 허용
이 예제에서는 Amazon Cognito 사용자가 특정 S3 버킷에 있는 객체에 액세스하도록 허용하는 IAM 정책을 생성하는 방법을 보여줍니다. 이 정책은 ${cognito-identity.amazonaws.com:sub} 변수로 표현되는 cognito
, 애플리케이션 이름 및 페더레이션 사용자의 ID를 포함하는 이름을 통해 객체에 대한 액세스만을 허용합니다. 이 정책은 AWS API 또는 AWS CLI에서 이러한 작업을 프로그래밍 방식으로 완료하는 데 필요한 권한을 부여합니다. 이 정책을 사용하려면 정책 예제의 기울임꼴 자리 표시자 텍스트
를 본인의 정보로 대체하십시오. 그런 다음 정책 생성 또는 정책 편집의 지침을 따릅니다.
객체 키에 사용된 '하위' 값은 사용자 풀의 사용자 하위 값이 아니라 자격 증명 풀의 사용자와 연결된 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:GetObject", "s3:PutObject", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::bucket-name
/cognito/application-name
/${cognito-identity.amazonaws.com:sub}", "arn:aws:s3:::bucket-name
/cognito/application-name
/${cognito-identity.amazonaws.com:sub}/*" ] } ] }
Amazon Cognito는 웹 및 모바일 앱에 대한 인증, 권한 부여 및 사용자 관리를 제공합니다. 사용자는 사용자 이름과 암호를 사용하여 직접 로그인하거나 Facebook, Amazon, 또는 Google 같은 타사를 통해 로그인할 수 있습니다.
Amazon Cognito의 두 가지 주요 구성 요소는 사용자 풀과 자격 증명 풀입니다. 사용자 풀은 앱 사용자의 가입 및 로그인 옵션을 제공하는 사용자 디렉터리입니다. 자격 증명 풀을 통해 사용자에게 기타 AWS 서비스에 액세스할 수 있는 권한을 부여할 수 있습니다. 자격 증명 풀과 사용자 풀을 별도로 또는 함께 사용할 수 있습니다.
Amazon Cognito에 대한 자세한 내용은 다음을 참조하세요.
-
AWS Mobile SDK for Android 개발자 안내서의 Amazon Cognito 자격 증명
-
AWS Mobile SDK for iOS 개발자 안내서의 Amazon Cognito 자격 증명