Maystyle :
Admin : New post
Guestbook
Local
media
Catergories
Recent Articles
Recent Comments
Recent Trackbacks
Calendar
Tag
Archive
Link
Search
 
  GUID SID 값 확인 하기 
작성일시 : 2008. 3. 28. 13:15 | 분류 : Windows Server/Active Directory

GUID 와 SID 는 특정 Object에 대한 구분을 위해 Windows  내부에서 사용하는 ID 입니다.
GUID의 경우 객체에 할당이 되면 절대 변하지 않지만 SID의 경우 포레스트 에서 도메인간 이동이 있을때 변경이 있을 수 있습니다.
Windows 에서 SID를 사용하는 이유는 NT4와의 호환성 때문입니다.

[Name Format]

Constant

Value

Description

ADS_NAME_TYPE_1779

1

Name format as specified in RFC 1779. For example, "CN=Jeff Smith,CN=users,DC=Fabrikam,DC=com".

ADS_NAME_TYPE_CANONICAL

2

Canonical name format. For example, Fabrikam.com/Users/Jeff Smith".

ADS_NAME_TYPE_NT4

3

Account name format used in Windows NT 4.0. For example, "Fabrikam\JeffSmith".

ADS_NAME_TYPE_DISPLAY

4

Display name format. For example, "Jeff Smith".

ADS_NAME_TYPE_DOMAIN_SIMPLE

5

Simple domain name format. For example, "JeffSmith@Fabrikam.com".

ADS_NAME_TYPE_ENTERPRISE_SIMPLE

6

Simple enterprise name format. For example, "JeffSmith@Fabrikam.com".

ADS_NAME_TYPE_GUID

7

Global Unique Identifier format. For example, "{95ee9fff-3436-11d1-b2b0-d15ae3ac8436}".

ADS_NAME_TYPE_USER_PRINCIPAL_NAME

9

User principal name format. For example, "JeffSmith@Fabrikam.com".

ADS_NAME_TYPE_CANONICAL_EX

10

Extended canonical name format. For example, "Fabrikam.com/Users Jeff Smith".

ADS_NAME_TYPE_SERVICE_PRINCIPAL_NAME

11

Service principal name format. For example, "www/www.fabrikam.com@fabrikam.com".

[GUID 값 확인 하기]
위의 Name Format 을 알고 있으면 쉽게 사용자의 GUID를 알 수 있습니다.

Const ADS_NAME_INITTYPE_GC = 3
Const ADS_NAME_TYPE_NT4 = 3
Const ADS_NAME_TYPE_GUID = 7

strUserName = "mskim\administrator"

Set objTranslator = CreateObject("NameTranslate")

objTranslator.Init ADS_NAME_INITTYPE_GC, ""
objTranslator.Set ADS_NAME_TYPE_NT4, strUserName

strUserGUID = objTranslator.Get(ADS_NAME_TYPE_GUID)

Wscript.Echo strUserGUID

[SID 값 확인 하기]

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set objAccount = objWMIService.Get _
    ("Win32_UserAccount.Name='administrator',Domain='mskim'")
Wscript.Echo objAccount.SID

[참고]

http://www.microsoft.com/technet/scriptcenter/resources/qanda/dec04/hey1203.mspx
http://www.microsoft.com/technet/scriptcenter/resources/qanda/aug07/hey0822.mspx
http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/distrib/dsce_ctl_yicc.mspx?mfr=true

|