얼마 전에 amzon aws root key가 유출된적이 있었고, 그로 인해서 계정이 무단 도용된 적이 있었다.
그때 이후로 난 root iam을 아예 없애 버렸다.
대신 다음과 같은 방법으로 EC2 인스턴스에 직접 S3권한을 부여하는 방법을 선택했다.
자잘하게 보면 그 절차가 꽤나 복잡하고, 간단하게 생각하자면 크게 2단계다.
일단 크게 보자면,
1.Policy와 Role을 생성.
2. 생성된 role을 EC2 인스턴스 생성시에 할당
위 두단계이다.
간단하게 말하면 두 단계지만, 실제 운영중인 EC2 서버를 기준으로 봤을 때에는 조금 더 복잡하다.
일단 본인이 했던 방식대로,,
즉, 기존 운영중인 EC2 인스턴스 자체에 S3접근 권한을 부여하는 방법을 소개해보고자 한다.
일단 기존에 운영중인 EC2 인스턴스에 IAM role을 동적으로 적용시킬 수 있는 방법은 없다.
따라서 우선 현재 운영중인 인스턴스에 대해서 AMI를 생성한 후, 이를 launch하면서 해당 IAM role을 적용해야 한다.
1. AWS console에 접속
2. AMI를 생성하기 이전에 우선 IAM role을 생성해야 한다. 그러기 위해서 콘솔에서 Identity & Access Management에 접속
아래와 같은 화면이 나옴.
2. 좌측 메뉴에서 Policy를 선택
3. Copy AWS Managed Policy를 선택
4. AmazonS3FullAccess를 선택
5. 새로 생성할 policy명을 설정하고 description을 작성
접근을 특정 bucket으로 제한하고 싶으면 Resource:"*"를 "Resource":"arn.:aws:s3:::{bucketname}"으로 변경하면 된다.
6. Policy 생성 (Create)
7. Role생성
8. 마찬가지로, IAM console의 왼쪽 메뉴에서 role을 선택
9. 적절한 role 이름을 입력한다.
10. Role Type을 Amazon EC2로 선택
11. 해당 role에 앞서 생성한 policy를 연결시킨다.
12. Role을 생성한다.
일단 크게 보면 여기까지가 1단계라고 볼 수 있다.
포스트가 길어지면 보기 않좋으니,, 2단계를 다음 포스트에서 연결하도록 하겠습니다.
'AmazonAWS' 카테고리의 다른 글
깃털보다 가벼운 AWS 팁 - 1st Tip (0) | 2016.06.29 |
---|---|
EC2 instance에 S3권한 Attach하기 2편 (0) | 2016.03.19 |
Amazon RDS MariaDB UTF-8 변경 (0) | 2015.11.12 |
Region(리젼)과 Availability Zone (0) | 2014.07.09 |
인스턴스와 AMI (0) | 2014.07.08 |