|
|
|
|
|
 |
SQL Habergrubu |
|
 |
|
En Son SQL Server ile İlgili Okuduğum Kitaplar |
- Accelerated SQL Server 2008 - Apress (İngilizce)
- Designing and Optimizing Data Access by Using SQL Server 2005 - MS Press (İngilizce)
- Microsoft SQL Server 2005 Database Solutions Design - Wiley Publishing (İngilizce)- Optimizing and Maintaining a Database Administration Solution by Using SQL Server 2005 - MS Press (İngilizce)- Designing a Database Server Infrastructure Using SQL Server 2005 - MS Press (İngilizce)- SQL Server 2005 Implementation and Maintenance - MS Press (İngilizce)
- SQL Server 2005 Administrators Companion - MS Press (İngilizce) |
|
|
|
SQL Server 2008: Güvenlik ile
ilgili değişiklikler
|
Son güncelleme tarihi: 02 Temmuz 2008
Merhaba arkadaşlar,
SQL Server 2008' in
güvenlik ile ilgili politikalarının bazılarında, SQL Server' ın önceki versiyonlarına
göre bazı değişiklikler oldu. Bu yazımda sizlere bu değişikliklerden bahsedeceğim.
Bildiğiniz gibi SQL Server 2005, önceki versiyonlarına göre çok daha güvenliydi.
Gerek tasarım olarak, gerek kurulumda gerekse varsayılan ayarlarıyla. SQL Server
2008' de bu güvenlik tedbirleri daha da sıkılaştırılarak bir adım öteye gidilmiş.
Çok ahım şahım değişiklikler değil bunlar, fakat bilmenizde ve yeri ve zamanı geldiğinde
hesaba katmanızda yarar var. Bu arada, burada bahsedeceğim güvenlik ile ilgili olan
değişiklikler, SQL Server' ın eski versiyonlarındaki özelliklere göre yapılan değişikliklerdir.
SQL Server 2008' deki güvenlik ile ilgili yeni özelliklere, farklı makalelerde değineceğim.
Peki nedir bu değişiklikler?
- SQL Server 2008 Setup' ta yükleme veya sürüm yükseltme esnasında "sa" hesabının
adını değiştirebilme.
- SQL Server' ın eski versiyonlarında BUILTIN\Administrators Windows Grubu, SQL
Server System Administrators "sysadmin" sunucu sabit rolüne eklenirdi. SQL Server
2008' de böyle olmayacak, yani Windows Yöneticileri doğrudan SQL Server Sistem Yöneticileri
olmayacak artık.
- SQL Server tarafından oluşturulan "SQLServer2005MSSQLUser$-BİLGİSAYARADI-$INSTANCEADI"
gibi Windows Gruplarına artık doğrudan SQL Server' a erişim izinleri verilmeyecek.
Bunun yerine bu haklar, SQL Server servislerini başlatmak için kullanılan Windows
hesabına verilecek.
- Surface Area Configuration aracı SQL Server 2008' de yok, yani kaldırıldı. Bunun
yerine İlke Temelli Yönetim (Policy-Based Management) özelliği ve Configuration
Manager' daki değişiklikler kullanılabilecek.
- Kerberos desteği genişletildi. TCP\IP' nin yanında, artık Named Pipes ve Shared
Memory' yi de kapsıyor.
SQL Server "sa" hesabının adının değiştirilmesi:
"sa" hesabı varsayılan SQL Login' idir. "sysadmin" üyesidir ve bu değiştirilemez.
Bu role üye olan bir Login, içinde bulunduğu SQL Server Instance' ında tüm yetkilere
sahiptir. Bunu bilen korsanlar, sisteminize girmeye çalışacağı zaman ilk önce "sa"
hesabına saldırırlar. Bir çok saldırı durumunda daha sonra "admin" isimli bir hesap
denediklerini gördüm. Aslında SQL Server' da varsayılan olarak "admin" isminde bir
hesap yoktur. Ama bildiğiniz gibi alışkanlıklarımız, güvenlik konusuna gelince en
kırılgan noktamızdır. İnsanlar alışkanlıktan dolayı genelde "admin" isminde bir
Login oluştururlar ve bunu da "sysadmin" rolünün bir üyesi yaparlar. Bu nedenle
de korsanlar, SQL Server Instance' ınıza saldırdıklarında ilk önce olduğunu varsaydıkları
bu Login' leri kırmaya çalışırlar.
"sa" hesabının adını değiştirmeniz ve bu hesaba güçlü bir şifre vermeniz (ki güçlü
şifre denirken kastedilen, şifrenin içinde büyük-küçük harflerin, rakamların ve
işaretlerin kullanılmasıdır) korsanların sisteminize en güçlü Login' lerle girmelerini
engelleyici tedbirlerden olacaktır.
Tabi ki bu değişiklikleri yapmadan önce sisteminizi, uygulamalarınızı, Function'
ları, Script' leri, CLR Assembly' leri gibi şeyleri de tekrar gözden geçirmeniz
gerekebilir. "sa" hesabına bağlı uygulamalarınız, bu hesap ismini değiştirdiğiniz
için artık çalışmayabilirler. Bu nedenle gerekli değişiklikleri uygulamalarınızda
da yapmanız gerekebilir.
Mümkün olan her zaman Windows Authentication kullanmanız önerilir, ama öyle durumlar
olur ki SQL Authentication kullanmanız gerekebilir. İşte böyle durumlarda yukarıdaki
paragraflarda değindiğim tedbirleri almanızda büyük yarar vardır.
"sa" hesabı hakkında daha fazla bilgi için
buraya tıklayın.
Windows Yerel Gruplarındaki değişiklik:
SQL Server' ın kurulması esnasında bazı Windows yerel grupları oluşturulur. SQL
Server' ın, SQL Server 2008' den önceki versiyonlarında SQL Server servislerinin
başlatılması için kullanılan servis hesapları bu yerel gruplara ekleniyorlardı.
Servis hesabı ve Windows yerel gruplarına, işletim sistemi dosyaları ve Windows
sistemi üzerinde haklar veriliyordu. Bu hesap ve gruplara SQL Server' da da bazı
haklar veriliyordu.
SQL Server' ın yüklenmesi veya sürüm yükseltmesi esnasında seçtiğiniz özelliklere
göre oluşturulan Windows yerel grupları aşağıdakilerden oluşur:
- SQL Server 2000
- OLAP Administrators
- SQL Server 2005
- SQLServer2005DTSUser$BİLGİSAYARADI
- SQLServer2005MSFTEUser$BİLGİSAYARADI$INSTANCEADI
- SQLServer2005MSOLAPUser$BİLGİSAYARADI$INSTANCEADI
- SQLServer2005MSSQLServerADHelperUser$ BİLGİSAYARADI
- SQLServer2005MSSQLUser$ BİLGİSAYARADI$INSTANCEADI
- SQLServer2005NotificationServicesUser$BİLGİSAYARADI
- SQLServer2005ReportingServicesWebServiceUser$BİLGİSAYARADI$INSTANCEADI
- SQLServer2005ReportServerUser$ BİLGİSAYARADI$INSTANCEADI
- SQLServer2005SQLAgentUser$ BİLGİSAYARADI$INSTANCEADI
- SQLServer2005SQLBrowserUser$ BİLGİSAYARADI
SQL Server 2008' de de bu Windows yerel grupları oluşturulacak, ama artık bu gruplara
SQL Server içinde haklar verilmeyecek. Sadece, doğru Erişim Kontrol Listesi (Access
Control List), SQL Server Motoru ve diğer özellikler için işletim sistemi hakları
etkinleştirmesi amacıyla kullanılacaklar. Ancak SQL Server Setup boyunca servis
hesapları olarak seçilen hesaplara SQL Server' da haklar atanacak.
Bir başka deyişle, Windows yerel grupları artık sadece işletim sistemi görevleri
için kullanılacaklar. SQL Server servisleri için seçilen hesaplar da SQL Server
ve veritabanı işlemleri için kullanılacaklar. Bu konuda daha fazla bilgi için
buraya tıklayın.
Surface Area Configuration aracı:
Bu araç SQL Server 2005 ile birlikte geldi ve bu aracı, SQL Server' ın bazı özelliklerini
açmak ve kapatmak için kullanıyoruz.
SQL Server 2008' de ise Surface Area Configuration aracı kaldırıldı. Bunun yerine
çok daha gelişmiş bir özellik olan Policy-Based Management özelliğini kullanacağız.
Bu konuda SQL Server' ın sanırım Kasım CTP' sinde bir örnek yaparak bunu yayınlamıştım.
Bu makalemi okumak için
buraya tıklayın. Bu özellik
kısaca size SQL Server bileşenleri için ilkeler tanımlamanızı ve ayrıntılı bir şekilde
bu ilkeleri SQL Server içindeki Principal ve Rollere uygulamanızı sağlıyor. Bu konuda
daha fazla bilgi için
buraya tıklayın.
Surface Area Configuration aracındaki bağlantılarla ilgili
ayarları da -SQL Server 2005' te de yapabildiğimiz gibi- SQL Server Configuration
Manager' da yapabilirsiniz. Örnek vermek gerekirse, TCP\IP, Named Pipes vb. protokollerin
etkinleştirilip kapatılması gibi...
Kerberos Authentication:
SQL Server 2008' den itibaren, Kerberos Authentication desteği Named Pipes ve Shared
Memory protokollerini de kapsayacak şekilde genişletildi. Buna ek olarak Kerberos,
Windows Active Directory olmadan da kullanılabilecek. Bu konuda daha fazla bilgi
için
buraya tıklayın.
Ekrem Önsoy
Kaynak: Bu yazıyı yayınlarken Books Online' dan yararlandım.
|
|
Anasayfa |
|