AWS ec2 기능 및 서비스들을 기존에는 혼자 사용했다. 신규 과제 진행하면서 외주 개발하는 일이 발생했다. 그렇다면 서버 사용 권한 등을 고려해야한다. 신규 서비스 런칭 후 업체 이관 관련해서 결제 등의 문제도 있어서 신규 계정을 새로 만들었다. AWS에 지원을 받아 서비스 아키텍쳐를 가이드 받았다. 루트 권한으로 기존 서비스들을 다 이용하는 것에는 보안상의 큰 문제가 있다는 지적을 받았다. 그래서 이번엔 IAM을 통해서 각 사용자 권한 설정을 새로 짜기 시작했다.
루트 유저 > IAM 유저 > Power User > User 순으로 그룹과 role 관련 스터디를 진행하고 있다.
이하는 PowerUser 생성 하는 과정이다.
AWS 계정에서 여러 사용자를 지원하려면 다른 사용자가 허용된 작업만 수행할 수 있도록 권한을 위임해야 합니다. 이렇게 하려면 해당 사용자에게 필요한 권한이 있는 IAM 사용자 그룹을 생성한 다음 필요에 따라 IAM 사용자를 필요한 사용자 그룹에 추가합니다. 이 프로세스를 사용하여 전체 AWS 계정에 대한 사용자 그룹, 사용자 및 권한을 설정할 수 있습니다.
이 솔루션은 AWS 관리자가 수동으로 사용자 및 사용자 그룹을 관리할 수 있는 중소 규모 조직에서 가장 적합합니다. 대규모 조직에서는 사용자 지정 IAM 역할, 페더레이션 또는 Single Sign-On을 사용할 수 있습니다.
위임 IAM 사용자 및 사용자 그룹 생성(콘솔)
AWS Management Console을 사용하여 위임된 권한이 있는 IAM 사용자 그룹을 생성할 수 있습니다. 그런 다음 다른 사용자를 위한 IAM 사용자를 만들어 사용자 그룹에 추가합니다.
다른 사용자에 대해 위임 사용자 그룹 및 사용자를 생성하려면(콘솔)
- AWS Management Console에 로그인한 다음 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.
- 왼쪽의 탐색 창에서 정책을 선택합니다.
- 정책를 처음으로 선택하는 경우 Welcome to Managed Policies 페이지가 나타납니다. [Get Started ]를 선택합니다.
- [Create policy]를 선택합니다.
- JSON 탭을 선택한 다음 창의 오른쪽에서 관리형 정책 가져오기를 선택합니다.
- 관리형 정책 가져오기 창에 power를 입력하여 정책 목록을 줄입니다. 그런 다음 [PowerUserAccess] 행을 선택합니다.
- [가져오기(Import)]를 선택하여 정책을 [JSON] 탭에 표시합니다.
- Next: Tags(다음: 태그)를 선택한 후 Next: Review(다음: 검토)를 선택합니다.
- [정책 검토(Review policy)] 페이지에서 [이름(Name)]에 PowerUserExampleCorp를 입력합니다. 설명에 Allows full access to all services except those for user management을 입력합니다. 그런 다음 [Create policy]를 선택하여 작업을 저장합니다.
- 탐색 창에서 [사용자 그룹(User groups)]을 선택한 다음, [그룹 생성(Create group)]을 선택합니다.
- [사용자 그룹 이름(User group name)] 상자에 PowerUsers를 입력합니다.
- 정책 목록에서 PowerUserExampleCorp 옆의 확인란을 선택합니다.
- 그룹 생성을 선택합니다.
만들어지는데 로딩 딜레이가 존재한다. 그래서 명의 사용자 권한 부분에 로드중으로 상당시간 표시 된다.
- 탐색 창에서 [사용자(Users)]와 [사용자 추가(Add users)]를 차례로 선택합니다.
- [User name]에 mary.major@examplecorp.com를 입력합니다.
- 다른 사용자 추가를 선택하고 두 번째 사용자에 대해 diego.ramirez@examplecorp.com을 입력합니다.
- [AWS Management Console 액세스] 옆의 확인란을 선택하고 [자동 생성된 암호(Autogenerated password)]를 선택합니다. 초기 상태는 AWS가 새로운 사용자가 로그인할 때 새 암호를 만들도록 요구합니다. [다음 로그인 시 사용자가 새 암호를 생성해야 함(Users must create a new password at next sign-in)] 옆의 확인란을 선택합니다.
사용자이름에 이메일을 등록한다. AWS 권고 사항에 PowerUser에 같은 역할을 할 사람들을 추가 한다. 그러나 나는 추가하지 않고 1개의 계정만 만들었다.
- Next: Permissions(다음: 권한)를 선택합니다.
- [권한 설정(Set permissions)] 페이지에서 사용자에게 권한을 추가하지 마십시오. 사용자가 암호를 변경하고 로그인했음을 확인한 후에 정책을 추가합니다.
- 다음: 태그를 선택합니다.
- (선택 사항) 태그를 키-값 페어로 연결하여 메타데이터를 사용자에게 추가합니다. IAM에서의 태그 사용에 대한 자세한 정보는 IAM 리소스 태깅 단원을 참조하세요.
- [다음: 검토(Next: Review)]를 선택하여 새 사용자에 추가될 사용자 그룹 멤버십의 목록을 확인합니다. 계속 진행할 준비가 되었으면 사용자 생성을 선택합니다.
- 새 사용자의 암호를 다운로드하거나 복사하여 사용자에게 안전하게 전달합니다. 별도로 사용자에게 IAM 사용자 콘솔 페이지에 대한 링크와 사용자 이름을 제공합니다.
- 사용자가 성공적으로 로그인할 수 있음을 확인한 후 필요한 경우 탐색 창에서 [사용자(Users)]를 선택합니다. 그런 다음 사용자 이름 중 하나를 선택합니다.
- [권한(Permissions)] 탭에서 [권한 추가(Add permissions)]를 선택합니다. [그룹에 사용자 추가(Add user to group)]를 선택한 다음 PowerUsers 옆의 확인란을 선택합니다.
- [다음: 검토(Next: Review)] 및 [권한 추가(Add permissions)]를 선택합니다.
새로 생성한 PowerUser IAM 계정으로 IAM 대시보드 접속시에 아래 처럼 표기 된다.
Root 사용자에서 만든 Administrator 계정으로 접속시에는 IAM 화면이 아래와 다르다.
이제 사내 프로젝트 인원과 외주 개발인원들을 개발팀으로 묶고 어벤져스 그룹을 만들고 사용자들에 대해 각각 권한 설정을 해보면 되겠다.
댓글