AWS 21개의 IAM 운영 규칙 - 21 pillars of AWS IAM Governance

작성자
Roronoa
작성일
2021-09-08 17:21
조회
332
AWS IAM 운영 관리 Governance

  1. IAM 유저는 Naming Convention 으로 생성

  2. 비밀번호 관리는 유저가 직접 관리

  3. 모든 유저는 모두 MFA를 강제로 사용

  4. 관리자는 액세스 정의에 대한 인벤토리 관리

  5. 관리자는 액세스 정의와 권한에 대한 플로우 차트 관리

  6. 긴급하게 액세스 권한을 줄수 있는 권한 관리 

  7. 자격증명 권한을 모니터링 하고 권한을 축소

  8. 액세스 제한을 두며 가드레일을 정의

  9. 임시 권한은 수명 주기에 따라 권한 액세스 관리

  10. 퍼블릭 및 교차 계정 액세스 분석 

  11. 공유 리소스(허브 부분)의 소비 관리 및 모니터링 

  12. IAM Portal 권한은 관리자 만 관리 

  13. 관리자 계정은 Access Key를 생성하지 않음

  14. Root 계정은 Access Key 를 생성 하지 않음

  15. 모든 Access Key는 3개월에 한번 변경

  16. IAM 은 최소권한 원칙이 기본 디폴트

  17. 유저에 권한을 주지 않고 Group 으로 권한을 부여.

  18. CLI와 콘솔 동시에 사용하는 사람은 token을 받아야만 사용 가능 

  19. 장기 자격 증명 보단 임시 자격 증명 사용 

  20. 중앙 집중식 자격 증명 공급자 사용 

  21. CloudFormation으로 IAM을 Infrastructure as Code 로 관리


IAM 유저는 Naming Convention 으로 생성

IAM 유저는 Naming Convention 에 맞게 유저 생성 및 관리합니다.

예제) 프로젝트 이름의 첫 문자이름과 00x 이름으로 이름 구분 projectname00x

예제) 내부 직원은 projectname00x-FirstNameLastname

예제) 외부 직원은projectname00x-GroupName00x

예제) 그룹 단위 유저는 projectname00x-GroupName00x

 

비밀번호 관리는 유저가 직접 관리

유저의 비밀번호는 초기 제공된 비밀번호가 강제적으로 패스워드 변경해야 로그인 가능하도록 패스워드 변경 권한을 제공합니다. 초기 비밀번호는 랜덤 생성 제공하며 유저가 주기적으로 변경하도록 3개월에 한번 변경하도록 비밀번호 리셋을 진행 합니다.

 

모든 유저는 모두 MFA를 강제로 사용

모든 유저는 Multi-Factor-Authentication (다중인증) 장치를 사용해서 접속하도록 강제해서 보안을 강화 합니다.

 

관리자는 액세스 정의에 대한 인벤토리 관리

변경시 모든 액세스 정의에 대한 관리를 엑셀 차트를 사용하며 항상 업데이트 합니다.

 

관리자는 액세스 정의와 권한에 대한 플로우 차트 관리

주기적으로 액세스 정의와 권한에 대한 플로우 다이어그램을 업데이트 합니다

 

긴급하게 액세스 권한을 줄수 있는 권한 관리 

자동화된 프로세스에는 대부분 장기 자격 증명이 사용되므로 긴급하게 테스트 권한을 줄 수 있는 유저에 장기 자격 증명을  미리 생성 해서 빠른 대처를 합니다.

 

자격증명 권한을 모니터링 하고 권한을 축소

자격증명 권한을 지속적으로 모니터링 하고 주기적으로 권한을 축소하여 가이드하며              사용하지 않는 자격 증명 및 권한은 삭제합니다. 정기적으로 주 1회 모니터링 후 결과 반영합니다.

 

액세스 제한을 두며 가드레일을 정의

조직의 모든 자격 증명에 대한 액세스를 제한하는 공통 제어를 설정합니다. 예를 들어 특정 AWS 리전에 대한 액세스를 제한하거나 중앙 보안 팀에 사용되는 IAM 역할과 같은 공통 리소스를 운영자가 삭제하지 못하게 할 수 있습니다.

 

임시 권한은 수명 주기에 따라 권한 액세스 관리

임시 권한을 사용할때는 수명 주기를 명시하며 수명 주기는 자동 관리 됩니다. MFA 수명주기를 사용 하지 않고는 CLI 명령어는 권한 불가 입니다.

 

퍼블릭 및 교차 계정 액세스 분석 

외부 유저 나 퍼블릭 유저의 주기적 액세스 분석이 필요하며 권한 관리 합니다. 정기적으로 주 1회 모니터링 후 결과 반영합니다.

 

공유 리소스(허브 부분)의 소비 관리 및 모니터링 

공유 리소스가 있는 부분의 권한은 관리자만 권한을 가져야 하며 책임을 가집니다.

예제)허브 부분의 리소스

 

IAM Portal 권한은 관리자 만 관리 

비밀번호 변경 부분을 제외한 IAM Portal 권한은 관리자만 관리 합니다.

 

관리자 계정은 Access Key를 생성하지 않음

관리자 계정은 Access Key 를 생성 하지 않으며 사용하지 않습니다.

 

Root 계정은 Access Key 를 생성 하지 않음

Root 계정은 Access Key 를 생성 하지 않으며 사용하지 않습니다.

 

모든 Access Key는 3개월에 한번 변경

장기 자격 증명 Access Key는 3개월 단위로 변경을 진행합니다. 

 

IAM 은 최소권한 원칙이 기본 디폴트

유저 권한 관리는 최소 권한 원칙을 디폴트로 유지하며 주기적인 권한 축소 합니다.

 

유저에 권한을 주지 않고 Group 으로 권한을 부여.

유저 각자에 권한을 주면 권한 관리가 어려우므로 그룹으로 권한 관리 합니다.

 

CLI와 콘솔 동시에 사용하는 사람은 token을 받아야만 사용 가능 

CLI 사용자도 MFA Token 사용해서 권한을 얻어야 합니다.

 

장기 자격 증명 보단 임시 자격 증명 사용 

자동화를 위해서 코드 내부에 장기 자격 증명을 사용한다면 MFA 없이 사용 가능하나 

최소한 사용을 권장합니다.

 

중앙 집중식 자격 증명 공급자 사용 

다수의 계정 사용시 AWS organizations 의로 계정 통합 사용 합니다.

 

CloudFormation으로 IAM을 Infrastructure as Code 로 관리

유저 그룹 롤 정책 권한 등의 모든 IAM 설정을 CloudFormation으로 Infrastructure as Code로   관리합니다.