2019-12-06

Tüm Login ve Tüm Windows Group Altındaki Tüm Loginlerin Listesini Alma

/*
Bir instance altındaki tüm login'leri ve Windows group altındaki tüm kullanıcıların listesini aşağıdaki T-SQL bulabilirsiniz
*/



declare  @tmploginlist table(
LoginName    nvarchar(256),
[type]     varchar(8),
[privilege]    varchar(8),
[mapped login name]  nvarchar(256),
WindowsGroupName    nvarchar(256)
)

 declare @WindowsGroupName nvarchar(256)

 --SQL/Windows Logins
 insert into @tmploginlist
select  name,'user','user',name,''
from sys.server_principals
where  type in ('S','U')
 declare c1 cursor for

 --Windows groups
   select name
   from sys.server_principals
   where type =  'G' 
  open c1
  fetch next from c1 into @WindowsGroupName
  while @@fetch_status <> -1
    begin
     insert into @tmploginlist(LoginName,[type],[privilege],[mapped login name],WindowsGroupName)
        exec xp_logininfo @acctname = @WindowsGroupName,@option = 'members'    
    fetch next from c1 into @WindowsGroupName
    end
  close c1
  deallocate c1
select LoginName,WindowsGroupName
from @tmploginlist

Hiç yorum yok:

.::YASAL UYARI::.

©2004-2020 Mehmet GÜZEL, http://www.mehmetguzel.net/ & http://www.mehmetguzel.com/

Site içeriği kaynak gösterilmek koşuluyla yayınlanabilir. Yazılan yazı ve yorumlar sadece yazı ve yorum sahiplerini bağlar.