본문 바로가기

AWS

[AWS] IAM

 

배포 자동화에 대해서 실습을 하기 이전에, 먼저 알아야 할 것이 있습니다.

사용자 권한 제어 서비스인 AWS IAM(Identity and Access Management)는 AWS에 대한

개별 액세스 및 그룹 액세스를 안전하게 제어할 수 있습니다.

사용자 자격 증명을 생성 및 관리하고, 이러한 IAM 사용자에게 리소스를 액세스할 수 있는 권한을 부여할 수 있습니다.

또한, AWS 외부의 사용자에게 권한을 부여할 수도 있습니다.

IAM의 경우에는 사용한다고 추가로 금액이 발생하거나 하지는 않습니다.

 

IAM을 사용하기 위해 필요한 용어들을 정리해보겠습니다.

권한

AWS의 서비스나 자원에 어떤 작업을 할 수 있는지 명시해두는 규칙입니다.

 

정책

권한들의 모음입니다. 사용자나 그룹에 직접 적용할 수는 없고, 권한들로 만든 정책을 적용해야 합니다.

정책은 사용자, 그룹, 역할에 적용할 수 있습니다.

 

사용자

AWS 서비스 및 어플리케이션에서 식별하는 고유한 자격 증명입니다.

사용자는 AWS 서비스에 대한 액세스를 요구하는 개인, 시스템 또는 어플리케이션입니다.

 

그룹

여러 사용자에게 공통으로 권한을 부여할 수 있게 만들어진 개념입니다.

하나의 그룹에 여러 명의 사용자를 지정할 수 있습니다.

 

역할

어떤 행위를 하는 객체에 여러 정책을 적용한다는 점에서 사용자와 비슷하지만

객체가 사용자가 아닌 서비스나 다른 AWS 계정의 사용자입니다.

사용자가 아닌 특정 서비스에서 생성한 객체에 권한을 부여하는데 사용됩니다.

 

인스턴스 프로파일

EC2 인스턴스를 구분하고 그 인스턴스에 권한을 주기 위한 개념입니다.

인스턴스 시작 시 EC2 인스턴스에 역할 정보를 전달하는데 사용됩니다.

인스턴스 프로파일이 지정된 EC2는 시작 시 역할 정보를 받아오고 해당 역할로 필요한 권한들을 얻게 됩니다.

 

IAM 생성하기

 

1. IAM을 입력하여 이동한 후, 역할을 클릭합니다.

 

 

2. 추후 배포 자동화를 해보기 위해 CodeDeploy를 사용해볼 것이기 때문에 역할 만들기에서 AWS 서비스 중 CodeDeploy를 선택합니다.

 

 

3. CodeDeploy를 위한 AWSCodeDeplyRole이라는 이름의 정책이 뜰 것이고, 이 정책에 대하여 어떠한 권한이 포함돼 있는지

   확인하기 위해 해당 정책을 클릭하면, 다음과 같은 정책들이 뜰 것입니다.

 

 

4. 다음으로 태그는 따로 지정하지 않고, 역할의 이름과 설명을 지정한 후애 생성합니다.

 

 

다음으로는 EC2 인스턴스 역할, 인스턴스 프로파일을 생성하겠습니다.

필요한 권한들을 모은 정책을 생성하고, 해당 정책을 적용한 역할을 생성하는 순입니다.

 

1. 정책 메뉴를 클릭한 뒤, 정책 생성을 누릅니다.

 

2. JSON 탭을 클릭하여, S3의 읽기 권한을 추가해줍니다.

   이는 추후에 CodeDeploy Agent가 S3에서 파일을 가져와야 할 때 필요합니다.

 

 

3. 다음으로 의도한대로 S3에 대한 읽기 권한이 추가됐는지 확인하고 생성합니다.

 

 

4. 다음으로 생성한 정책을 적용하기 위한 역할을 만들기 위해 다시 역할 메뉴에 들어간 후, 역할 만들기를 클릭합니다.

 

5. 다음으로는 EC2를 위한 역할이므로, AWS 서비스 중 EC2를 선택합니다.

 

6. 생성한 정책의 이름을 검색한 후, 만들어줍니다.

 

 

7. 다시 역할로 돌아가 확인해보면 의도한대로 역할이 만들어진 것을 확인할 수 있습니다. 

 

'AWS' 카테고리의 다른 글

[AWS] CodeDeploy (2/2)  (0) 2020.07.11
[AWS] CodeDeploy (1/2)  (0) 2020.07.10
[AWS] Route 53, HTTPS, SSL/TLS, Certificate Manager  (0) 2020.07.09
[AWS] Elastic Load Balancer  (0) 2020.07.07
[AWS] Auto Scaling (2/2)  (0) 2020.07.02