DevOps

AWS Infra 설명서 : IAM

Daniel0617 2022. 10. 6. 20:49

AWS Account & IAM

AWS IAM(Identity and Access Management)은 AWS 리소스에 대한 액세스를 안전하게 관리할 수 있는 웹 서비스이다. IAM을 활용해 사용자가 리소스에 대한 인증 및 권한 부여된 대상을 제어한다.

 

IAM은 누가, 무엇을, 어떻게 할 것인지에 대한 인증과 인가를 제어하는 서비스다.

 

어떤 유저가 AWS 서비스에 요청을 보내면서 인증을 위한 유저의 자격 증명도 함께 보낸다. AWS 서비스에서는 유저가 요청한 내용을 처리하기 전에 우선 자격 증명을 IAM에 보낸다. 그리고 IAM에서는 해당 자격 증명을 보고 유저가 올바른 유저인지(인증), 유저가 올바르다면 해당 서비스와 서비스의 기능을 사용가능 여부를 판단(인가) 후 문제가 없다면 서비스 이용을 허용한다.

 

추가로 AWS 계정을 처음 생성할 때 해당 계정. 즉, 로그인한 계정이 모든 리소스 및 서비스 권한을 완전히 갖고 있는 것을 Root 사용자라고 한다. AWS에서는 해당 계정을 통해 IAM에 관한 전반적이 정책 설정과 사용자 추가 후 더이상 사용하지 않을 것을 권고하고 있다.

 

 

정책 및 그룹

IAM 사용자를 IAM 그룹으로 구성하고 이 그룹에 정책(ex. Bob, Susan → Group : Admins)을 연결할 수 있다. 그룹에 연결된 정책에 명시된 권한이 그룹 내 모든 사용자에게 부여된다. 사용자는 그룹으로 묶일 수 있고, 권한은 정책으로 묶일 수 있으며 각각의 그룹과 정책은 서로 맵핑된다.

    • 사용자 및 그룹
      • 인증 받을 수 있는 사용자 및 그룹 생성
      • 그룹별 인가된 권한을 사용 할 수 있도록 설정 할 수 있습니다.

 

    • 정책
      • 관리형 정책 : AWS 계정의 여러 사용자, 그룹 및 역할에 연결할 수 있는 독립형 정책
        • AWS 관리형 정책 : AWS가 생성 및 관리하는 정책
        • 고객 관리형 정책 : 사용자가 직접 생성한 정책

 

  • 역할
    • 역할을 통해 사용자 뿐만 아니라 AWS 리소스에서도 서로 간에 접근이 가능하다.(E
    • ex. ECS 작업 실행 시 ECR의 이미지를 불러와야 한다면, 해당 ECS쪽에서 접근 권한이 필요하다. 이럴때 해당 역할을 ECS에 매핑 시켜줘야 할 필요가 있다.

 

 

참고 : AWS IAM(https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/introduction.html)

'DevOps' 카테고리의 다른 글

EBS(Elastic Block Store) 다운사이징  (0) 2022.10.25
배포전략(Deployment Strategy)  (0) 2022.10.07
AWS Infra Tutorial(1)  (0) 2022.08.23
CI/CD 참고  (0) 2022.03.17
3. Jenkins + git push 연동  (0) 2019.08.25