TABLE OF CONTENTS
USE master GO SELECT DISTINCT p.name AS [loginname] , p.type , p.type_desc , p.is_disabled, s.sysadmin, CONVERT(VARCHAR(10),p.create_date ,101) AS [created], CONVERT(VARCHAR(10),p.modify_date , 101) AS [update] FROM sys.server_principals p JOIN sys.syslogins s ON p.sid = s.sid JOIN sys.server_permissions sp ON p.principal_id = sp.grantee_principal_id WHERE p.type_desc IN (‘SQL_LOGIN’, ‘WINDOWS_LOGIN’, ‘WINDOWS_GROUP’) — Logins that are not process logins AND p.name NOT LIKE ‘##%’ AND (s.sysadmin = 1 OR sp.permission_name = ‘CONTROL SERVER’) ORDER BY p.nameDatabase sahipleri db_owner rolüyle eşlenen tüm kullanıcıları listelemek için aşağıdaki sorguyu çalıştırın.
exec sp_msForEachDb ‘ use [?] select db_name() as [database_name], r.[name] as [role], p.[name] as [member] from sys.database_role_members m join sys.database_principals r on m.role_principal_id = r.principal_id join sys.database_principals p on m.member_principal_id = p.principal_id where r.name = ”db_owner”’Kullanıcı izinleri nasıl azaltılır? Bu ayrıcalıklara sahip olmaları gerekmiyorsa, listelenen kullanıcılar için daha düşük izin seçin. Mümkün olduğunda kullanıcıyı sysadmin sunucu rolünden kaldırın. Kullanıcılara veritabanındaki herhangi bir tabloyu okuma ve yazma hakkı vermek için db_datareader ve db_datawriter rollerini kullanın. Birkaç seçenek arasında, SQL Server Management Studio’yu kullanarak mevcut bir kullanıcının rollerini düzenleyebilirsiniz:
- İlk olarak, Güvenlik, Girişler’e gidin ve bir girişe sağ tıklayın
- Kullanıcı Eşleme sekmesinde, her veritabanı için rollerden oturum açmayı kaldırın (işaretini kaldırın) – Kullanıcıların sorgularını yapmak için bir tür erişime sahip olduğundan emin olun.
Size ve Veritabanlarınıza Yardımcı Olmak İçin Bekliyoruz!
İletişime geçerek hemen destek alabilirsiniz.
İletişim