SQL Server’da Yükseltilmiş İzinlere Sahip Kullanıcıları Neden Önemsemelisiniz?

SQL Server’da Yükseltilmiş İzinlere Sahip Kullanıcıları Neden Önemsemelisiniz? Microsoft SQL Server tarafından sunulan güvenlik modeli, tüm güvenlik en iyi uygulamaları izlendiğinde yüksek düzeyde yapılandırılabilir ve çok sağlamdır. Bunu neden önemsemelisiniz? En az ayrıcalıklı kullanıcı hesabı (LUA) yaklaşımı, güvenlik tehditlerine karşı koymak için savunma amaçlı, derinlemesine bir stratejinin önemli bir parçasıdır. LUA, bir kullanıcıya yalnızca görevini…

October 6, 2021 by Aryasoft IT

SQL Server’da Yükseltilmiş İzinlere Sahip Kullanıcıları Neden Önemsemelisiniz?

Microsoft SQL Server tarafından sunulan güvenlik modeli, tüm güvenlik en iyi uygulamaları izlendiğinde yüksek düzeyde yapılandırılabilir ve çok sağlamdır.

Bunu neden önemsemelisiniz?

En az ayrıcalıklı kullanıcı hesabı (LUA) yaklaşımı, güvenlik tehditlerine karşı koymak için savunma amaçlı, derinlemesine bir stratejinin önemli bir parçasıdır.

LUA, bir kullanıcıya yalnızca görevini yerine getirmesi için gereken ayrıcalıkların verilmesi gerektiğini söylüyor – ne daha fazlası ne daha azı.

Bu, birisinin yanlışlıkla bir nesneyi yeniden adlandırması veya düşürmesi gibi gelecekteki birçok sorunu önleyebilecek en iyi uygulamadır.

Microsoft belgelerinde SQL Server veritabanı altyapısı izinleri hakkında daha fazla bilgi edinebilirsiniz.

SQL Server’da geniş kapsamlı izinlere sahip kullanıcıları nasıl bulabiliriz?
SysAdmin kullanıcıları
Sistem yöneticileri olan veya GRANT KONTROL SUNUCUSU olan tüm kullanıcıları listelemek için aşağıdaki sorguyu çalıştırın.

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.name

Database 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:

  1. İlk olarak, Güvenlik, Girişler’e gidin ve bir girişe sağ tıklayın
  2. 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!