Share via


Microsoft Entra ID의 프로비전을 위한 Active Directory Lightweight Directory Services 준비

다음 설명서에서는 AD LDS(Active Directory Lightweight Directory Services) 설치를 준비하는 방법을 보여 주는 자습서 정보를 제공합니다. 이 디렉터리를 문제 해결을 위한 예제 LDAP 디렉터리로 사용하거나 Microsoft Entra ID의 사용자를 LDAP 디렉터리로 프로비전하는 방법을 보여 주는 데 사용할 수 있습니다.

LDAP 디렉터리 준비

디렉터리 서버가 아직 없는 경우 테스트 AD LDS 환경을 만드는 데 도움이 되는 다음 정보가 제공됩니다. 이 설치에서는 응답 파일과 함께 PowerShell 및 ADAMInstall.exe를 사용합니다. 이 문서에서는 AD LDS에 대한 자세한 정보를 다루지 않습니다. 자세한 내용은 Active Directory Lightweight Directory Services를 참조하세요.

AD LDS 또는 다른 디렉터리 서버가 이미 있는 경우 이 콘텐츠를 건너뛰고 자습서: ECMA 커넥터 호스트 일반 LDAP 커넥터를 계속 진행하여 ECMA 커넥터 호스트를 설치하고 구성할 수 있습니다.

SSL 인증서, 테스트 디렉터리 만들기 및 AD LDS 설치

부록 A의 PowerShell 스크립트를 사용합니다. 이 스크립트에서 수행하는 작업은 다음과 같습니다.

  1. LDAP 커넥터에서 사용할 자체 서명된 인증서를 만듭니다.
  2. 기능 설치 로그에 대한 디렉터리를 만듭니다.
  3. 개인 저장소의 인증서를 디렉터리로 내보냅니다.
  4. 인증서를 로컬 컴퓨터의 신뢰할 수 있는 루트로 가져옵니다.
  5. 가상 머신에 AD LDS 역할을 설치합니다.

LDAP 커넥터를 테스트하는 데 사용하는 Windows Server 가상 머신에서 컴퓨터 이름과 일치하도록 스크립트를 편집한 다음 관리자 권한으로 Windows PowerShell을 사용하여 스크립트를 실행합니다.

AD LDS의 인스턴스 만들기

이제 역할이 설치되었으므로 AD LDS의 인스턴스를 만들어야 합니다. 인스턴스를 만들려면 아래에 제공된 응답 파일을 사용할 수 있습니다. 이 파일은 UI를 사용하지 않고 인스턴스를 자동으로 설치합니다.

부록 B의 내용을 메모장에 복사하고, 이를 answer.txt"C:\Windows\ADAM"에 저장합니다.

이제 관리자 권한으로 cmd 프롬프트를 열고, 다음 실행 파일을 실행합니다.

C:\Windows\ADAM> ADAMInstall.exe /answer:answer.txt

AD LDS에 대한 컨테이너 및 서비스 계정 만들기

부록 C의 PowerShell 스크립트를 사용합니다. 이 스크립트에서 수행하는 작업은 다음과 같습니다.

  1. LDAP 커넥터에서 사용할 서비스 계정에 대한 컨테이너를 만듭니다.
  2. 사용자가 프로비전될 클라우드 사용자용 컨테이너 만들기
  3. AD LDS에서 서비스 계정을 만듭니다.
  4. 서비스 계정을 사용하도록 설정합니다.
  5. 서비스 계정을 AD LDS 관리자 역할에 추가합니다.

Windows Server 가상 머신에서 관리자 권한으로 Windows PowerShell을 사용하여 스크립트를 실행하는 LDAP 커넥터를 테스트하는 데 사용합니다.

네트워크 서비스에 SSL 인증서에 대한 읽기 권한 부여

SSL이 작동하도록 하려면 새로 만든 인증서에 대한 읽기 권한을 네트워크 서비스에 부여해야 합니다. 권한을 부여하려면 다음 단계를 사용합니다.

  1. C:\Program Data\Microsoft\Crypto\Keys로 이동합니다.
  2. 마우스 오른쪽 단추로 여기에 있는 시스템 파일을 클릭합니다. guid가 됩니다. 이 컨테이너는 인증서를 저장하고 있습니다.
  3. 속성 선택
  4. 위쪽에서 보안 탭을 선택합니다.
  5. 편집을 선택합니다.
  6. 추가를 클릭합니다.
  7. 상자에서 네트워크 서비스를 입력하고, 이름 확인을 선택합니다.
  8. 목록에서 네트워크 서비스를 선택하고, 확인을 클릭합니다.
  9. Ok를 클릭합니다.
  10. 네트워크 서비스 계정에 읽기 및 읽기/실행 권한이 있는지 확인하고, 적용확인을 클릭합니다.

AD LDS를 사용하여 SSL 연결 확인

이제 인증서를 구성하고 네트워크 서비스 계정 권한을 부여했으므로 연결을 테스트하여 작동하는지 확인합니다.

  1. 서버 관리자를 열고, 왼쪽에서 AD LDS를 선택합니다.
  2. 마우스 오른쪽 단추로 AD LDS 인스턴스를 클릭하고, 팝업에서 ldp.exe를 선택합니다. Ldp 도구 위치를 보여 주는 스크린샷
  3. ldp.exe의 위쪽에서 연결연결을 차례로 선택합니다.
  4. 다음 정보를 입력하고, 확인을 클릭합니다.
    • 서버: APP3
    • 포트: 636
    • SSL 상자에 확인 표시Ldp 도구 연결 구성을 보여 주는 스크린샷
  5. 아래 스크린샷과 비슷한 응답이 표시됩니다. Ldp 도구 연결 구성 성공을 보여 주는 스크린샷.
  6. 위쪽의 연결 아래에서 바인딩을 선택합니다.
  7. 기본값을 그대로 두고, 확인을 클릭합니다. Ldp 도구 바인딩 작업을 보여 주는 스크린샷
  8. 이제 인스턴스에 성공적으로 바인딩됩니다. Ldp 도구 바인딩 성공을 보여 주는 스크린샷

로컬 암호 정책 사용 안 함

현재 LDAP 커넥터는 사용자에게 빈 암호를 프로비전합니다. 이 프로비저닝은 서버의 로컬 암호 정책을 충족하지 않으므로 테스트 목적으로 사용하지 않도록 설정합니다. 암호 복잡성을 사용하지 않도록 설정하려면 도메인에 조인하지 않은 서버에서 다음 단계를 사용합니다.

Important

진행 중인 암호 동기화는 온-프레미스 LDAP 프로비전의 기능이 아니므로 Microsoft는 AD DS와 함께 사용하거나 AD LDS 인스턴스에서 기존 사용자를 업데이트할 때 특히 페더레이션된 애플리케이션에서 AD LDS를 사용하도록 권장합니다.

  1. 서버에서 시작, 실행, gpedit.msc를 차례로 클릭합니다.
  2. 로컬 그룹 정책 편집기에서 컴퓨터 구성 > Windows 설정 > 보안 설정 > 계정 정책 > 암호 정책으로 차례로 이동합니다.
  3. 오른쪽에서 암호는 복잡성 요구 사항을 충족해야 함을 두 번 클릭하고, 사용 안 함을 선택합니다. 복잡성 요구 사항 설정의 스크린샷.
  4. 적용확인을 클릭합니다.
  5. 로컬 그룹 정책 편집기를 닫습니다.

다음으로, Microsoft Entra ID 사용자를 LDAP 디렉터리로 프로비전하여 프로비전 에이전트를 다운로드하고 구성하기 위한 지침을 계속 진행합니다.

부록 A - AD LDS PowerShell 스크립트 설치

다음 PowerShell 스크립트를 사용하여 Active Directory Lightweight Directory Services 설치를 자동화할 수 있습니다. 사용자 환경에 맞게 스크립트를 편집해야 합니다. 특히 APP3를 컴퓨터의 호스트 이름으로 변경합니다.

# Filename: 1_SetupADLDS.ps1
# Description: Creates a certificate that will be used for SSL and installs Active Directory Lighetweight Directory Services.
#
# DISCLAIMER:
# Copyright (c) Microsoft Corporation. All rights reserved. This 
# script is made available to you without any express, implied or 
# statutory warranty, not even the implied warranty of 
# merchantability or fitness for a particular purpose, or the 
# warranty of title or non-infringement. The entire risk of the 
# use or the results from the use of this script remains with you.
#
#
#
#
#Declare variables
$DNSName = 'APP3'
$CertLocation = 'cert:\LocalMachine\MY'
$logpath = "c:\" 
$dirname = "test"
$dirtype = "directory"
$featureLogPath = "c:\test\featurelog.txt" 

#Create a new self-signed certificate
New-SelfSignedCertificate -DnsName $DNSName -CertStoreLocation $CertLocation

#Create directory
New-Item -Path $logpath -Name $dirname -ItemType $dirtype

#Export the certificate from the local machine personal store
Get-ChildItem -Path cert:\LocalMachine\my | Export-Certificate -FilePath c:\test\allcerts.sst -Type SST

#Import the certificate in to the trusted root
Import-Certificate -FilePath "C:\test\allcerts.sst" -CertStoreLocation cert:\LocalMachine\Root


#Install AD LDS
start-job -Name addFeature -ScriptBlock { 
Add-WindowsFeature -Name "ADLDS" -IncludeAllSubFeature -IncludeManagementTools 
 } 
Wait-Job -Name addFeature 
Get-WindowsFeature | Where installed >>$featureLogPath


부록 B - 응답 파일

이 파일은 AD LDS의 인스턴스를 자동화하고 만드는 데 사용됩니다. 환경과 일치하도록 이 파일을 편집합니다. 특히 서버의 호스트 이름으로 변경 APP3 합니다.

Important

이 스크립트는 AD LDS 서비스 계정에 대한 로컬 관리자를 사용합니다. 설치하는 동안 암호를 입력하라는 메시지가 표시됩니다.

구성원 또는 독립 실행형 서버가 아닌 do기본 컨트롤러에 AD LDS를 설치하는 경우 LocalLDAPPortToListenOn 및 LocalSSLPortToListonOn을 SSL을 통해 LDAP 및 LDAP에 대해 잘 알려진 포트가 아닌 다른 포트로 변경해야 합니다. 예를 들면 LocalLDAPPortToListenOn=51300 및 LocalSSLPortToListenOn=51301입니다.

 [ADAMInstall]
 InstallType=Unique
 InstanceName=AD-APP-LDAP
 LocalLDAPPortToListenOn=389
 LocalSSLPortToListenOn=636
 NewApplicationPartitionToCreate=CN=App,DC=contoso,DC=lab
 DataFilesPath=C:\Program Files\Microsoft ADAM\AD-APP-LDAP\data
 LogFilesPath=C:\Program Files\Microsoft ADAM\AD-APP-LDAP\data
 ServiceAccount=APP3\Administrator
 ServicePassword=\*
 AddPermissionsToServiceAccount=Yes
 Administrator=APP3\Administrator
 ImportLDIFFiles="MS-User.LDF"
 SourceUserName=APP3\Administrator
 SourcePassword=Pa$$Word1

부록 C - AD LDS PowerShell 스크립트 채우기

AD LDS를 컨테이너 및 서비스 계정으로 채우는 PowerShell 스크립트입니다.

# Filename: 2_PopulateADLDS.ps1
# Description: Populates our AD LDS environment with 2 containers and a service account

# DISCLAIMER:
# Copyright (c) Microsoft Corporation. All rights reserved. This 
# script is made available to you without any express, implied or 
# statutory warranty, not even the implied warranty of 
# merchantability or fitness for a particular purpose, or the 
# warranty of title or non-infringement. The entire risk of the 
# use or the results from the use of this script remains with you.
#
#
#
#
# Create service accounts container
New-ADObject -Name "ServiceAccounts" -Type "container" -Path "CN=App,DC=contoso,DC=lab" -Server "APP3:389"
Write-Output "Creating ServiceAccounts container"

# Create cloud users container
New-ADObject -Name "CloudUsers" -Type "container" -Path "CN=App,DC=contoso,DC=lab" -Server "APP3:389"
Write-Output "Creating CloudUsers container"

# Create a new service account
New-ADUser -name "svcAccountLDAP" -accountpassword (ConvertTo-SecureString -AsPlainText 'Pa$$1Word' -Force) -Displayname "LDAP Service Account" -server 'APP3:389' -path "CN=ServiceAccounts,CN=App,DC=contoso,DC=lab"
Write-Output "Creating service account"

# Enable the new service account
Enable-ADAccount -Identity "CN=svcAccountLDAP,CN=ServiceAccounts,CN=App,DC=contoso,DC=lab" -Server "APP3:389"
Write-Output "Enabling service account"

# Add the service account to the Administrators role
Get-ADGroup -Server "APP3:389" -SearchBase "CN=Administrators,CN=Roles,CN=App,DC=contoso,DC=lab" -Filter "name -like 'Administrators'" | Add-ADGroupMember -Members "CN=svcAccountLDAP,CN=ServiceAccounts,CN=App,DC=contoso,DC=lab"
Write-Output "Adding service accounnt to Administrators role"


다음 단계