출처 : timetodev.co.kr/blog/171 (본인)
Azure에서는 Azure AD를 이용하여 사용자 및 그룹관리를 합니다.
보통은 이렇게만 생각합니다...
하지만 Azure AD는 그 이상의 관리 서비스입니다.
Azure AD에 대해 알아보겠습니다.
Azure AD는 사용자의 로그인과 클라우드 서비스 권한 부여 등을 담당하는 '사용자 계정 통합 관리 서비스'(PaaS)입니다.
Azure AD는 Windows 계열 PC 및 서버에서 사용하던 Microsoft의 Active Directory를 Microsoft의 클라우드 서비스 Azure에서 대부분 동일하게 제공하고 있습니다. 하지만 기존의 AD가 클라우드 버전으로 서비스를 하고 있는 것은 아닙니다.
참고로 MS에는 Microsoft AD 계정과 Azure AD계정이 존재하는데...
이 두 가지는 헷갈리기 쉽습니다.
Microsoft AD 계정은 Outlook, Office 365와 같이 소비자 중심의 MS 제품 및 클라우드 서비스에 대한 액세스를 제공하는 개인 계정입니다.
Azure AD 계정은 Azure AD 또는 Office 365와 같은 다른 MS 클라우드 서비스를 통해 생성된 ID입니다. 이는 학교/직장의 조직 단위입니다.
필요에 따라 Azure AD B2C를 사용하여 Microsoft 계정을 Azure AD에 등록하여 사용할 수 있습니다. 또한 OAuth를 이용하여 여러 플랫폼의 계정을 등록하여 사용 가능합니다. Azure AD를 접근하면서 가장 많이 보고 듣는 게 Tenant입니다.
Tenant란 Azure AD의 신뢰할 수 있는 전용 인스턴스입니다.
Azure AD를 알아보기 전에 Windows AD에 대해 최소한의 내용을 이해해봅시다.
AD(Active Directory)란?
AD란 MS에서 만든 컴퓨터 Object관리(도메인 컨트롤러) 솔루션(파일타입의 데이터베이스)입니다.
여기서 Object란 User, Computer, 공유 폴더 등 각종 자원을 의미합니다.
그리고 Directory는 Object 정보를 저장할 수 있는 정보 저장소를 의미합니다.
Directory Service는 Object 생성, 검색, 관리를 사용할 수 있는 서비스를 의미합니다.
Windows Server에서는 AD DS(Active Directory Domain Service)라는 Directory Service를 제공합니다.
[용어의 정의]
도메인 (Domain)
- Active Directory의 가장 기본이 되는 단위입니다.
- 관리를 위한 큰 범위를 표현, 관리를 위해 지역적인 범위로 구분 가능합니다.
- 도메인이 여러 개일 경우 부모/자식 도메인으로 구분 가능합니다.
트리 (Tree), 포리스트 (Forest)
- 트리는 도메인의 집합입니다. (논리적인 집합의 개념)
- 여러 개의 트리로 AD가 구성되면 이를 포리스트(Forest)라고 표현합니다.
- 포리스트 > 트리 > 도메인
사이트 (Site)
- 물리적인 범주입니다.
- 부모 도메인이 msoftware.co.kr 이면 자식 도메인은 site.msoftware.co.kr처럼 다른 사이트로 구성합니다.
- 사이트는 IP주소 대역이 다릅니다.
트러스트 (Trust)
- 도메인 또는 포리스트 사이에 신뢰할지 여부에 대한 관계입니다.
- 트러스트 안 도메인 사이에는 상호 양방향 전이 트러스트를 갖습니다. (도메인간 서로 신뢰)
OU ; Organizational Unit (조직 구성단위)
- 도메인 내부에서 Object를 관리할 목적으로 만들어진 그룹화된 단위입니다. (계층구조)
- 권한 위임과 그룹 정책을 적용할 수 있는 최소한의 단위입니다.
DC ; Domain Controller(도메인 컨트롤러)
- 로그인, 이용권한, 사용자 등록, 암호 변경 등을 처리하는 서버를 의미합니다.
- AD에서 도메인 서비스를 구현할 경우 도메인에 하나 이상의 DC(Domain Controller)를 설치해야 합니다.
RODC ; Read Only Domain Controller (읽기 전용 도메인 컨트롤러)
- 주 DC는 별도의 Admin이 수시로 관리하는데 RODC는 주 DC로부터 AD와 관련된 데이터를 전송받아 저장 후 사용합니다.
- RODC를 사용하는 경우 본사와 떨어진 지사에 DC가 필요할때 별도의 Admin을 두기 어렵기 때문에 주 DC의 부하를 분담하기 위해서 주로 사용됩니다.
GC ; Global catalog (글로벌 카탈로그)
- 트러스트(Trust)내의 도메인들에 포함된 개체에 대한 정보를 수집하여 저장되는 통합 저장소입니다.
- 사용자의 경우 이름, 아이디, 비밀번호 등의 정보가 글로벌 카탈로그에 저장됩니다.
AD DS (Active Directory Domain Service)
Object에 대한 정보를 네트워크 상에 저장하면 AD DS는 이러한 정보들을 통합하여 관리합니다.
- Local 계정 파일 (SAM File)
SAM(Security Account Manager) 파일은 사용자와 그룹 계정의 패스워드를 관리하고, LSA (Local Security Authority)를 통한 인증을 제공합니다. 도메인 관련 작업은 불가능합니다. 컴퓨터 이름\계정명으로 표현합니다. (PC\User)
- Domain 계정
도메인 관련 작업 및 공유 자원에 대한 접근이 가능한 계정입니다. 도메인 이름\계정명으로 표현합니다. (domain\user) 이러한 표현 방식을 NetBios이라 하며, Netbios는 MS에서 사용하는 방식으로 UPN(User Principal Name) 방식을 권장합니다. (user@domain.com)
[정리]
- Windows는 File과 Configuration들의 집합이라고 쉽게 생각하면 그들을 AD에서 통합 관리하는 것입니다.
- 인증과 권한이 사용되는 모든 것이 AD로 된다고 이해할 수 있습니다.
- C:\Windows\NTDS 경로에 저장됩니다.
- AD Domain Join의 상태에서 관리가 됩니다. (도메인 가입이 되어 있어야 함)
- DNS 운영시 AD의 DNS로 마이그레이션 진행해야 합니다.(AD가 DNS 기능을 포함하고 있어 AD에 가입된 Client들은 AD DNS를 바라봐야 함)
- AD DS를 이용하면 단일화된 로그인 처리가 가능합니다.
- 공유 자원에 대한 정보 검색이 편리합니다.
- 네트워크 환경에서 Domain 자원을 공유할 수 있습니다.
- 네트워크상 나눠져 있는 여러 가지 Object를 중앙에서 모든 관리를 수행, 본사 및 지사 직원들은 더 이상 자신의 PC 정보를 보관할 필요가 없습니다.
- 지사에 출장하게 되면 자신의 아이디로 로그인만 하면 타인의 PC가 자신의 PC 환경과 마찬가지로 변경됩니다.
- Active Directory Domain에 대한 단위는 Forest > Tree > Domain > OU > Object입니다.
- 인증에는 Kerberos 및 NTLM과 같은 프로토콜을 사용하고 Active Directory 데이터베이스의 항목을 쿼리하고 수정하려면 LDAP(Lightweight Directory Access Protocol)를 사용합니다.
그러면 Azure AD와 Windows AD의 차이점이 무엇일까요?
통신 | Azure AD | REST API를 사용하여 다른 웹 기반 서비스와의 통신을 지원 |
Windows AD | LDAP를 사용하여 Client Server 및 Domain Controller 간에 데이터를 전달 | |
인증 | Azure AD | OAuth2, SAML 및 WS-Security와 같은 클라우드 기반 인증 프로토콜을 사용 |
Windows AD | Kerberos 및 NTLM을 사용하여 사용자 자격 증명의 유효성을 검사 | |
네트워크 조직 | Azure AD | Tenant를 사용 |
Windows AD | 조직 구성단위, 도메인 및 포리스트로 구성 | |
권한 관리 | Azure AD | 사용자를 그룹으로 구성, 그룹에 앱 및 리소스에 대한 액세스 권한을 부여 |
Windows AD | 사용자를 그룹에 할당하고 해당 그룹은 네트워크의 리소스에 액세스 | |
서버 | Azure AD | Azure AD DS를 사용하여 Azure 클라우드 가상 머신 환경에 있는 서버를 관리 |
Windows AD | Windows AD의 서버는 GPO(Group Policy Object) 또는 기타 On-Premise 서버 관리 시스템에 의해 관리 |
[표] Azure AD와 Windows AD의 차이
무엇을 사용하는 게 맞을까요?
정답은 없습니다.
각자가 속해있는 조직의 구성에 따라 다를 수도 있으며, 요구사항에 따라서 다를 수도 있습니다. 이미 조직이 구성된 지 꽤 오래되어 있다면 Windows AD 기반으로 이미 사내 인프라가 구축되어 있을 수 있습니다. 이때 클라우드를 도입함으로써 Azure AD를 추가 도입하는 경우가 많습니다. 이럴 때 하이브리드 구성을 위해 Azure AD Connect를 이용합니다. Azure AD Connect는 Windows AD와 Azure AD배포를 지원하는 Microsoft의 솔루션입니다. 이를 이용하여 On-Premise Domain Controller와 클라우드의 데이터를 동기화할 수 있습니다. 단 Azure AD Connect는 Azure AD로 단방향으로 동기화합니다. 합니다. 이와 반대로 Azure AD DS는 Azure AD를 Windows AD로 단방향 동기화를 할 수 있습니다.
Azure AD Connect -> Azure AD
Azure AD DS -> Windows AD
각각 단방향으로 동기화됩니다.(양방향 X)
만약 현재 본인의 조직이 신규 조직이고, 앞으로 클라우드를 기반으로 구성이 될 예정이라면 Azure AD로 구성을 하는 게 바람직할 수 있습니다. 물론 Windows AD를 잊지 못하고 Windows AD의 구성으로 섞어서 진행하게 된다면...
Azure AD Connect를 이용하여 하이브리드로 구성하면 됩니다.
출처 : timetodev.co.kr/blog/171 (본인)
'DEV > Azure' 카테고리의 다른 글
Azure AD DS(Active Directory Domain Services) (0) | 2021.04.08 |
---|