위임 사용자 생성
AWS 계정에서 여러 사용자를 지원하려면 다른 사용자가 허용된 작업만 수행할 수 있도록 권한을 위임해야 한다. 이렇게 하려면 해당 사용자에게 필요한 권한이 있는 IAM 사용자 그룹을 생성한 다음 필요에 따라 IAM 사용자를 필요한 사용자 그룹에 추가할 수 있다.
1. 위임 IAM 사용자 및 사용자 그룹 생성(콘솔)
AWS Management Console을 사용해 위임된 권한이 있는 IAM 사용자 그룹을 생성한다. 그런 다음 다른 사람에 대해 IAM 사용자를 생성하여 사용자 그룹에 추가한다.
다른 사용자에 대해 위임 사용자 그룹 및 사용자를 생성하려면
-
AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 연다.
-
왼쪽의 탐색 창에서 정책(Policies)을 선택한다.
만약 정책(Policies)을 처음으로 선택하는 경우 관리형 정책 소개 페이지가 나타난다. 그럴 경우 시작하기(Get Started)를 선택한다.
-
정책 생성을 선택한다.
-
JSON 탭을 선택한 다음 창의 오른쪽에서 관리형 정책 가져오기(Import managed policy)를 선택한다.
-
관리형 정책 가져오기 창에
power
를 입력하여 정책 목록을 줄인다. 그런 다음 PowerUserAccess 행을 선택한 후 가져오기(Import)를 선택한다. -
JSON 탭에 정책이 표시된 것을 확인한 후 다음: 태그(Next: Tags)를 선택한다.
-
다음: 검토(Next: Review)를 선택한다.
-
정책 검토 페이지에서 이름(Name)에
PowerUserExampleCorp
를 입력한다. 설명(Description)에Allows full access to all services except those for user management
를 입력한다. 그런 다음 정책 생성(Create policy)을 선택하여 작업을 저장한다. -
탐색 창에서 사용자 그룹(User groups)을 선택한 다음, 그룹 생성(Create group)을 선택한다.
-
사용자 그룹 이름(Ueser group name) 상자에
PowerUsers
를 입력하고 정책 목록에서 PowerUserExampleCorp 옆의 확인란을 선택한 다음 그룹 생성을 선택한다. -
탐색 창에서 사용자(Users)와 사용자 추가(Add users)를 차례로 선택한다.
-
사용자 이름(User name)에
mary.major@examplecorp.com
을 입력하고 AWS Management Console 액세스 옆의 확인란을 선택하고 자동 생성된 암호(Autogenerated password)를 선택한다. 초기 상태는 AWS가 새로운 사용자가 로그인할 때 새 암호를 만들도록 요구한다. 다음 로그인 시 사용자가 새 암호를 생성해야 함(Users must create a new password at next sign-in) 옆의 확인란을 선택한다. 마지막으로 다음: 권한(Next: Permissions)을 선택한다. -
권한 설정 페이지에서 사용자에게 권한을 추가하지 않는다. 사용자가 암호를 변경하고 로그인했음을 확인한 후에 정책을 추가할 것이다. 다음: 검토(Next: Review)를 선택한다.
-
(선택 사항) 태그를 키 값 페어로 연결하여 메타데이터를 사용자에게 추가한다.
-
사용자 생성(Create users)을 선택한다.
-
두 번째 사용자인
diego.ramirez@examplecorp.com
도 위의 과정과 같이 생성한다. -
새 사용자에 추가될 사용자 그룹 멤버십의 목록을 확인한다. 계속 진행할 준비가 되었으면 사용자 추가(Add users)를 선택한다.
-
새 사용자의 암호를 다운로드하거나 복사하여 사용자에게 안전하게 전달한다. 별도로 사용자에게 IAM 사용자 콘솔 페이지에 대한 링크와 사용자 이름을 제공한다.
-
사용자가 잘 로그인할 수 있음을 확인하고, 필요한 경우 탐색 창에서 사용자(Users)를 선택한 후 사용자 추가(Add users)를 선택한다.
-
해당 그룹에 추가된 사용자를 확인할 수 있다.
2. 사용자 그룹 권한 줄이기
PowerUser
사용자 그룹의 멤버는 사용자 관리 작업(예: IAM 및 Organizations)을 제공하는 일부 서비스를 제외한 모든 서비스에 대해 전체 권한을 가진다. 사전 정의된 비활성 기간(예: 90일)이 지난 후에는 사용자 그룹 멤버가 액세스한 서비스를 검토할 수 있다. 그런 다음 팀에 필요한 서비스만 포함하도록 PowerUserExampleCorp
정책의 권한을 줄일 수 있다.
1) 마지막으로 액세스한 정보 검토
사전 정의된 비활성 기간(예: 90일)이 끝날 때까지 기다린다. 그런 다음 사용자 또는 사용자 그룹에 대해 마지막으로 액세스한 정보를 검토하여 사용자가 PowerUserExampleCorp
정책에서 허용하는 서비스에 마지막으로 액세스를 시도한 시기를 확인할 수 있다.
-
AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 연다.
-
탐색 창에서 사용자 그룹(User groups)을 선택한 다음 PowerUser 그룹 이름을 선택한다.
-
사용자 그룹 요약 페이지에서 액세스 관리자(Access Advisor) 탭을 선택한다.
마지막으로 액세스한 정보 테이블에는 사용자 그룹 멤버가 마지막으로 각 서비스에 액세스하려고 시도한 시간이 시간순으로 표시된다. 이 테이블에는 정책에서 허용하는 서비스만 포함된다. 이 경우
PowerUserExampleCorp
정책은 모든 AWS 서비스에 대한 액세스를 허용한다. -
테이블을 검토하고 사용자 그룹 멤버가 최근에 액세스한 서비스에 대한 목록을 만든다.
예를 들어, 지난 달 내에 팀이 Amazon EC2 및 Amazon S3 서비스에만 액세스했다고 가정한다. 그러나 6개월 전에는 Amazon EC2 Auto Scaling 및 IAM에 액세스했다. EC2 Auto Scaling을 조사했지만 필요하지 않다고 결정했다. 또한 IAM을 사용하여 Amazon EC2가 S3 버킷의 데이터에 액세스할 수 있는 역할을 생성했다. 따라서 Amazon EC2 및 Amazon S3 서비스만 액세스할 수 있도록 사용자의 권한을 다시 축소하기로 결정했다.
2) 정책을 편집하여 권한 줄이기
마지막으로 액세스한 정보를 검토한 후 사용자가 필요로 하는 서비스에만 액세스할 수 있도록 정책을 편집할 수 있다.
필요한 서비스에만 액세스할 수 있도록 데이터를 사용하려면
-
탐색 창에서 정책(Policies)을 선택한 후 PowerUserExampleCorp 정책 이름을 선택한다.
-
정책 편집(Edit policy)을 선택한 후 JSON 탭을 선택한다.
-
원하는 서비스만 허용하도록 JSON 정책 문서를 편집한다.
예를 들어,
Allow
효과와NotAction
요소를 포함하는 첫 번째 명령문을 편집하여 Amazon EC2 및 Amazon S3 작업만 허용하도록 한다. 이 작업을 수행하려면FullAccessToSomeServices
ID가 있는 명령문으로 바꾼다. 새 정책은 다음 예제 정책과 같다.{ "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccessToSomeServices", "Effect": "Allow", "Action": [ "ec2:*", "s3:*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "iam:DeleteServiceLinkedRole", "iam:ListRoles", "organizations:DescribeOrganization" ], "Resource": "*" } ] }
-
최소 권한 부여의 모범 사례를 지원하기 위해 정책 검증에서 반환된 오류, 경고 또는 제안을 검토하고 수정한다.
-
특정 작업 및 리소스에 대한 정책 권한을 추가로 줄이려면 CloudTrail 이벤트 기록(Event history)에서 이벤트를 확인한다. 여기에서 사용자가 액세스한 특정 작업 및 리소스에 대한 자세한 정보를 볼 수 있다.