Amazon Web Services 한국 블로그
AWS Single Sign-On, Azure AD 지원 시작
대규모 환경에서 사용자 ID를 효율적으로 관리하려면 오늘날 많은 조직에서 사용하는 여러 ID 소스를 연결할 새로운 솔루션이 필요합니다. 고객은 자체 앱, 타사 앱(SaaS) 및 AWS 클라우드 환경에서 단일 자격 증명 및 액세스 전략을 수립하려고 합니다.
AWS Single Sign-On의 차세대 기능을 발표하여 Azure AD를 사용하는 기업이 AWS Single Sign-On으로 기존 자격 증명 스토어를 활용할 수 있게 했습니다. 또한 Azure AD에서 사용자 ID 및 그룹의 자동 동기화도 지원됩니다. 이제 사용자는 사용자 이름과 암호를 추가로 기억하지 않아도 기존 Azure AD 자격 증명을 사용하여 AWS 환경을 구성하는 여러 계정과 애플리케이션에 로그인할 수 있으며 로그인 시 익숙한 로그인 환경을 사용할 수 있습니다. 또한 관리자는 모든 AWS 계정과 앱 액세스를 편리하게 중앙에서 구성하면서 Azure AD의 사용자 ID에 대한 신뢰 가능한 단일 소스를 관리하는 데 집중할 수 있습니다.
자신이 사용자 자격 증명에 Azure AD를 이미 사용하고 있으며 이제 기존 자격 증명으로 사용자가 AWS 환경을 간단하고 쉽게 사용할 수 있게 하려는 기업 관리자라고 가정해 봅시다. AWS Single Sign-On에서 직접 Azure AD 그룹 및 사용자 멤버십 설정을 복제해 두 개의 자격 증명 시스템을 유지하고 싶지 않으므로 자동 동기화를 활성화합니다. 사용자는 이미 Azure AD에 익숙한 경험을 통해 AWS 환경에 로그인합니다. Azure AD의 애플리케이션에 Single Sign-On을 활성화하는 방법에 대한 자세한 내용은 여기를 참조하십시오. AWS 계정 및 애플리케이션의 권한을 관리하는 방법에 대한 자세한 내용은 AWS Single Sign-On 사용 설명서를 참조하십시오.
AWS Single Sign-On에 대한 자격 증명 원본으로 Azure AD 연결
첫 번째 단계는 AWS Single Sign-On으로 Azure AD를 연결하는 것입니다. 먼저 계정의 Azure Portal에 로그인한 후 Azure Active Directory 대시보드로 이동합니다. 왼쪽 탐색 패널에서 [Enterprise Applications]를 선택합니다.
다음으로 [+ New application]을 클릭하고 [Non-gallery application]을 선택합니다. 열리는 [Add your own application] 페이지에서 [Name] 필드에 AWS SSO를 입력합니다. 원하는 이름을 입력할 수 있으며 입력 후 [Add]를 클릭합니다. 몇 초 후 새 애플리케이션이 생성되며 애플리케이션의 설정 개요로 리디렉션됩니다.
여기에서 Single Sign-On을 활성화하고 Azure AD 및 AWS Single Sign-On 간 연동 메타데이터를 교환하는 설정을 구성합니다. 탐색 패널에서 [Single sign-on]을 선택하고 [SAML] 옵션을 클릭합니다. 열리는 설정 페이지에서 [SAML Signing Certificate] 패널에 표시된 Federation Metadata XML 파일을 다운로드해야 합니다. 기본적으로 AWS SSO.xml이라는 이름이 지정된 이 파일은 다음 단계에서 AWS Single Sign-On을 구성하는 데 사용됩니다.
파일을 다운로드한 후 다른 브라우저 탭에서 열고(나중에 다시 돌아와야 하므로 Azure AD 탭은 그대로 열어둠) AWS Single Sign-On Console에 로그인합니다. 대시보드 홈에서 [Enable AWS SSO] 버튼을 클릭합니다. 몇 초가 지나면 Single Sign-On용으로 계정이 활성화되어 Azure AD와의 연결을 구성할 수 있습니다.
탐색 패널에서 [Settings]를 클릭하고 먼저 [Change] 링크를 클릭해 [Identity source]를 설정한 후 옵션 목록에서 [External identity provider]를 선택합니다. 두 가지 작업을 해야 합니다. 먼저 페이지의 링크를 사용하여 AWS SSO SAML 메타데이터 파일을 다운로드합니다. 이 파일은 Azure AD 포털에서 다시 필요합니다. 다음으로 [Identity provider metadata] 섹션의 Azure AD에서 다운로드한 XML 파일을 찾아 선택합니다.
[Next: Review]를 클릭하고 제공된 필드에 CONFIRM을 입력한 다음 마지막으로 [Change identity source]를 클릭하여 프로세스의 AWS Single Sign-On 측을 완료합니다.
Azure AD [Set up Single Sign-On with SAML] 설정 페이지에 열려 있는 탭으로 되돌아와 페이지 상단의 [Upload metadata file] 버튼을 누르고 [AWS Single Sign-On] 설정의 [AWS SSO SAML metadata] 링크에서 다운로드한 파일을 찾아 선택합니다. 그런 다음 열리는 [Basic SAML Configuration] 플라이아웃에서 [Save]를 클릭합니다. 이때 AWS Single Sign-On에서 Azure AD의 사용자와 일치하는 사용자 이름을 사용하는 사용자 계정이 이미 있는 경우 [Test] 버튼을 클릭하여 설정을 검증할 수 있습니다.
사용자 수가 비교적 적은 고객은 자동 프로비저닝에 의존하지 않고 AWS Single Sign-On에서 사용자 계정을 계속 유지하는 것을 선호할 수 있으므로 여기에서 중지하고 로그인 부분만 사용할 수 있습니다. 그러나 편의를 위해 자동 프로비저닝을 사용하는 것이 좋습니다. Azure AD 그룹에 추가한 새 사용자는 추가 작업 없이 자동으로 액세스할 수 있으므로 최종 사용자를 편하게 관리하고 생산성도 향상됩니다. Azure AD의 그룹에서 제거된 사용자는 AWS Single Sign-On의 관련 액세스 권한을 자동으로 상실하므로 보안상의 이점이 있습니다.
자동 프로비저닝 활성화
이제 Azure AD가 AWS Single Sign-On을 사용하여 연결하는 사용자를 위해 AWS Single Sign-On용으로 구성되었으므로 사용자 계정의 자동 프로비저닝을 활성화합니다. 새 계정이 Azure AD에 추가되고 생성한 AWS SSO 애플리케이션에 할당되었으므로 이러한 사용자가 AWS에 로그인할 때 해당 AWS Single Sign-On 사용자가 자동으로 생성됩니다. 관리자로서 더 이상 Azure AD 사용자를 매핑하기 위해 AWS에 해당 계정을 구성하지 않아도 됩니다.
AWS Single Sign-On Console에서 [Settings]로 이동한 다음 [Enable identity synchronization] 링크를 클릭합니다. 이렇게 하면 SCIM 엔드포인트 값과 OAuth 베어러 액세스 토큰(기본적으로 숨겨져 있음)이 포함된 대화 상자가 열립니다. Azure AD 애플리케이션 설정에서 사용하려면 이러한 값이 모두 필요하므로 두 값을 모두 기록하거나 여러 브라우저 탭을 사용해 복사/붙여넣기 작업을 수행합니다.
Azure AD 브라우저 탭과 AWS SSO 애플리케이션으로 다시 전환해 탐색 창에 있는 [Provisioning]을 클릭하고 [Provisioning Mode]를 [Automatic]으로 설정합니다. 이렇게 하면 AWS Single Sign-On Console 대화 상자의 값으로 완료해야 하는 필드가 표시됩니다. 먼저 SCIM 엔드포인트 값을 [Tenant URL] 필드에 붙여 넣습니다. 그런 다음 액세스 토큰을 [Secret Token] 필드에 붙여 넣습니다.
[Notification Email]에 대한 값을 입력해 설정을 완료하고 프로비저닝 실패 시 이메일을 수신하도록 선택한 다음 [Test Connection] 버튼을 클릭하여 모든 것이 예상한 대로 작동하는지 확인합니다. 모든 것이 양호하다고 가정하면 페이지 도구 모음에서 [Save]를 클릭한 다음 속성 매핑 구성에 남은 몇 단계를 수행하고 완료합니다!
[Mappings]을 확장하고 [Synchronize Azure Active Directory Users to customappsso] 링크를 클릭합니다(링크가 ‘…to AWS SSO‘로 읽힐 수 있음). 이렇게 하면 속성 매핑을 제어하는 페이지로 이동합니다. 해당 섹션에서 [facsimileTelephoneNumber] 및 [mobile] 속성은 사용하지 않으므로 삭제하고 [mailNickname] 속성을 클릭해 편집하면서 [Source attribute]를 [objectId]로 변경합니다. [Save]를 클릭하여 [Settings] 화면으로 되돌아가면 하나의 단계가 남아 있습니다. 남은 단계인 동기화 기능을 켜려면 [Provisioning Status]에서 [On]을 클릭하고 [Save]를 한 번 더 클릭합니다.
매 40분마다 첫 번째 동기화가 후속 동기화보다 더 오래 걸립니다. Azure AD에서 [Synchronization Details] 또는 [Audit Logs]를 보거나 AWS Single Sign-On Console의 탐색 패널에서 [Users]를 선택하여 진행 상황을 확인할 수 있습니다.
Single Sign-On 구성 후 다음 단계 작업
이제 Azure AD는 사용자 자격 증명과 그룹으로의 할당에 대한 신뢰할 수 있는 단일 원본이 되고, 주기적 동기화를 통해 AWS Single Sign-On에서 해당 사용자 자격 증명이 자동으로 생성되어 사용자가 Azure AD 자격 증명과 경험으로 AWS 계정 및 애플리케이션에 로그인할 수 있도록 하며, 이 결과 사용자 이름과 암호를 기억하지 않아도 됩니다. 그러나 현재로는 사용자가 로그인에만 액세스할 수 있습니다. AWS에 로그인한 후 액세스할 수 있는 것으로 권한을 관리하려면 AWS Single Sign-On Console을 사용하는 AWS Single Sign-On에서 권한을 설정해야 합니다. AWS Single Sign-On은 할당 시 권한 세트라는 개념을 사용합니다. 권한 세트는 본질적으로 AWS Identity and Access Management(IAM) 정책을 연결하는 표준 역할 정의입니다. 권한 세트를 정의하면 그룹이나 사용자를 지정된 계정에서 권한 세트에 할당합니다. 그런 다음 AWS Single Sign-On은 지정된 계정에서 그룹이나 사용자에게 액세스 권한을 부여하는 모든 올바른 정보를 포함하여 기본 AWS Identity and Access Management(IAM) 역할을 생성합니다. AWS Single Sign-On 사용 설명서에서 권한 세트에 관한 더 많은 내용을 읽을 수 있습니다.
아래 스크린샷에서 자동 동기화의 효과를 볼 수 있습니다. Azure AD에서 3개의 그룹을 만들었고 이 블로그 게시물을 위해 그 중 2개에 사용자 계정을 할당했습니다. 동기화가 완료된 후 AWS Single Sign-On Console로 전환하면 선택한 사용자 계정에 할당된 3개의 사용자 그룹이 자동으로 생성된 것을 볼 수 있습니다.
탐색 패널의 [AWS Accounts] 및 [Applications ] 링크에서 사용할 수 있는 [Permission Sets]를 사용하여 생성했던 하나 이상의 액세스 제어 정책(생성했던 사용자 지정 정책 또는 AWS Identity and Access Management(IAM) 관리형 정책)을 그룹과 사용자에 모두 연결하여 사용자가 로그인했을 때 권한을 제어할 수 있습니다. 익숙한 Azure AD 환경을 사용하여 로그인하고 사용자는 담당할 계정과 역할을 선택할 수 있습니다. AWS 콘솔과 CLI를 사용하여 로그인할 수도 있습니다. AWS CLI(명령줄 인터페이스) 버전 2에서 Single Sign-On을 사용하는 방법에 대한 자세한 내용은 이 블로그 게시물에 자세하게 설명되어 있습니다.
이 게시물에서는 새로운 AWS Single Sign-On 기능을 활용하여 Azure AD 사용자 자격 증명을 AWS 계정과 애플리케이션에 중앙 집중식으로 연결하고 자격 증명을 관리하고 사용할 때 복잡성을 줄이기 위해 새로운 자동 프로비저닝 지원을 활용하는 방법을 설명합니다. 이제 관리자는 사용자를 관리하기 위해 신뢰할 수 있는 단일 원본을 사용할 수 있으며, 사용자는 더 이상 AWS 계정과 애플리케이션에 로그인하기 위해 추가 자격 증명과 암호를 관리할 필요가 없습니다.
이 다음 발전 형태는 모든 AWS Single Sign-On 지원 리전에서 어떠한 사용자라도 기능을 활용할 수 있는 것입니다. AWS Single Sign-On의 리전 가용성은 여기에서 확인할 수 있습니다.