

# Amazon S3: Amazon Cognito 사용자가 버킷에 있는 객체에 액세스하도록 허용
<a name="reference_policies_examples_s3_cognito-bucket"></a>

이 예제는 Amazon Cognito 사용자가 특정 Amazon S3 버킷에 있는 객체에 액세스하도록 허용하는 ID 기반 정책을 생성하는 방법을 보여줍니다. 이 정책은 \$1\$1cognito-identity.amazonaws.com:sub\$1 변수로 표현되는 `cognito`, 애플리케이션 이름 및 페더레이션 보안 주체 ID를 포함하는 이름을 통해 객체에 대한 액세스만을 허용합니다. 이 정책은 AWS API 또는 AWS CLI에서 이러한 작업을 프로그래밍 방식으로 완료하는 데 필요한 권한을 부여합니다. 이 정책을 사용하려면 정책 예제의 *기울임꼴 자리 표시자 텍스트*를 본인의 정보로 대체합니다. 그런 다음 [정책 생성](access_policies_create.md) 또는 [정책 편집](access_policies_manage-edit.md)의 지침을 따릅니다.

**참고**  
객체 키에 사용된 '하위' 값은 사용자 풀의 사용자 하위 값이 아니라 자격 증명 풀의 사용자와 연결된 ID입니다.

------
#### [ JSON ]

****  

```
{
  "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는 웹 및 모바일 앱에 대한 인증, 권한 부여 및 사용자 관리를 제공합니다. 사용자는 사용자 이름과 암호를 사용하여 직접 로그인하거나 Facebook, Amazon, 또는 Google 같은 타사를 통해 로그인할 수 있습니다.

Amazon Cognito의 두 가지 주요 구성 요소는 사용자 풀과 자격 증명 풀입니다. 사용자 풀은 앱 사용자의 가입 및 로그인 옵션을 제공하는 사용자 디렉터리입니다. 자격 증명 풀을 통해 사용자에게 기타 AWS 서비스에 액세스할 수 있는 권한을 부여할 수 있습니다. 자격 증명 풀과 사용자 풀을 별도로 또는 함께 사용할 수 있습니다.

Amazon Cognito에 대한 자세한 내용은 [Amazon Cognito 사용자 안내서](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-identity.html)를 참조하세요.