AWS

[AWS] IAM 이란?

수수한개발자 2023. 5. 13.
728x90

IAM

Identity and Access Management 의 약자이자 유저를 관리하고 접근 레벨 및 권한에 대한 관리를 가능하게 해주며 크게 다음과 같은 일을 한다.

  • 접근 키(Access Key) 와 비밀키(Secret Access Key)
  • 매우 세밀한 접근 권한 부여 기능(Granular Permission)
  • 비밀번호를 수시로 변경 가능케 해줌
  • Multi-Factor Authentiocation(다중 인증 ) 가능

접근 키(Access Key) 와 비밀키(Secret Access Key)

새로운 AWS 계정을 만들면 그 유저는 루트 유저가 된다.

그 루트 유저 안에서 다른 유저를 생성 가능하다.

만약 유저 A를 만들었다고 가정하면 IAM은 A라는 유저에 대해 접근 키(Access Key) 와 비밀키(Secret Access Key)를 생성해준다.

이 키들은 비밀번호로 로그인하는 방식이 아닌 CLI나 API를 통해 AWS를 원격에서 사용할 수 있게 해준다.

 

 

매우 세밀한 접근 권한 부여 기능(Granular Permission)

AWS에는 DynamoDB라는것이 있다. 테이블 생성, 삭제, 복사 를 할 수 있을때 유저 A에게 테이블 생성 기능의 권한만 줄 수 있고, 삭제, 복사의 권한도 줄 수 있다.

이 경우는 회사외의 다른 곳에서 DB에 접근을 할때 삭제를 못하게 한다던지 등등 으로 사용할 수 있다.

 

비밀번호를 수시로 변경 가능하게 한다.

한달 분기별로 AWS 사용자들의 비밀번호를 업데이트를 강요할 수 있다.

 

다중 인증 기능

AWS에 로그인할때 페이스북, 구글등의 인증을 통해 보안을 두껍게 할 수 있다.

특히 루트 유저는 아마존에서도 MFA를 적극 권장한다고 한다.

 

루트 유저는 다른 유저 말고도 그룹, 유저, 역할, 정책을 생성할 수 있다.

 

그룹은 쉽게 말해서 하나의 그룹은 하나, 다수의 유저가 존재할 수 있다.

역할은 유저와 의미가 비슷하나 하나 혹은 다수의 역할을 지정할 수 있다.

정책은 주로 json형태로 되어있는 문서를 가리키며 앞에서 언급했던 세밀한 접근권한을 일일히 설정하여 하나의 정책 document를 만들 수 있다.

정책은 그룹, 역할에 추가시킬 수 있다.

하나의 그룹 안에 다수의 유저가 존재 가능하다.

 

IAM은 유니버설(Universal)하다

-> 지역 설정이 필요 없다.

대부분의 서비스는 Regional 하다. 그래서 지역마다 기능이 다를 수 있다.

하지만 IAM은 지역 설정이 없이 공통적으로 사용한다.

 

728x90

댓글