Azure SQL Veritabanı güvenliğini coğrafi geri yükleme veya yük devretme gerçekleştirecek şekilde yapılandırma ve yönetme

Şunlar için geçerlidir: Azure SQL Veritabanı

Bu makalede, etkin coğrafi çoğaltma ve yük devretme gruplarını yapılandırmak ve denetlemek için kimlik doğrulama gereksinimleri açıklanmaktadır. Ayrıca, ikincil veritabanına kullanıcı erişimini ayarlamak için gereken adımları sağlar. Son olarak, coğrafi geri yükleme kullanıldıktan sonra kurtarılan veritabanına erişimin nasıl etkinleştirileceği de açıklanır. Kurtarma seçenekleri hakkında daha fazla bilgi için bkz . İş Sürekliliğine Genel Bakış.

Kapsanan kullanıcılar ile olağanüstü durum kurtarma

Veritabanındaki oturum açma bilgilerine eşlenmesi gereken geleneksel kullanıcılardan master farklı olarak, kapsanan bir kullanıcı tamamen veritabanı tarafından yönetilir. Bunun iki avantajı vardır. Olağanüstü durum kurtarma senaryosunda, kullanıcılar yeni birincil veritabanına bağlanmaya devam edebilir veya veritabanı ek yapılandırma olmadan coğrafi geri yükleme kullanılarak kurtarılabilir, çünkü kullanıcılar veritabanı tarafından yönetilebilir. Oturum açma açısından bu yapılandırmanın olası ölçeklenebilirlik ve performans avantajları da vardır. Daha fazla bilgi için bkz. Bağımsız Veritabanı Kullanıcıları - Veritabanınızı Taşınabilir Hale Getirme.

Önemli olan, olağanüstü durum kurtarma sürecini büyük ölçekte yönetmenin daha zor olmasıdır. Aynı oturum açma bilgilerini kullanan birden çok veritabanınız varsa, birden çok veritabanındaki bağımsız kullanıcıları kullanarak kimlik bilgilerinin korunması, kapsanan kullanıcıların avantajlarını olumsuz etkileyebilir. Örneğin, parola döndürme ilkesi, veritabanında bir kez master oturum açma parolasını değiştirmek yerine değişikliklerin birden çok veritabanında tutarlı bir şekilde yapılmasını gerektirir. Bu nedenle, aynı kullanıcı adı ve parolayı kullanan birden çok veritabanınız varsa, kapsanan kullanıcıların kullanılması önerilmez.

Oturum açma bilgilerini ve kullanıcıları yapılandırma

Oturum açma bilgilerini ve kullanıcıları (kapsanan kullanıcılar yerine) kullanıyorsanız, veritabanında aynı oturum açma bilgilerinin mevcut master olduğundan emin olmak için ek adımlar uygulamanız gerekir. Aşağıdaki bölümlerde ilgili adımlar ve dikkat edilmesi gereken ek noktalar özetlenmiştir.

Not

Veritabanlarınızı yönetmek için Microsoft Entra ID'den (eski adıYla Azure Active Directory) oluşturulan oturum açma bilgilerini kullanmak da mümkündür. Daha fazla bilgi için bkz . Azure SQL oturum açma bilgileri ve kullanıcıları.

İkincil veya kurtarılan veritabanına kullanıcı erişimini ayarlama

İkincil veritabanının salt okunur ikincil veritabanı olarak kullanılabilmesi ve yeni birincil veritabanına veya coğrafi geri yükleme kullanılarak kurtarılan veritabanına uygun erişimin sağlanması için, master kurtarma işleminden önce hedef sunucunun veritabanının uygun güvenlik yapılandırmasına sahip olması gerekir.

Her adım için belirli izinler bu konunun ilerleyen bölümlerinde açıklanmıştır.

Coğrafi çoğaltmayı yapılandırmanın bir parçası olarak coğrafi çoğaltma ikinciline kullanıcı erişimi hazırlama işlemi gerçekleştirilmelidir. Coğrafi olarak geri yüklenen veritabanlarına kullanıcı erişiminin hazırlanması, özgün sunucunun çevrimiçi olduğu herhangi bir zamanda yapılmalıdır (örn. DR tatbikatının bir parçası olarak).

Not

Düzgün şekilde yapılandırılmış oturum açma işlemleri olmayan bir sunucuya yük devretme veya coğrafi geri yükleme işlemleri yaparsanız, bu sunucuya erişim sunucu yönetici hesabıyla sınırlandırılır.

Hedef sunucuda oturum açma bilgilerini ayarlama işlemi aşağıda özetlenen üç adımdan oluşur:

1. Birincil veritabanına erişimi olan oturum açma bilgilerini belirleme

İşlemin ilk adımı, hangi oturum açma bilgilerinin hedef sunucuda çoğaltılması gerektiğini belirlemektir. Bu, biri kaynak sunucudaki mantıksal master veritabanında, diğeri birincil veritabanında olmak üzere bir çift SELECT deyimiyle gerçekleştirilir.

Kaynak sunucudaki oturum açma işlemlerini aşağıdaki SELECT deyimiyle yalnızca sunucu yöneticisi veya LoginManager sunucu rolünün bir üyesi belirleyebilir.

SELECT [name], [sid]
FROM [sys].[sql_logins]
WHERE [type_desc] = 'SQL_Login'

Yalnızca db_owner veritabanı rolünün bir üyesi, dbo kullanıcısı veya sunucu yöneticisi, birincil veritabanındaki tüm veritabanı kullanıcı sorumlularını belirleyebilir.

SELECT [name], [sid]
FROM [sys].[database_principals]
WHERE [type_desc] = 'SQL_USER'

2. 1. adımda tanımlanan oturum açma işlemleri için SID'yi bulun

Önceki bölümdeki sorguların çıkışını karşılaştırarak ve SID'leri eşleştirerek, sunucu oturum açma bilgilerini veritabanı kullanıcısına eşleyebilirsiniz. Eşleşen SID'ye sahip bir veritabanı kullanıcısı olan oturum açma işlemleri, bu veritabanı kullanıcı sorumlusu olarak bu veritabanına kullanıcı erişimine sahiptir.

Aşağıdaki sorgu, veritabanındaki tüm kullanıcı sorumlularını ve BUNLARıN SID'lerini görmek için kullanılabilir. Bu sorguyu yalnızca db_owner veritabanı rolünün veya sunucu yöneticisinin bir üyesi çalıştırabilir.

SELECT [name], [sid]
FROM [sys].[database_principals]
WHERE [type_desc] = 'SQL_USER'

Not

INFORMATION_SCHEMA ve sys kullanıcılarının NULL SID'leri vardır ve konuk SID 0x00. Veritabanı oluşturucusu DbManager üyesi yerine sunucu yöneticisiyse dbo SID 0x01060000000001648000000000048454 ile başlayabilir.

3. Hedef sunucuda oturum açma bilgilerini oluşturma

Son adım hedef sunucuya veya sunuculara gitmek ve uygun SID'lerle oturum açma bilgilerini oluşturmaktır. Temel söz dizimi aşağıdaki gibidir.

CREATE LOGIN [<login name>]
WITH PASSWORD = '<login password>',
SID = 0x1234 /*replace 0x1234 with the desired login SID*/

Hedef sunucuda, kaynaktan sunucu yöneticisi SID'siyle yeni bir oturum açma işlemi oluşturmayın. Bunun yerine, hedefin sunucu yöneticisinin veritabanında db_owner veya kullanıcı gibi bir veritabanı sorumlusu olarak oturum açmasını sağlayın.

Not

Kullanıcıya ikincil sunucuya erişim vermek istiyor ancak birincil sunucuya erişim vermek istemiyorsanız, aşağıdaki söz dizimini kullanarak birincil sunucuda kullanıcı oturum açma bilgilerini değiştirerek bunu yapabilirsiniz.

ALTER LOGIN [<login name>] DISABLE

DISABLE parolayı değiştirmez, bu nedenle gerekirse her zaman etkinleştirebilirsiniz.

Sonraki adımlar