본문 바로가기

⭐ AWS/IAM

AWS가 권장하는 IAM BestPractice 10가지

728x90
반응형

1. AWS Account 계정의 AccessKey와 SecretKey 사용 금지.

AccessKey와 SecretKey는 막강한 권한을 가지고 있으므로 절대 노출되어서도 안되고, 만약 노출이 된다면 SDK나 CLI를 통해 해당 Account를 통해 생성한 모든 리소스 자원이 접근이 가능하므로 사용을 하지 않는것을 권장한다.

2. AWS 관리자가 여러명 있다면 관리자 별로 아이디를 생성하라.

하나의 아이디를 생성 후 공유하여 사용하는것을 매우 위험한 방법이다. 관리자가 여러명 있다면 아이디를 개별적으로 생성하여 각각의 관라지에게 알맞는 권한으로 아이디를 부여하는 것이 맞다. 그리고 각각 관리자이게 필요한 권한을 부여하고, Administrator Access 권한을 남발해서는 안된다.

3. 권한 부여시 그룹을 이용하라.

권한 부여 시 그룹으로 권한을 주는것이 좋다.

그룹을 나누어 권한을 부여하는것은 효율적인 관리를 위한 필수라고 볼 수 있다. 예를들어 common 그룹 : 사용자 모두가 사용할 권한을 등록  app 그룹 : 응용프로그램과 관련된 권한을 등록  test 그룹 : 애플맄이션 개발이나, 인프라 개발에 필요한 권한을 등록 위와 같이 각각의 그룹별로 권한을 등록하여 관리를 한다면 보다 효율적인 관리가 가능하다. 물론 그룹이 많아지고 사용자가 많아지면 관리 포인트가 증가하고 어려워 지는 경향이 존재한다. 이러한 문제점을 모두 사전에 파악하여 그룹을 생성 및 구성하는 것이 중요하다.

4. IAM 그룹이나 이용자에게 최소한의 권한을 부여하라.

예를들어 TESTER 라는 사용자가 S3에 파일을 업로드하는 역할을 수행한다고 볼때 TESTER는 S3의 PutObject 권한만 있으면 된다. 그리고 개발자에게는 쓰기 권한이 필요하지만 테스터 에게는 읽기 권한만 필요할 것이다. 이처럼 각 사용자나 그룹에게 최소한의 권한을 부여하는것을 원칙으로 한다.

5. 엄격한 패스워드 정책을 수립한다.

엄격한 패스워드 정책을 수립하도록 정책을 만들 필요가 있다. IAM 관리콘솔에서 PasswordPolicy 메뉴에서 설정이 가능한데 패스워드 전체길이 및 필수포함 문자등을 지정할 수 있다. 해당 정책을 강력하게 설정하여 사용자들이 해당 정책을 따르도록 해야한다.

6. MFA(Multi-Factor-Audentication) 을 사용하라.

많은 권한을 부여받은 사용자는 MFA를 사용함으로써 보안을 강화할 수 있다.

7. EC2 인스턴스에서 기동 된다면, Accrss Key 대신 Role을 사용하라.

해당 프로그램이 EC2 인스턴스에서 기동 된다면 Access Key와 Secret Key를 사용하는 대신 role을 부여하여 실행하도록 하는것이 바람직하다. EC2 인스턴스는 부여받은 role에 허용되는 리소스에만 접근이 가능하다.

8. 계정 공유 시 role을 사용하라.

다른사용자에게 AWS 계정을 공유하거나 Access Key와 Secret Key를 공유하는것은 매우 위험하다. 안전하게 공유하는 방법은 Role for Cross-Account Access를 사용하여 위임하는것이 바람직하다.

9. 자격증명을 주기적으로 변경하라.

Access Key나 Secret Key와 같은 자격증명 값을 주기적으로 변경 해야한다.

10. 권한정책 수립 시 조건을 적극적으로 활용하라.

조건을 수립하여 권한 부여 시 대상의 범위를 한정할 수 있으므로 만약 제 3자에게 노출이 되어도 최대한 접근은 차단할 수 있다.

728x90
반응형

'⭐ AWS > IAM' 카테고리의 다른 글

✈ AWS IAM 정책과 역할을 정리  (0) 2023.09.26
IAM 정책 예제 사이트  (0) 2022.12.14
사용자 리전별 제한  (0) 2022.12.13
IAM MFA를 활성화 하자  (0) 2021.04.11
IAM 정책설정 및 키값 생성  (0) 2021.04.11