[AWS] IAM 개념, 기능 및 IAM 사용자 추가하기

·2023년 5월 17일
0

AWS

목록 보기
10/11
post-thumbnail

1. IAM(Identity and Access Management)이란?

  • AWS Identity and Access Management (IAM)은 AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스이다.
  • AWS의 계정을 최초로 생성할 때 모든 AWS 서비스 및 리소스에 대해 완전한 액세스 권한이 있는 단일 로그인 ID로 시작한다. 이 자격 증명을 루트 사용자라고 한다.
  • 하지만 루트 계정은 공유되어서도 안 되고 보안을 주의해야 한다. 모든 권한을 가지고 있기 때문에.
  • 그래서 루트 사용자를 사용하지 않을 것을 권장하고, IAM을 통해 리소스를 사용할 수 있도록 인증(로그인, 계정) 및 권한 부여된 대상을 제어한다.


2. IAM의 기능

  • AWS 계정에 리소스를 관리하고 사용할 수 있는 권한을 다른 사람에게 부여할 수 있다.
  • 리소스에 따라 여러 사람에게 다양한 권한을 부여할 수 있다. 세분화되게 권한 부여가 가능하다.
  • Amazon EC2 인스턴스에 대해 IAM 기능을 통해 완전하게 자격 증명을 안전하게 제공할 수 있다.
  • 멀티 팩터 인증(MFA) 제공한다. 계정 소유자나 사용자가 계정 사용을 위해 암호, 액세스 키뿐 아니라 특별히 구성된 Device 코드도 제공해야 한다.
  • ID 페더레이션을 제공한다.
  • PCI DSS를 준수한다.
  • 많은 AWS 서비스와 통합이 가능하다.
  • 일관성을 제공하고, 기본적으로 추가 비용 없이 무료 이용이 가능하다.


3. IAM 정책 (IAM Policy)

  • IAM 정책(policy)IAM 역할(role) 혹은 개인 사용자에 부여할 수 있다.
  • 사용자에게 직접적으로 정책을 줄 수도 있지만 사용자 그룹에 대해서 줄 수도 있다.


4. IAM 사용자 추가하기

1) IAM 대시보드

  • 다음과 같이 IAM 대시보드에서 액세스 관리 -> 사용자를 선택하면 지금까지 생성한 IAM 사용자들을 볼 수 있다.
  • 새로운 사용자를 생성하기 위해서 사용자 추가 버튼을 눌러 준다.
  • 사용자 추가를 눌러 주면 사용자를 추가하는 단계는 다음과 같이 진행됨을 알 수 있다.

2) 사용자 세부 정보 지정

  • 사용자의 세부 정보를 입력하는 창이 뜬다. 첫 번째는 사용자의 이름 즉, IAM 계정을 뜻한다.
  • 이후 AWS Management Console에 대한 사용자 액세스 권한을 제공을 선택할 수 있는데 이때 Identity Center를 이용하면 사용자가 콘솔을 액세스할 수 있는 권한을 제공받는다.
  • IAM 사용자를 생성하고 싶다고 선택하면 액세스 키나 암호 등 서비스별 보안 인증 정보를 통해 프로그래밍 방식 액세스를 활동화해야 하는 경우에만 권장된다.
  • IAM 사용자를 생성하고 싶음을 선택하면 다음과 같이 AWS에서 자동으로 생성된 암호를 부여하거나 사용자 지정 암호를 통해 직접 설정해서 사용할 수 있는 창이 뜬다.

3) 권한 설정

  • 권한 설정에서는 사용자 그룹을 새로 생성거나 기존의 사용자 그룹`에 사용자를 추가할 수 있다.
  • 이때 사용자 그룹은 그룹 단위로 정책(policy)이나 역할(role)을 부여할 수 있기 때문에 해당 사용자에게 해당하는 권한이나 역할을 생각하여 추가해 주어야 한다.
  • 한 명의 사용자는 목적에 따라 하나의 정책(policy)이나 역할(role) 부여받는 것이 아니라 다양한 정책(policy)이나 역할(role)을 부여받을 수 있다. 즉, 한 명의 사용자가 두 개, 세 개의 사용자 그룹에 포함될 수도 있다는 것이다.
  • 또한 사용자 단독으로도 정책(policy)를 부여할 수 있기 때문에 개인의 단위로 권한을 부여할 경우 직접 정책 연결을 선택하면 된다.
  • 직접 정책 연결을 선택할 경우 사용자 그룹 대신 AWS에서 관리하는 수많은 권한 정책들이 나오게 된다. 이때 필요한 정책이 없다면 정책 생성 버튼을 눌러 정책을 직접 만들 수도 있다.

4) 최종 검토

  • 마지막 단계는 검토 단계이다.
  • 여태까지 설정해 준 사용자의 세부 정보와 권한들이 뜨게 된다.
  • 나는 EC2에 해당 사용자가 기능을 사용할 수 있도록 해 주기 위해 EC2와 관련된 정책을 넣어 둔 일전에 만들었던 EC2라는 사용자 그룹에 사용자를 포함 시켰다.
  • 이후 모든 검토가 끝났다면 사용자 생성 버튼을 눌러 사용자를 생성해 준다.

5) 생성된 암호 확인 및 다운로드

  • 마지막으로 IAM 계정을 생성하면 해당 콘솔에 로그인 할 수 있는 URL이 뜬다.
  • .csv 파일은 다운받아 저장해 두도록 한다. 해당 .csv 파일에는 콘솔 로그인 URL과 사용자 이름, 콘솔 암호가 있다.

6) 생성된 IAM 사용자로 로그인해 보기

  • 그러기 위해서는 먼저 콘솔 로그인 URL로 접속해 준다.
  • 콘솔 URL로 접속하면 이렇게 IAM 사용자로 로그인이라는 창이 뜨고, 내 계정 ID 혹은 별칭이 뜨게 된다.
  • 하단에 만들었던 사용자의 이름과 발급받은 암호를 입력해 준다.
  • 처음 발급받은 비밀번호로 IAM 계정 로그인을 해 주게 되면 다음과 같이 새 비밀번호를 설정하는 창이 뜬다.
  • 여기에 이전 비밀번호를 입력하고 새 비밀번호를 설정해 준다.
  • 다음과 같이 루트 계정이 아니라 IAM사용자이름@내루트계정이름-aws-iam 계정으로 접속된 것을 볼 수 있다.
profile
송의 개발 LOG

0개의 댓글