구성원 계정의 루트 접근 중앙화하기
구성원 계정의 루트 접근 중앙화하기
루트 사용자 자격 증명은 각 AWS 계정에 할당된 초기 자격 증명으로, 계정의 모든 AWS 서비스와 리소스에 대한 완전한 접근 권한을 가져요. AWS Organizations를 활성화하면 모든 AWS 계정을 중앙 관리용 조직으로 결합할 수 있어요. 각 구성원 계정은 루트 사용자에서 기본적으로 어떤 액션이든 수행할 수 있는 자체 루트 사용자를 가져요. 대규모 루트 사용자 자격 증명 복구와 접근을 방지하려면 AWS Organizations로 관리되는 AWS 계정의 루트 사용자 자격 증명을 중앙에서 안전하게 관리하는 걸 권장해요. 이번 글에서는 구성원 계정의 루트 접근을 중앙화하는 방법을 살펴볼게요.
출처: 문서
본문
루트 접근을 중앙화하면 조직의 구성원 계정에서 루트 사용자 자격 증명을 삭제할 수 있어요. 루트 사용자 비밀번호, 액세스 키, 서명 인증서를 제거하고 다중 인증(MFA)을 비활성화할 수 있어요. AWS Organizations에서 새로 만드는 계정은 기본적으로 루트 사용자 자격 증명이 없어요. 구성원 계정은 루트 사용자로 로그인하거나 루트 사용자의 비밀번호 복구를 수행할 수 없어요.
참고 – 루트 사용자 자격 증명이 필요한 작업 중 일부는 IAM의 관리 계정이나 위임 관리자가 수행할 수 있지만, 일부 작업은 계정의 루트 사용자로 로그인해야만 수행할 수 있어요. 이러한 작업 중 하나를 수행하기 위해 구성원 계정의 루트 사용자 자격 증명을 복구해야 한다면 권한 있는 작업 수행의 단계를 따르고 Allow password recovery를 선택하세요. 구성원 계정의 루트 사용자 이메일 받은 편지함에 접근할 수 있는 사람이 단계를 따라 루트 사용자 비밀번호를 재설정하고 구성원 계정 루트 사용자로 로그인할 수 있어요. 루트 사용자 접근이 필요한 작업을 완료하면 루트 사용자 자격 증명을 삭제하는 걸 권장해요.
사전 요구 사항 (Prerequisites)
루트 접근을 중앙화하기 전에 다음 설정으로 계정이 구성되어 있어야 해요.
- 다음 IAM 권한이 있어야 해요.
iam:GetAccessKeyLastUsed
iam:GetAccountSummary
iam:GetLoginProfile
iam:GetUser
iam:ListAccessKeys
iam:ListMFADevices
iam:ListSigningCertificates
sts:AssumeRoot
참고 – 구성원 계정의 루트 사용자 자격 증명 상태를 감사하려면, AWS Organizations 구성원 계정에서 권한 있는 작업을 수행할 때 IAMAuditRootUserCredentials AWS 관리형 정책으로 권한을 축소하거나
iam:GetAccountSummary에 대한 접근이 있는 정책을 사용할 수 있어요. 루트 사용자 자격 증명 정보 보고서를 생성하려면 다른 정책은 동일한 출력을 만들려면iam:GetAccountSummary액션만 있으면 돼요. 또한 다음을 포함한 개별 루트 사용자 자격 증명 정보를 나열하거나 가져올 수 있어요: 루트 사용자 비밀번호 존재 여부, 루트 사용자 액세스 키 존재 여부와 마지막 사용 시기, 루트 사용자 연결 서명 인증서 존재 여부, 루트 사용자 연결 MFA 디바이스, 통합된 루트 사용자 자격 증명 상태 목록.
- AWS Organizations에서 AWS 계정을 관리해야 해요.
- 조직에서 이 기능을 활성화하려면 다음 권한이 있어야 해요.
iam:EnableOrganizationsRootCredentialsManagement
iam:EnableOrganizationsRootSessions
iam:ListOrganizationsFeatures
organizations:EnableAwsServiceAccess
organizations:ListAccountsForParent
organizations:RegisterDelegatedAdministrator
- 최적의 콘솔 기능을 위해 다음 추가 권한을 활성화하는 걸 권장해요.
organizations:DescribeAccount
organizations:DescribeOrganization
organizations:ListAWSServiceAccessForOrganization
organizations:ListDelegatedAdministrators
organizations:ListOrganizationalUnitsForParent
organizations:ListParents
organizations:ListTagsForResource
중앙 집중식 루트 접근 활성화 (콘솔)
AWS Management Console에서 구성원 계정용 이 기능 활성화
- AWS Management Console에 로그인하고 https://console.aws.amazon.com/iam/ 에서 IAM 콘솔을 열어요.
- 콘솔 탐색 창에서 Root access management를 선택한 뒤 Enable을 선택해요.
참고 – Root access management is disabled가 보이면 AWS Organizations에서 AWS Identity and Access Management에 대한 신뢰할 수 있는 접근(trusted access)을 활성화하세요. 자세한 내용은 _AWS Organizations 사용자 가이드_의 AWS IAM과 AWS Organizations를 참고하세요.
- Capabilities to enable 섹션에서 활성화할 기능을 선택해요.
- Root credentials management를 선택하면 관리 계정과 IAM 위임 관리자가 구성원 계정의 루트 사용자 자격 증명을 삭제할 수 있어요. 구성원 계정이 삭제된 루트 사용자 자격 증명을 복구할 수 있게 하려면 Privileged root actions in member accounts를 활성화해야 해요.
- Privileged root actions in member accounts를 선택하면 관리 계정과 IAM 위임 관리자가 루트 사용자 자격 증명이 필요한 특정 작업을 수행할 수 있어요.
- (선택) 구성원 계정에서 루트 사용자 접근을 관리하고 권한 있는 액션을 취할 권한이 있는 Delegated administrator의 계정 ID를 입력해요. 보안 또는 관리 목적의 계정을 권장해요.
- Enable을 선택해요.
중앙 집중식 루트 접근 활성화 (AWS CLI)
AWS Command Line Interface(AWS CLI)에서 중앙 집중식 루트 접근 활성화
- AWS Organizations에서 AWS Identity and Access Management에 대한 신뢰할 수 있는 접근을 아직 활성화하지 않았다면
aws organizations enable-aws-service-access명령을 사용해요. - 관리 계정과 위임 관리자가 구성원 계정의 루트 사용자 자격 증명을 삭제할 수 있게 하려면
aws iam enable-organizations-root-credentials-management명령을 사용해요. - 관리 계정과 위임 관리자가 루트 사용자 자격 증명이 필요한 특정 작업을 수행할 수 있게 하려면
aws iam enable-organizations-root-sessions명령을 사용해요. - (선택) 위임 관리자를 등록하려면
aws organizations register-delegated-administrator명령을 사용해요. 다음 예시는 계정 111111111111을 IAM 서비스의 위임 관리자로 할당해요.
aws organizations register-delegated-administrator
--service-principal iam.amazonaws.com
--account-id 111111111111
중앙 집중식 루트 접근 활성화 (AWS API)
AWS API에서 중앙 집중식 루트 접근 활성화
- AWS Organizations에서 AWS Identity and Access Management에 대한 신뢰할 수 있는 접근을 아직 활성화하지 않았다면
EnableAWSServiceAccess명령을 사용해요. - 관리 계정과 위임 관리자가 구성원 계정의 루트 사용자 자격 증명을 삭제할 수 있게 하려면
EnableOrganizationsRootCredentialsManagement명령을 사용해요. - 관리 계정과 위임 관리자가 루트 사용자 자격 증명이 필요한 특정 작업을 수행할 수 있게 하려면
EnableOrganizationsRootSessions명령을 사용해요. - (선택) 위임 관리자를 등록하려면
RegisterDelegatedAdministrator명령을 사용해요.
다음 단계 (Next steps)
조직의 구성원 계정에 대한 권한 있는 자격 증명을 중앙에서 안전하게 관리했다면, 구성원 계정에서 권한 있는 액션을 취하려면 권한 있는 작업 수행을 참고하세요.