Como outros já mencionaram, usar o atributo GUID da conta do Active Directory do usuário é uma ótima ideia. Se você quiser legibilidade humana, no entanto, você deve dar uma olhada nos documentos para o Interface iADsNameTranslate . Você pode obter um monte de milhagem para lidar traduzindo os vários nomes possíveis de uma conta do AD (GUID, SID, samAccountName, displayName, DN, etc).
Exemplo:
Option Explicit
' Constants for the iADsNameTranslate object. (from http://msdn.microsoft.com/en-us/library/aa772267(VS.85).aspx)
Const ADS_NAME_TYPE_NT4 = 3
Const ADS_NAME_TYPE_GUID = 7
Const ADS_NAME_INITTYPE_GC = 3
Dim objNameTranslate
Dim strUserGUID
' Create a nametranslate object and init to talk to a global catalog server
Set objNameTranslate = CreateObject("NameTranslate")
objNameTranslate.Init ADS_NAME_INITTYPE_GC, ""
' We're looking for an "NT 4" account name type-- aka a samAccountName
objNameTranslate.Set ADS_NAME_TYPE_NT4, "DOMAIN\username"
' Translate into the user's GUID
strUserGUID = objNameTranslate.Get(ADS_NAME_TYPE_GUID)
WScript.Echo strUserGUID
Isso não é apenas para contas de usuário. Cada objeto no AD tem um GUID, portanto, se você precisar "lembrar" um DN para, digamos, uma base de pesquisa LDAP (ou um grupo, ou qualquer coisa), use o GUID de modo que ele seja movido no AD sobre algum administrador saindo e reorganizando UOs, ou renomeando grupos) seu "ponteiro" para ele não quebrará (porque o GUID nunca muda).