Я понимаю, что имя пользователя домена зарегистрировано в группе AD?
Вы должны иметь в виду, что пользователь может находиться в нескольких группах AD, и каждая из них может быть каким-то образом отображена в базе данных, которая может бытьнемного грязноТакже это означает, что вам нужно что-то с несколькими результатами:)
Попробуйте:
select * from sys.server_principals where type_desc = 'WINDOWS_GROUP' and is_member(name) = 1
Я думаю, что он должен правильно захватывать все учетные записи Windows Group, которые будут связаны с конкретными пользователями.После этого вы можете присоединиться к нему для пользователей базы данных, т. Е.:
Select u.name from YourDB.sys.syslogins l
inner join YourDB.sys.sysusers u
on l.sid = u.sid
where l.loginname = ANY (select * from sys.server_principals where type_desc = 'WINDOWS_GROUP' and is_member(name) = 1)
Следует помнить, что, возможно, вам придется обрабатывать целые множества, а не отдельные значения.