AWS 보안 인증 정보
AWS와(과) 상호 작용할 경우 AWS 보안 인증 정보를 지정하여 사용자가 누구인지, 요청 중인 리소스에 액세스할 수 있는 권한이 있는지를 확인합니다. AWS에서는 보안 인증 정보를 사용하여 요청을 인증하고 권한을 부여합니다.
예를 들어 Amazon Simple Storage Service(S3) 버킷에서 보호된 파일을 다운로드하려면 보안 인증에서 해당 액세스를 허용해야 합니다. 보안 인증에서 파일 다운로드 권한이 없는 것으로 표시되는 경우 AWS는 요청을 거부합니다. 하지만 공개적으로 공유되는 Amazon S3 버킷에서 파일을 다운로드하는 데에는 AWS 보안 인증이 요구되지 않습니다.
AWS에는 각각 고유한 보안 자격 증명을 가진 다양한 유형의 사용자가 있습니다.
-
계정 소유자(루트 사용자) - AWS 계정을 생성하고 전체 액세스 권한을 갖는 사용자입니다.
-
AWS IAM Identity Center 사용자 - AWS IAM Identity Center에서 관리되는 사용자입니다.
-
페더레이션 사용자 - 페더레이션을 통해 AWS에 대한 임시 액세스 권한이 부여된 외부 ID 제공업체의 사용자입니다. 페더레이션 자격 증명에 대한 자세한 내용은 자격 증명 공급자 및 페더레이션 섹션을 참조하세요.
-
IAM 사용자 - AWS Identity and Access Management(IAM) 서비스 내에서 생성된 개별 사용자입니다.
사용자는 장기 또는 임시 보안 인증 정보를 가지고 있습니다. 루트 사용자 및 IAM 사용자에게는 만료되지 않는 장기 보안 인증 정보가 있습니다. 액세스 키는 만료되지 않는 장기 보안 인증 정보입니다. 장기 보안 인증 정보를 보호하기 위해 액세스 키를 관리하고, 암호를 변경하며, MFA를 활성화하는 프로세스를 마련합니다. 자세한 내용은 AWS Identity and Access Management의 보안 모범 사례 및 사용 사례 단원을 참조하십시오.
IAM 역할, AWS IAM Identity Center의 사용자 또는 페더레이션 사용자에게는 임시 보안 인증 정보가 있습니다. 임시 보안 인증 정보는 지정된 기간이 지난 후 또는 사용자가 세션을 종료할 때 만료됩니다. 임시 보안 인증은 다음과 같은 차이점을 제외하고는 장기 보안 인증과 거의 동일한 효력을 지닙니다.
-
임시 보안 자격 증명은 그 이름이 암시하듯 단기적입니다. 이 자격 증명은 몇 분에서 몇 시간까지 지속되도록 구성할 수 있습니다. 자격 증명이 만료된 후 AWS는 더는 그 자격 증명을 인식하지 못하거나 그 자격 증명을 사용한 API 요청으로부터 이루어지는 어떤 종류의 액세스도 허용하지 않습니다.
-
임시 보안 자격 증명은 사용자와 함께 저장되지 않지만 동적으로 생성되어 요청시 사용자에게 제공됩니다. 임시 보안 자격 증명이 만료되었을 때(심지어는 만료 전이라도) 사용자는 새 자격 증명을 요청할 수 있습니다. 단, 자격 증명을 요청하는 해당 사용자에게 그렇게 할 수 있는 권한이 있어야 합니다.
따라서 임시 보안 인증은 장기 보안 인증보다 다음과 같은 이점이 있습니다.
-
애플리케이션으로 장기 AWS 보안 자격 증명을 배포 또는 포함할 필요가 없습니다.
-
사용자에 대한 AWS 자격 증명을 정의하지 않고도 AWS 리소스에 대한 액세스 권한을 사용자에게 제공할 수 있습니다. 임시 자격 증명은 역할 및 아이덴티티 페더레이션을 위한 기초입니다.
-
임시 보안 인증은 수명이 제한되어 있어서, 더 이상 필요하지 않을 때 업데이트하거나 명시적으로 취소할 필요가 없습니다. 임시 보안 자격 증명이 만료된 후에는 다시 사용할 수 없습니다. 그 자격 증명에 대해 유효 기간을 최대 한계까지 지정할 수 있습니다.
보안 고려 사항
AWS 계정의 보안 조건을 결정할 때 다음 정보를 고려하는 것이 좋습니다.
-
AWS 계정을 만들면 계정 루트 사용자가 생성됩니다. 루트 사용자(계정 소유자)의 보안 인증 정보는 계정 내 모든 리소스에 대한 모든 액세스 권한을 허용합니다. 루트 사용자를 사용하여 수행할 첫 번째 작업은 다른 사용자에게 AWS 계정 관리 권한을 부여하여 루트 사용자의 사용을 최소화하는 것입니다.
-
다중 인증(MFA)은 AWS 계정에 액세스할 수 있는 사용자의 보안 수준을 강화합니다. 보안 강화를 위해 AWS 계정 루트 사용자 보안 인증 및 모든 IAM 사용자에 대해 MFA를 요구하는 것이 좋습니다. 자세한 내용은 IAM의 AWS 다중 인증 단원을 참조하십시오.
-
AWS에 액세스하는 방식과 AWS 사용자 유형에 따라, AWS는 다양한 유형의 보안 인증을 요구합니다. 예를 들어 AWS Management Console에는 로그인 보안 인증 정보를 사용하는 반면, AWS를 프로그래밍 방식으로 호출하는 데에는 액세스 키를 사용합니다. 사용자 유형 및 로그인 페이지를 결정하는 데 도움이 필요하면 AWS 로그인 사용 설명서의 AWS 로그인이란 무엇입니까?를 참조하세요.
-
IAM 정책을 사용하여 리소스에 대한 루트 사용자 액세스를 명시적으로 거부할 수는 없습니다. 루트 사용자의 권한을 제한하려면 AWS Organizations 서비스 제어 정책(SCP)을 사용해야 합니다.
-
루트 사용자 암호를 잊어버렸거나 분실한 경우 계정에 연결된 이메일 주소에 액세스할 수 있어야 암호를 재설정할 수 있습니다.
-
루트 사용자 액세스 키를 분실한 경우 루트 사용자로 계정에 로그인하여 새 액세스 키를 생성할 수 있어야 합니다.
-
일상적인 작업에 루트 사용자를 사용하지 마세요. 루트 사용자는 루트 사용자만 수행할 수 있는 작업을 수행하는 데 사용하세요. 루트 사용자로 로그인해야 하는 전체 작업 목록을 보려면 루트 사용자 보안 인증이 필요한 작업 섹션을 참조하세요.
-
보안 자격 증명은 계정에 특정합니다. 여러 AWS 계정에 액세스할 수 있는 경우, 각 계정마다 별도의 보안 인증 정보가 있습니다.
-
정책은 사용자, 역할 또는 사용자 그룹 멤버가 수행할 수 있는 작업, 작업의 대상 AWS 리소스 및 작업 수행 조건을 결정합니다. 정책을 사용하면 AWS 계정에서 AWS 서비스와 리소스에 대한 액세스 권한을 안전하게 제어할 수 있습니다. 보안 이벤트에 대응하여 권한을 수정하거나 취소해야 하는 경우, 자격 증명 직접 변경하는 것이 아니라 정책을 삭제하거나 수정합니다.
-
긴급 액세스 IAM 사용자의 로그인 보안 인증 정보와 프로그래밍 방식으로 액세스하기 위해 생성한 액세스 키는 안전한 위치에 저장해야 합니다. 액세스 키를 분실한 경우 계정에 로그인하여 새 액세스 키를 생성해야 합니다.
-
IAM 사용자 및 액세스 키가 제공하는 장기 보안 인증 대신 IAM 역할 및 페더레이션 사용자가 제공하는 임시 보안 인증을 사용하는 것이 좋습니다.