회사에 Amazon EC2 인스턴스에서 실행되고 Amazon Aurora 데이터베이스를 사용하는 애플리케이션이 있습니다. EC2 인스턴스는 파일에 로컬로 저장된 사용자 이름과 암호를 사용하여 데이터베이스에 연결합니다. 이 회사는 자격 증명 관리의 운영 오버헤드를 최소화하려고 합니다.
솔루션 아키텍트는 이 목표를 달성하기 위해 무엇을 해야 할까요?
A. AWS Secrets Manager를 사용합니다. 자동 회전을 켭니다.
B. AWS Systems Manager 파라미터 스토어를 사용합니다. 자동 회전을 켭니다.
C. Amazon S3 버킷을 생성하여 AWS Key Management Service(AWS KMS) 암호화 키로 암호화된 객체를 저장합니다. 자격 증명 파일을 S3 버킷으로 마이그레이션합니다. 애플리케이션이 S3 버킷을 가리키도록 합니다.
D. 각 EC2 인스턴스에 대해 암호화된 Amazon Elastic Block Store(Amazon EBS) 볼륨을 생성합니다. 새 EBS 볼륨을 각 EC2 인스턴스에 연결합니다. 자격 증명 파일을 새 EBS 볼륨으로 마이그레이션합니다. 애플리케이션이 새 EBS 볼륨을 가리키도록 합니다.
오버헤드(overhead)는 어떤 처리를 하기 위해 들어가는 간접적인 처리 시간 · 메모리 등을 말한다.
예를 들어 A라는 처리를 단순하게 실행한다면 10초 걸리는데, 안전성을 고려하고 부가적인 B라는 처리를 추가한 결과 처리시간이 15초 걸렸다면, 오버헤드는 5초가 된다. 또한 이 처리 B를 개선해 B'라는 처리를 한 결과, 처리시간이 12초가 되었다면, 이 경우 오버헤드가 3초 단축되었다고 말한다
Secrets Manager는 AWS에서 제공하는 비밀 값 관리 서비스이다. 비밀 값들을 저장해두고 어플리케이션에서 AWS의 API를 호출해서 받아가 사용하는 방식이다.
1) 관리자가 Secrets Manger에 비밀을 만들고 그 비밀 안에 여러 Key, value 비밀 값들을 등록한다.
2) 비밀 값들은 AWS KMS(Key Management Service)라는 키 관리 서비스를 통해 암호화된다.
3) 비밀 값들을 사용하는 서버에서 AWS CLI나 SDK를 이용해 특정 IAM 사용자로 Secrets Manger에 비밀 값을 요청한다.
4) IAM에서 요청한 사용자에게 해당 비밀을 조회할 수 있는 권한이 있다고 판단하면 5) Secrets Manager가 비밀의 값을 복호화해서 응답으로 준다.
어플리케이션에서는 받은 비밀 값을 사용한다.
특정 시간 간격이나 조건에 따라 자동으로 자격 증명(예: 비밀번호, 액세스 키 등)을 변경하는 프로세스
수동 작업 감소: 자격 증명을 수동으로 변경하려면 시간과 노력이 필요합니다. 관리자는 새 자격 증명을 생성하고, 해당 자격 증명을 애플리케이션 또는 서비스에 적용하고, 이전 자격 증명을 안전하게 폐기해야 합니다. 이 모든 과정이 자동화되면 수동 작업의 필요성이 크게 줄어듭니다.
일관된 프로세스: 자동 회전 기능을 사용하면 자격 증명의 변경이 일관된 방식으로 이루어집니다. 이는 실수를 줄이고, 프로세스의 표준화를 통해 효율성을 높일 수 있습니다.
보안 강화: 자격 증명을 정기적으로 변경하는 것은 보안 모범 사례 중 하나입니다. 자동 회전을 사용하면 조직은 보안 리스크를 감소시키면서 동시에 자격 증명 관리의 복잡성을 줄일 수 있습니다.
알림 및 모니터링 오버헤드 감소: 자동 회전이 설정되면, 수동으로 자격 증명을 변경할 때마다 설정해야 할 알림이나 모니터링 요구 사항이 줄어듭니다. 자동화된 프로세스는 정상적으로 작동하면 추가적인 감독이나 확인이 적게 필요합니다.