본문 바로가기
서버/SAA-C03

[SAA-CO3] 권한 경계(Permissions boundary) 솔루션

by jamong1014 2024. 5. 24.
반응형

사례

한 IT 기업은 팀에 합류한 신입 개발자에게 DynamoDB에 대한 모든 액세스 권한이 부여되는 사건이 보고된 이후 보안 모범 사례(Best Practice)를 검토하려고 합니다. 해당 개발자는 새로운 기능을 구현하던 중 실수로 프로덕션 환경에 있는 테이블 몇 개를 삭제했습니다.


이런 사고의 재발을 방지할 수 있는 가장 효율적인 해결 방법은 무엇입니까?

본론

권한 경계(Permissions boundary)를 사용해 직원이 IAM 주체에게 부여할 수 있는 최대 권한을 제어한다.

 

권한 경계를 사용하여 직원들이 그들이 생성하고 관리하는 IAM 주체에 부여할 수 있는 최대 권한 수(즉 사용자와 역할)을 통제할 수 있다.

IAM 관리자로서 관리된 정책을 이용하여 하나 이상의 권한 경계를 정의하고 직원들이 이 경계 안에서 주체를 생성하도록 할 수 있음.

직원들은 그러한 주체에게 권한 정책을 부착할 수 있다. 결과적으로 새로운 주체는 정의한 경계를 초과할 수 없게 된다.


조직의 모든 IAM 사용자 권한에 DB 액세스 권한을 삭제하는 지문은 틀린 지문이다.

일부 사용자의 경우 DB 관리를 위해 접근 권한이 필요하므로 조직 내 모든 IAM 사용자의 모든 접근 권하는 제거하는 것은 어려운 선택지다.

 

같은 문제가 재발하지 않도록 CTO가 모든 신입 개발자의 IAM 사용자 권한을 검토해야 한다.라는 지문도 틀린 지문이다.

마찬가지고 자동화된 절차를 통해 수행하는 것이 가장 좋기 때문에 CTO는 모든 새로운 개발자의 IAM 사용자의 권한을 검토하지는 않을 것이다.

 

조직에서 루트 사용자만 DB 전체에 대한 액세스 권한을 가져야 한다.

이 지문도 틀렸는데 모범 방식으로는 루트 사용자는 관리 절차를 수행하기 위해 AWS 계정에 접근하지 말아야 한다.

반응형