Active Directory Domain Services에서 사용자를 만들려면 사용자를 배치하려는 도메인의 도메인 컨테이너에 사용자 개체를 만듭니다. 사용자는 도메인의 루트, 조직 구성 단위 또는 컨테이너 내에서 만들 수 있습니다.
사용자 개체를 만들 때 다음 표에 나열된 특성을 설정하여 개체를 Active Directory Domain Services 및 Windows 보안 시스템에서 인식하는 법적 사용자로 설정해야 합니다.
| 속성 | 설명 |
|---|---|
| cn | 디렉터리에 있는 사용자 개체의 이름을 지정합니다. 개체의 RDN(상대적 고유 이름)이 됩니다. |
| sAMAccountName | 이전 버전의 Windows에서 클라이언트 및 서버를 지원하는 데 사용되는 이름인 문자열을 지정합니다.
sAMAccountName 이전 버전의 Windows에서 클라이언트를 지원하려면 20자 미만이어야 합니다. sAMAccountName 도메인 내의 모든 보안 주체 개체 중에서 고유해야 합니다. 도메인에 대해 쿼리를 수행하여 sAMAccountName 도메인 내에서 고유한지 확인해야 합니다. sAMAccountName 선택적 특성입니다. 지정하지 않으면 서버에서 임의의 sAMAccountName 값을 만듭니다. |
다른 특성을 설정할 수도 있습니다. 다음 사용자 특성은 생성 시 명시적으로 설정하지 않은 경우 기본값으로 설정됩니다.
| 속성 | 설명 |
|---|---|
| 계정만료 | 계정이 만료되는 시기를 지정합니다. 기본값은 계정이 만료되지 않음을 나타내는 TIMEQ_FOREVER. |
| nTSecurityDescriptor | 보안 설명자는 특정 규칙에 따라 생성됩니다. 자세한 내용은 새 디렉터리 개체보안 설명자를 설정하는 방법을 참조하세요. |
| objectCategory | 사용자 범주를 지정합니다. 기본값은 "Person"입니다. |
| 이름 | 사용자 이름을 지정합니다. 기본값은 cn대해 설정된 값입니다. |
| pwdLastSet | 사용자가 마지막으로 암호를 설정한 시기를 지정합니다. 기본값은 0으로, 사용자가 다음 로그온 시 암호를 변경해야 했음을 나타냅니다. |
| userAccountControl | 사용자의 여러 로그온 및 계정 기능을 결정하는 값을 포함합니다. 기본적으로 다음 플래그가 설정됩니다.
|
| 의 구성원 | 사용자가 직접 구성원인 그룹 또는 그룹을 지정합니다. 기본값은 "도메인 사용자"입니다. |
사용자는 원하는 컨테이너에 바인딩한 다음 다음 방법 중 하나를 사용하여 만들어집니다. 사용자가 서버에 커밋되기 전에 cn 및 sAMAccountName 특성을 설정해야 합니다.
| 메서드 | 묘사 |
|---|---|
| IADsContainer.Create |
cn 특성은 bstrRelativeName 매개 변수에서 가져옵니다.
IADs.SetInfo 호출하여 새 사용자를 커밋해야 합니다. 그렇지 않으면 개체가 만들어지지 않습니다. 자세한 내용은 사용자 만들기 위한예제 코드를 참조하세요. |
| IDirectoryObject::CreateDSObject |
cn 특성은 pszRDNName 매개 변수에서 가져옵니다.
CreateDSObject 호출될 때 새 사용자가 커밋됩니다. 자세한 내용은 사용자 만들기 위한예제 코드를 참조하세요. |
| DirectoryEntries.add |
cn 특성은 이름 매개 변수에서 가져옵니다. 새 사용자 개체는 DirectoryEntry.CommitChanges 호출하여 커밋해야 합니다. 그렇지 않으면 개체가 만들어지지 않습니다. 자세한 내용은 디렉터리 개체추가를 참조하세요. |
cn 및 sAMAccountName 이외의 특성을 수정하려면 먼저 새 사용자를 서버에 커밋해야 합니다. 이는 사용자가 커밋될 때까지 사용자 계정이 실제로 존재하지 않기 때문입니다. 서버에 없는 개체에 대한 특성을 검색하거나 수정하면 오류가 발생합니다. 여기에는 IADsUser.SetPassword 메서드 호출이 포함됩니다. 예를 들어 IADsContainer.Create사용하여 사용자를 만들 때 다음 시퀀스가 수행됩니다.
- IADsContainer.Create 호출하여 지정된 cn사용하여 로컬 캐시에 사용자를 만듭니다.
- sAMAccountName 특성을 IADs.Put 메서드를 사용하여 원하는 값으로 설정합니다.
- 이제 userAccountControl같은 다른 특성을 수정합니다. 이 제한은 IADsUser.AccountDisabled같은 ADSI 속성과 IADsUser.SetPassword같은 메서드에도 적용됩니다.
- IADs.SetInfo 호출하여 새 사용자를 서버에 커밋합니다.
새 사용자 계정이 만들어지면 기본적으로 사용하지 않도록 설정됩니다. 계정을 수동으로 또는 프로그래밍 방식으로 사용하도록 설정해야 합니다. 사용자 계정을 프로그래밍 방식으로 사용하도록 설정하려면 userAccountControl 특성에서 ADS_UF_ACCOUNTDISABLE 플래그를 제거합니다.
새 사용자 계정을 만들 때 계정에 대한 userAccountControl 특성에는 계정에 암호가 필요하지 않음을 나타내는 UF_PASSWD_NOTREQD 플래그가 자동으로 설정됩니다. 계정을 만든 도메인의 보안 정책에 모든 사용자 계정에 대한 암호가 필요한 경우 계정에 대한 userAccountControl 특성에서 UF_PASSWD_NOTREQD 플래그를 제거해야 합니다.
관련 항목
-
사용자 만들기 위한 예제 코드