PowerShell 및 AD 도구로 Active Directory에서 대량 사용자 생성
Dec 17, 2024
오늘날 조직은 매우 역동적으로 운영되며 직원, 계약직 및 기타 사용자가 계속해서 추가됩니다. 따라서 IT 관리자는 종종 Active Directory (AD) 또는 Entra ID (기존 Azure AD)에 사용자 개체를 생성해야 합니다. 단일 사용자를 수동으로 만드는 것은 쉽지만, 여러 사용자를 대상으로 동일한 작업을 반복하면 지루하고 시간이 많이 소요됩니다. 또한 보안과 생산성을 위험에 빠뜨릴 수 있는 오류가 발생하기 쉽습니다.
이 문서에서는 PowerShell을 사용해 AD 사용자를 대량으로 생성하는 프로세스를 간소화하는 방법과, 기본 제공 마법사로 Entra ID에서 사용자를 대량으로 생성하는 방법을 설명합니다. 이어서 직관적인 인터페이스에서 AD 또는 Entra ID에 사용자를 손쉽게 생성할 수 있는 제3자 솔루션도 소개합니다.
PowerShell을 사용한 Active Directory 일괄 사용자 생성
Microsoft PowerShell은 Active Directory 사용자를 대량으로 생성할 때 널리 사용되는 옵션입니다. ISE PowerShell 모듈을 설치해야 하며, Active Directory에서 사용자 계정을 생성할 수 있는 관리자 권한이 있어야 합니다.
PowerShell은 탄탄한 스크립팅 역량을 갖춘 IT 전문가만 사용해야 한다는 점을 기억하세요. 내용을 충분히 이해하지 못한 스크립트는 절대 실행하지 마십시오.
- 생성하려는 사용자에 대한 정보를 CSV 파일로 작성. 파일에는 다음 필드가 포함되어야 합니다: SAMAccount, FirstName, LastName, Password, OU. 원한다면 더 많은 필드를 추가할 수 있습니다. 아래는 메모장(Notepad)에 표시되는 CSV 파일의 예시입니다:
행과 열을 더 명확하게 보려면 Microsoft Excel에서 파일을 열 수 있습니다:
- 사용자를 생성합니다. 다음 PowerShell 스크립트를 Windows PowerShell ISE에서 실행하세요:
# Import the PowerShell module for running AD cmdlets
Import-Module activedirectory
#Store the data from your CVS file in the $ADUsers variable
$ADUsers = Import-csv C:\BulkUsers.csv
#Read each row of input data and assign each user’s details to variables
foreach ($User in $ADUsers)
{
$Username = $User.name
$Password = $User.password
$Firstname = $User.firstname
$Lastname = $User.lastname
$OU = $User.OU
$email = $User.email
$streetaddress = $User.address
$city = $User.city
$state = $User.state
$country = $User.country
$zipcode = $User.zipcode
$telephone = $User.telephone
$jobtitle = $User.title
$company = $User.company
$department = $User.department
#Check whether the user already exists in the AD
if (Get-ADUser -F {SamAccountName -eq $Username})
{
#If the user already exists, display a warning
Write-Warning "A user account with username $Username already exists in Active Directory."
}
else
{
#Otherwise, create the new user account in the specified OU
New-ADUser SamAccountName $Username UserPrincipalName "$Username@milkyway.local" Name “$Firstname $Lastname” GivenName $Firstname Surname $Lastname Enabled $True DisplayName "$Lastname, $Firstname" Path $OU City $city Company $company State $state StreetAddress $streetaddress OfficePhone $telephone EmailAddress $email Title $jobtitle Department $department AccountPassword (convertto-securestring $Password -AsPlainText Force) ChangePasswordAtLogon $True
}
}
- 결과를 확인합니다. Active Directory Users and Computers (ADUC)에서 사용자 개체를 확인할 수 있습니다.
Entra ID에서 대량 사용자 생성
Entra ID를 사용하면 스크립팅 없이도 사용자를 대량으로 만들 수 있습니다. 수행할 단계는 다음과 같습니다:
- 대량 사용자 생성 마법사 열기. 포털에 사용자 관리자 또는 전역 관리자 권한으로 로그인합니다. Users로 이동합니다. Bulk operations 옵션을 클릭한 다음 Bulk create를 선택합니다(아래 그림 참조).
- CSV 파일을 생성 사용자 목록. 마법사가 템플릿 CSV 파일을 제공합니다. 예시 행을 생성하려는 사용자별 행으로 바꾸고, 필요한 모든 속성과 원하는 선택적 속성을 지정하세요. 파일을 저장합니다.
- 파일을 업로드하세요. 클릭 Upload your File 를 선택한 다음, 생성한 파일을 지정합니다. 시스템이 사용자를 생성하기 시작합니다.
- 결과를 확인하세요. 상단의 알림 표시줄에서 성공 및 실패 결과와 생성된 사용자 계정 요약을 확인할 수 있습니다. 사용자 계정을 확인하려면 Users 탭으로 이동하세요.
Netwrix Directory Manager를 사용한 일괄 사용자 생성
Netwrix Directory Manager Synchronize 모듈을 사용하면 손쉽게 사용자를 대량으로 만들 수 있습니다. 새 작업을 생성한 다음 마법사의 단계에 따라 진행하기만 하면 됩니다.
- 데이터 소스와 대상 identity store를 지정합니다. 지원되는 데이터 소스로는 CSV 파일과 Oracle 및 SQL Server 같은 인기 데이터베이스가 포함됩니다. 지원되는 identity store 공급자에는 Active Directory 및 Entra ID뿐만 아니라 일반 LDAP와 Google Workspace도 포함됩니다. HR (CSV 파일이 포함된) 를 소스 데이터 공급자로 선택하고, NBC 를 AD identity provider Milkyway 의 컨테이너에서 사용자로 생성합니다:
- 생성할 개체 유형을 선택합니다. 이 경우에는 사용자 개체를 생성하도록 선택합니다:
- 사용자 특성 매핑 소스에서 대상까지입니다. 클릭 +필드 추가/편집 후 만들기 라디오 버튼을 선택하고, 생성 중인 각 사용자 개체에 포함할 특성을 선택합니다. 클릭 저장.
- 대화 상자 하단에서 소스에서 대상까지의 특성 매핑을 지정합니다:
- 소스 데이터를 변환 (선택 사항). 대상에서 사용자를 만들기 전에 소스 데이터를 조작하도록 선택할 수 있습니다. 예를 들어, 두 개의 소스 필드 값을 하나의 대상 필드로 결합하거나, 필드에 문자열 상수 값을 할당할 수 있습니다. 원하시면 Visual Basic .NET 편집기를 사용하여 변환 스크립트를 작성할 수도 있습니다.
- 설정 작업 알림입니다. 작업 알림에 사용할 하나 이상의 이메일 주소를 지정하세요. 또한 알림을 보내는 조건을 지정할 수도 있습니다.
- 작업을 미리 보고 실행합니다. 마법사는 작업의 미리보기를 제공하며, 필요에 맞지 않는 부분을 쉽게 수정할 수 있도록 해줍니다. 작업이 올바르면 실행하여 사용자들을 대량으로 생성한 뒤, 결과 통계를 검토하세요.
대량으로 사용자 업데이트
때로는 관리자가 새 사용자를 만들기보다 기존 사용자 개체 세트를 사용해야 하는 경우가 있습니다. 수동으로 사용자 생성을 하는 것처럼 수동 사용자 업데이트도 시간이 많이 걸리고 오류가 발생하기 쉽습니다. 이를 돕기 위해 Netwrix Directory Manager에서는 사용자를 생성하는 데 사용했던 작업을 템플릿으로 저장할 수 있습니다. 나중에 해당 사용자를 업데이트해야 하는 경우에는 작업을 편집한 다음 그대로 실행하기만 하면 됩니다. 또한 작업을 정기적으로 실행하도록 예약하고, 실행이 완료되면 알림을 받을 수도 있습니다.
Netwrix Directory Manager 무료 체험판을 신청하세요
공유하기
더 알아보기
저자 소개
Jonathan Blackwell
소프트웨어 개발 책임자
2012년부터 엔지니어이자 혁신가인 Jonathan Blackwell은 엔지니어링 리더십을 제공해 Netwrix GroupID를 Active Directory 및 Azure AD 환경에서 그룹 및 사용자 관리 분야의 최전선에 올려놓았습니다. 개발, 마케팅, 영업에서의 그의 경험을 통해 Jonathan은 Identity 시장과 구매자가 생각하는 방식까지 완전히 이해할 수 있습니다.
엔드포인트 적용 없이는 AI 정책이 단지 문서에 불과합니다
헬스 IT는 이미지를 클라우드로 이동할 수 없습니다. 온프레미스 시스템을 준수 상태로 유지하는 방법입니다.
Microsoft is retiring memberOf operator in Entra ID Dynamic Groups. What should administrators do next?
Active Directory는 사라지지 않습니다. 그룹 정책 설정이 COBOL만큼 취약할 수 있습니다
당신을 대신해 일하는 AI 에이전트는 아마도 당신보다 더 많은 권한에 접근하고 있을 것입니다