2012-01-17 5 views
2

예를 들어 사용자 A와 B가있는 웹 사이트가 있습니다. 둘 다 내 로그인 시스템을 사용하여 내 웹 사이트에 로그인 할 수 있습니다.Amazon S3 파일 보호 모범 사례?

내 웹 사이트에 로그인하면 S3의 특정 파일을 사용자 A 만 액세스 가능하게하려면 어떻게해야합니까?

참고 : AWS 관리 콘솔에서 "인증 된 사용자"옵션을 사용하여 "사용 권한"을 보았지만 다른 S3 사용자에게만 해당되는 것으로 보입니다. 목표를 달성하는 데 사용할 수 있습니까?

답변

1

Amazon IAM을 사용해야합니다. S3 버킷 A의 어느 부분을 볼 수 있는지 정의 할 수 있으며, B는 각각 '아무것도 할 수있는 권한이 없습니다.'를 정의 할 수 있습니다. 일반적으로 계정 ID와 비밀은 절대 사용해서는 안되며 항상 IAM 사용자가 물건을 실행하는 데 필요한 것을 가지고 있어야합니다. 관리자 사용자는 EC2 또는 SQS 또는 SimpleDB 등이 필요하지 않습니다.

임의 액세스 권한이있는 사용자는 웹 사이트에 로그인하여 12 시간 동안 액세스 권한을 부여 할 수 있습니다. S3의 섹션에서만 볼 수있는 액세스 권한에 대해 특별 AWSID를받습니다.

+0

제안 해 주셔서 감사합니다.하지만 AWS 내부에서 사용자를 생성해야합니까? 만료 URL이 작업을 수행해야하거나, IAM과 관련이 있거나 완전히 다른 URL을 읽었습니다. AWS 내부에서 사용자를 만들 필요가 없다는 인상을 받고 있습니다. 분명히 말하면 : 내 웹 사이트에 로그인 한 경우에만 내 웹 사이트에서 할당 된 파일을 내 사용자가 다운로드하도록 허용하면됩니다 (AWS에 사용자 계정이 없어도됩니다). – IMB

+1

페더레이션 액세스는 만료 URL과 비슷하지만 선택하는 s3 repo의 일부분입니다. 연합 토큰은 사용자가 설명하는 용도로 제작되었습니다. 로그인하려는 모든 사용자에 대해 id + secret + 토큰 세트를 만들 수 있습니다. 그런 다음 사용자가 UI/서버/등의 일부 구멍을 사용하여 S3의 다른 영역을 해킹하려고해도 GetFederatedToken을 호출 할 때 부여한 액세스 권한 만 있기 때문에 작동하지 않습니다. –

+0

감사합니다. – IMB