Kategori: YETKİ VE GÜVENLİK

Veritabanı owner’ını değiştirmek(ALTER AUTHORIZATION)

Veritabanı owner’ları eğer sizin ya da kurumunuzda çalışan diğer dba arkadaşlarınızın kullanıcı hesabı ise veritabanı owner’larını sa olarak değiştirmek isteyebilirsiniz. Çünkü veritabanı owner’ı olan kişi şifresini değiştirdiğinde aşağıdaki gibi hatalar alabilirsiniz.   SSPI handshake failed with error code 0x8009030c, state 14 while establishing a connection with integrated security; the connection has been closed. Reason: AcceptSecurityContext […]

Objeleri Şifrelemek(SP,Function,View)

Stored Procedurler, Functionlar ve Viewler genellikle her uygulamanın veritabanı katmanında kullandığı objelerdir. Bazı durumlarda çeşitli sebeplerle bu objelerin text kısımlarının şifrelenmesine ihtiyaç duyulabilir. Bir örnek üzerinden bu 3 obje tipini nasıl şifreleyeceğimizi inceleyelim.   AdventureWorks2014 veritabanındaki HumanResources.vEmployee view’inin aşağıdakin gibi create script’ini alıyoruz.     CREATE VIEW kısmından sonra aşağıdaki gibi WITH ENCRYTION ekliyoruz. View’in […]

Kolon Seviyesinde Şifreleme(Column Level Encryption)

SQL Server’da önemli bir tablonuzdaki önemli bir kolonunuzun içeriğini kimsenin görmesini istemeyebilirsiniz. Böyle bir durumda bu kolonu şifreli hale getirebilirsiniz. Kolonu şifreli hale getirmek için öncelikle ilgili veritabanında aşağıdaki script yardımıyla master key oluşturmalısınız. Örneğimizde test amaçlı olduğu için basit bir şifre verdik. Production ortama uygularken daha karmaşık bir şifre vermelisiniz. USE AdventureWorks2014 GO CREATE […]

TDE(Transparent Data Encryption) Nedir ve Nasıl Oluşturulur

TDE veritabanını şifrelemek için kullanılır. TDE ile Data ve Log dosyaları gerçek zamanlı olarak page seviyesinde şifrelenir ve bu esnada uygulamalarda bir kesinti olmaz. TDE ile ilgili en çok akla gelen soru şudur: “veritabanı TDE kullanılarak şifrelendiğinde instance üzerinde yetkisi olan bir DBA ya da başka bir kullanıcı bu veritabanını görebilir mi?” Evet görebilir.   […]

Loginlerin, instace üzerindeki yetkili olmadığı veritabanı isimlerini görmesini engellemek

Konsolide bir SQL Server ortamı kullanıyorsanız bir instance üzerinde birden fazla uygulamaya ait veritabanı ve login var demektir. Her login instance’a bağlandığında default olarak diğer veritabanlarını görür fakat yetki vermediyseniz veritabanının içindeki hiçbir şeyi görüntüleyemez. Login’lerin kendilerine ait olmayan veritabanlarının isimlerini görmeside bir güvenlik açığıdır. Bu yüzden loginlerden başkalarının veritabanlarının isimlerini görebilme yetkisini almanız gerekir. […]