ADSI исключить builtin-записи

Georgie
Дата: 17.02.2010 13:30:35
EXEC sp_addlinkedserver 'ADSI','Active Directory Services 2.5','ADSDSOObject','adsdatasource'
GO

SELECT [objectSid], [displayName], [sAMAccountName],[cn],[userAccountControl]
FROM OPENQUERY(ADSI,'SELECT objectSid , displayName, sAMAccountName,cn,userAccountControl
					 FROM ''LDAP://DC=aaa,DC=bbb,DC=ccc''
					 WHERE objectCategory = ''Person'' AND objectClass = ''user'' AND
						   memberof<>''CN=NoAccessFor1C'''
			  )
WHERE [userAccountControl] &2 = 0 AND --активные записи
	  [userAccountControl] &16 = 0    --незаблокированные записи

ORDER BY [displayName]
go 

EXEC sp_dropserver @server = 'ADSI'

Подскажите, пожалуйста, как исключить сабж. Обратил внимание на то, что значение userAccountControl для таких записей равно 66080. Справедливо ли утверждение, что все builtin-записи все имеют такой userAccountControl? Если нет, то как их можно отфильтровать?
Glory
Дата: 17.02.2010 13:35:58
Georgie
Справедливо ли утверждение, что все builtin-записи все имеют такой userAccountControl?

Справедливо. Но не только эти учетные записи могут иметь такое значение в userAccountControl
Потому что 66080 - это всего лишь DONT_EXPIRE_PASSWORD+NORMAL_ACCOUNT+PASSWD_NOTREQD
Georgie
Дата: 17.02.2010 14:08:05
Спасибо
Glory
Дата: 17.02.2010 14:48:09
Мне как-то смутно помнится, что все builtin-учетки должны иметь какую то общую часть sid-a
Но могу ошибаться