본문 바로가기

AWS

AWS SSO와 Directory Service 연동하기

기존에는 Microsoft의 AD를 이용하여 계정 관리를 했다. 그러나 AWS를 사용하게 되어 계정 관리를 분리해서 사용했고, 관리하기가 너무 어렵고 귀찮다.

 

그래서 Microsoft AD와 AWS Directory Service를 이용하여 AWS SSO 연동을 통해 계정 관리를 추천한다.

 

AWS Oraganizations을 이용하여 AWS Directory Service 계정으로 AWS Console을 로그인하는 방법을 알아보겠다. 

먼저, 아래 그림과 같이 AWS Organizations에서 아래 그림과 같이 AWS SSO와 Directory Service를 활성화 한다.

 

AWS Organizations 활성화

[AWS Web Console] -> [AWS Organizations]

AWS Organization

AWS Directory Service 생성

AWS Organizations을 조작할 수 있는 계정에 로그인 한다. 그리고 AWS SSO를 생성할 지역으로 이동한다. 

[AWS Web Console] -> [AWS Directory Service] -> [Microsoft AD 생성]

 

Microsoft AD 생성

Microsoft AD 생성 시 두 개 이상의 Subnet을 선택해야 한다. 도메인 이름과 비밀번호를 선택한 후 Directory Service를 생성한다. 시간은 약 30~40분정도 소요된다.

 

AWS SSO(Single Sign-On) 활성화

[AWS Web Console] -> [AWS SSO] -> [Enable AWS SSO]

AWS SSO

AWS SSO는 한 리전에서만 활성화가 가능하다. 활성화 하는데 약 30초의 시간이 소요된다.

 

AWS SSO에 Directory Service 연결

AWS SSO가 활성화 된 후 아래와 같은 화면에서 Managed your directory를 선택한다.

AWS Directory Serivce 연결

 

현재 설정된 Directory를 AWS Directory Service로 바꾸기 위해 Change directory를 선택한다.

SSO Directory

Change directory 화면이 나오면 Microsoft AD directory를 선택한 후 앞서 생성한 Managed Microsoft AD를 선택한다. 

Next: Review 버튼을 클릭하면 기존 AWS SSO 설정이 전부 삭제된다는 안내 문구가 뜨며, TEXT 창에 Confirm 이라고 기입하고 Finish 버튼을 클릭한다.

 

옆 그림과 같이 기존 AWS SSO directory가 삭제되고, AWS Directory Service가 연결됐는지 확인한다.

 

 

 

AWS SSO와 AWS Directory Service가 정상적으로 연결되면 아래와 같이 설정된다. Attribute mappings는 언제든 원하는대로 수정이 가능하다.

AWS Directory Service

 

AD에 User 및 Group 생성

Directory Service의 ADDS에 연결하여 User와 Group을 생성한다. 이 때 AD에 Join 된 Windows EC2가 필요하다.

또한 E-mail Address를 입력을 권장한다.

AD에 User 및 Group 생성

 

Permission 설정

[AWS Web Console] -> [AWS SSO] -> [AWS Accounts]

AWS Accounts에서 Permission sets 탭으로 이동하고, Create permission set 버튼을 눌러 정책을 생성한다.

AWS Accounts

User an existing job function policy, AdministratorAccess를 선택하고 Create 버튼을 클릭한다. 이 옵션은 AWS SSO에서 제공하는 정책을 이용할 때 사용된다.

Permission 설정

Create a custom permission set을 선택한다. 

Name을 입력한다. 이 이름으로 각 AWS Account에 Role이 생성되며, 사용자가 보는 정책 이름이다. 한번 설정하면 수정할 수 없다. 

Session duration은 로그인한 계정의 세션 지속시간을 나타낸다. 이 값은 Idle time이 아닌 로그인 후 강제 로그아웃시 까지의 시간을 나타낸다. 

What policies do you want to include in 

your permission set? 메뉴에서 Create a custom permissions policy를 선택한다. 

Create a custom permissions policy 메뉴에서 IAM Policy를 JSON 형식으로 입력한 후 Create 버튼을 클릭 한다.

 

AWS Account에 Permission 연결

AWS Account Console에서 AWS organization 탭으로 이동한다. 그럼 아래와 같은 화면에서 AWS account를 선택하고 Assign users 버튼을 클릭한다.

AWS Account Permission

Assign Users 창에서 Groups을 선택하면 AD의 Group을, users를 선택하면 AD의 User를 검색할 수 있다. Users를 선택한 후 생성한 계정을 검색한다.

Assign Users

검색된 계정을 선택하고, Next: Permission sets 버튼을 클릭한다. Select permission sets에서 어떤 Permission을 연결할 지 선택한 후 Finish 버튼을 클릭하여 연결한다.

 

AWS SSO 동작 확인

AWS SSO Console에서 Directory로 이동한다. Details 섹션에서 User portal URL에 있는 주소를 복사해서 새로운 브라우저에 연결한다. 그리고 AD에서 생성한 계정으로 로그인 한다.

SSO 동작 확인

로그인이 완료되면 AWS Account에 연결된 두 개의 계정을 확인하고 로그인 하려는 계정을 선택해서 Management console을 클릭한다.

SSO 동작 확인

선택한 계정에서 SSO로 로그인이 됐는지 확인한다.

SSO 동작 확인

 

AWS Account에 연결된 성정 관리

[AWS Web Console] -> [AWS SSO] -> [AWS Accounts] 

 

AWS Account 연결 관리

관리할 AWS Account를 선택한다. 위와 같은 화면이 나오면 사용자 또는 그룹을 추가/제거 하거나 연결된 Permission set을 관리할 수 있다.

 

AWS SSO의 제약상항은 아래와 같다.

- AWS SSO는 하나의 지역에서만 활성화할 수 있다.

- AWS SSO는 현재 2019-10-30 기준, N.Virginia, Ohio, Oregon, Singapore, Sydney, Frankfurt, Ireland, London Region만 가능하다.

- AWS SSO와 Directory Service는 동일한 지역에 존재해야 한다.

 

참고 자료

AWS Blog

 

What Is AWS Single Sign-On? - AWS Single Sign-On

The AWS Documentation website is getting a new look! Try it now and let us know what you think. Switch to the new look >> You can return to the original look by selecting English in the language selector above. What Is AWS Single Sign-On? AWS Single Sign-O

docs.aws.amazon.com

AWS Document

 

AWS Organizations란 무엇입니까? - AWS Organizations

AWS Organizations란 무엇입니까? AWS Organizations는 사용자가 생성해 중앙에서 관리하는 조직으로 여러 AWS 계정을 통합할 수 있는 계정 관리 서비스입니다. AWS Organizations는 비즈니스의 예산, 보안과 규정 준수 요건을 충족할 수 있는 계정 관리 및 통합 결제 기능을 포함합니다. 조직의 관리자로서 조직에서 계정을 생성하고 기존 계정을 조직에 초대할 수 있습니다. 이 사용 설명서는 AWS Organizations의

docs.aws.amazon.com

 

 

What Is AWS Single Sign-On? - AWS Single Sign-On

The AWS Documentation website is getting a new look! Try it now and let us know what you think. Switch to the new look >> You can return to the original look by selecting English in the language selector above. What Is AWS Single Sign-On? AWS Single Sign-O

docs.aws.amazon.com