SQL Server'da TRUSTWORTHY veritabanı ayarını kullanma yönergeleri

Microsoft SQL Server örneğinin veritabanına ve veritabanı içindeki içeriklere güvenip güvenmiyor olduğunu göstermek için TRUSTWORTHY veritabanı ayarını kullanabilirsiniz. Varsayılan olarak, bu ayar OFF olarak ayarlanmıştır. Ancak ALTER DATABASE deyimini kullanarak bunu ON olarak değiştirebilirsiniz. Veritabanı sunucuya ekli olduğunda ve aşağıdaki koşullar doğru olduğunda mevcut olabilir bazı tehditleri azaltmak için bu ayarı OFF olarak bırakmanız önerilir:

  • Veritabanı, kötü amaçlı derlemeler içeriyor ve bu EXTERNAL_ACCESS GÜVENİSİ OLMAYAN izin ayarına sahip. Daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) web sitesini ziyaret edin:

    CLR Tümleştirme Güvenliği
     

  • Veritabanı, yönetimsel güvenileri olan bir grubun üyesi olan kullanıcılar olarak yürütülecek şekilde tanımlanan kötü amaçlı modüller içerir. Daha fazla bilgi için şu MSDN web sitesini ziyaret edin: EXECUTE AS Kullanarak Veritabanını

    Kimliğe Bürünme Süresini Uzatma

Yükleme dosyasının doğru sürümü ve sağlaması olduğunda Algıla ve Onar bu dosyanın üzerine kopyalamaz. Varsayılan olarak, MSDB veritabanı için TRUSTWORTHY ayarı ON olarak ayarlanmıştır. Bu ayarın varsayılan değerinden değiştirilmesi, MSDB veritabanını kullanan SQL Server bileşenleri tarafından beklenmeyen davranışa neden olabilir.

TRUSTWORTHY ayarı AÇıK olarak ayarlanmışsa ve veritabanı sahibi sysadmin grubu gibi yönetim kimlik bilgilerine sahip bir grubun üyesi ise, veritabanı sahibi SQL Server örneğinin güvenliğini tehlikeye atabilecek güvenli olmayan derlemeler oluşturabilir ve çalıştırabilirsiniz.

Ek Bilgi

İnternet servis sağlayıcısı (ISS) ortamında (örneğin, web barındırma hizmetlerinde), her müşterinin kendi veritabanını yönetmesine izin verilir ve sistem veritabanlarına ve diğer kullanıcı veritabanlarına erişimi kısıtlanır. Örneğin, yarışan iki şirketin veritabanları aynı ISS tarafından barındırıldı ve SQL Server'ın aynı örneğinde bulunuyor olabilir. Veritabanı ilk örneğine ekli olduğunda kullanıcı veritabanına tehlikeli bir kod eklenebilir ve veritabanı dağıtıldığında ISS örneğinde kod etkinleştirilebilir. Bu durum, veritabanı arası erişimi denetlemeyi çok önemli yapar.

Her veritabanının sahibi ve yöneten aynı genel varlıksa, veritabanı arası Hizmet Aracı iletişimi gibi uygulamaya özgü bir özellik gerekli olmadığı sürece, veritabanıyla "güven ilişkisi" oluşturmak da iyi bir uygulama değildir. Veritabanları arasında güven ilişkisi kurmak için, birden çok veritabanı sahipliği zinciri oluşturularak veya TRUSTWORTHY özelliği kullanılarak örneğin veritabanı güvenilir olarak işaretlenmesi kullanılabilir. sys.Theis_trustworthy_on veritabanları kataloğu görünümünün güvenilir sütununu içeren sütun, veritabanının TRUSTWORTHY bit kümesi olup olmadığını gösterir.

Veritabanı sahipliği ve güveni için en iyi uygulamalar şunlardır:

• Veritabanları için ayrı sahiplere sahip olun. Veritabanlarının tümleri sistem yöneticisine ait olması gerekir.
• Her veritabanı için sahip sayısını sınırla.
• Confer trust selectively.
• Birden çok veritabanı tek bir ünitede dağıtınmadıkça, Veritabanı Arasında Sahiplik Zinciri oluşturma ayarını OFF olarak bırakın.
• TRUSTWORTHY özelliğini kullanmak yerine kullanımı seçmeli güvene geçirme.

Aşağıdaki kod örneği, trustworthy bit ON olan ve veritabanı sahibi sysadmin sunucu rolüne ait olan veritabanlarının listesini elde etmek için kullanılabilir.

DBOWNER SUSER_SNAME(owner_sid) SEÇIN, D.NAME VERITABANıADı OLARAK ADLANDıR'ı SEÇIN

FROM sys.server_principals r

INNER JOIN sys.server_role_members m ON r.principal_id = m.role_principal_id

INNER JOIN sys.server_principals p ON

p.principal_id = m.member_principal_id

inner join sys.databases d on suser_sname(d.owner_sid) = p.name

WHERE is_trustworthy_on = 1 AND d.name NOT IN ('MSDB') and r.type = 'R' and r.name = N'sysadmin'

MSDB veritabanının TRUSTWORTHY özelliğini belirlemek için aşağıdaki sorguyu çalıştırabilirsiniz:

select name, TrustWorthySetting =
büyük/is_trustworthy_on
when 1 then 'TrustWorthy setting is ON for MSDB'
ELSE 'TrustWorthy setting is OFF for MSDB'
END
sys.databases'dan (sys.databases database_id = 4 

Bu sorguDA TRUSTWORTHY özelliğinin OFF olarak ayar olduğu gösteriyorsa, trustworthy özelliğini varsayılan değerine ayarlamak için aşağıdaki sorguyu çalıştırabilirsiniz.

ALTER DATABASE MSDB SET güvenilir ON

Git

Aşağıdaki tablo, SQL Server örneğiniz ve kuralın değerlendirilen SQL Server ürün sürümleri üzerinde bu koşulu otomatik olarak denetlemeye yönelik ürünler veya araçlar hakkında daha fazla bilgi sağlar.

Kural yazılımı

Kural başlığı

Kural açıklaması

Kuralın değerlendir olduğu ürün sürümleri

System Center Advisor

SQL Server msdb sistem veritabanı güvenilir seçeneği OFF olarak ayarlanmış

System Center Advisor, SQL Server'ın bu örneğinde msdb sistem veritabanı için Güvenilir veritabanı seçeneğinin OFF olarak ayar olup olmadığını denetler. OFF olarak ayarlanırsa, danışman bir uyarı üretir. Danışman uyarısının "Toplanan Bilgiler" bölümünde sağlanan bilgileri gözden geçirin ve bu makalede sağlanan çözümlerini izleyin.

SQL Server 2008
SQL Server 2008
R2

SQL Server 2008 R2 En İyi Yöntem Çözümleyicisi (SQL Server 2008 R2 BPA)

Güvenilir Bit

SQL Server 2008 R2 En İyi Yöntem Çözümleyicisi (SQL Server 2008 R2 BPA), veritabanının TRUSTWORTHY özelliği AÇıK olarak ayar algılar ve veritabanı sahibinin sysadmin sunucu grubuna üye olup olmadığını algılamak için kural sağlar. BPA aracını çalıştırıyorsanız ve "Altyapı - Güvenilir Bit" başlıklı bir uyarı alırsanız, trustworthy bit kümesine sahip veritabanını tanımlamak ve bu ayarı OFF olarak değiştirmek için önceki bölümde listelenen sorguyu çalıştırmanız önerilir.

SQL Server 2008
SQL Server 2008
R2

SQL Server 2012 En İyi Yöntem Çözümleyicisi (SQL Server 2012 BPA)

Güvenilir Bit

SQL Server 2012 En İyi Yöntem Çözümleyicisi (SQL Server 2012 BPA), veritabanının TRUSTWORTHY özelliği ON olarak ayar algılar ve veritabanı sahibinin sysadmin sunucu grubuna üye olup olmadığını algılamak için kural sağlar. BPA aracını çalıştırıyorsanız ve "Altyapı - Güvenilir Bit" başlıklı bir uyarı alırsanız, trustworthy bit kümesine sahip veritabanını tanımlamak ve bu ayarı OFF olarak değiştirmek için önceki bölümde listelenen sorguyu çalıştırmanız önerilir.

SQL Server 2012

Daha fazla yardıma mı ihtiyacınız var?

Yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Microsoft Insider 'a katılın

Bu bilgi yardımcı oldu mu?

Geri bildiriminiz için teşekkür ederiz!

Geri bildiriminiz için teşekkürler! Office destek temsilcilerimizden biriyle görüşmeniz yararlı olabilir.

×