Aracılığıyla paylaş


Elastik Veritabanı istemci kitaplığına erişmek için kullanılan kimlik bilgileri

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

Elastik Veritabanı istemci kitaplığı, parça eşleme yöneticisine erişmek için üç farklı türde kimlik bilgisi kullanır. Ihtiyaca bağlı olarak, mümkün olan en düşük erişim düzeyiyle kimlik bilgilerini kullanın.

  • Yönetim kimlik bilgileri: parça eşleme yöneticisi oluşturmak veya işlemek için. (Bkz . sözlük.)
  • Erişim kimlik bilgileri: Parçalar hakkında bilgi almak üzere mevcut bir parça eşleme yöneticisine erişmek için.
  • Bağlantı kimlik bilgileri: parçalara bağlanmak için.

Ayrıca bkz. Azure SQL Veritabanı veritabanlarını ve oturum açma bilgilerini yönetme.

Yönetim kimlik bilgileri hakkında

Yönetim kimlik bilgileri, parça eşlemelerini işleyen uygulamalar için bir ShardMapManager (Java, .NET) nesnesi oluşturmak için kullanılır. (Örneğin, bkz. Elastik Veritabanı araçlarını ve verilere bağımlı yönlendirmeyi kullanarak parça ekleme). Elastik ölçek istemci kitaplığının kullanıcısı SQL kullanıcılarını ve SQL oturum açma bilgilerini oluşturur ve her birine genel parça eşleme veritabanında ve tüm parça veritabanlarında okuma/yazma izinleri verildiğinden emin olur. Bu kimlik bilgileri, parça eşlemesinde değişiklik yapıldığında genel parça eşlemesini ve yerel parça eşlemelerini korumak için kullanılır. Örneğin, parça eşleme yöneticisi nesnesini (GetSqlShardMapManager (Java, .NET) kullanarak) oluşturmak için yönetim kimlik bilgilerini kullanın:

// Obtain a shard map manager.
ShardMapManager shardMapManager = ShardMapManagerFactory.GetSqlShardMapManager(smmAdminConnectionString,ShardMapManagerLoadPolicy.Lazy);

smmAdminConnectionString değişkeni, yönetim kimlik bilgilerini içeren bir bağlantı dizesi. Kullanıcı kimliği ve parola hem parça eşleme veritabanına hem de tek tek parçalara okuma/yazma erişimi sağlar. Yönetim bağlantı dizesi, genel parça eşleme veritabanını tanımlamak için sunucu adını ve veritabanı adını da içerir. Bu amaçla tipik bir bağlantı dizesi aşağıda verilmiştir:

"Server=<yourserver>.database.windows.net;Database=<yourdatabase>;User ID=<yourmgmtusername>;Password=<yourmgmtpassword>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;"

Değerleri "username@server" biçiminde kullanmayın; bunun yerine yalnızca "kullanıcı adı" değerini kullanın. Bunun nedeni, kimlik bilgilerinin hem parça eşleme yöneticisi veritabanında hem de farklı sunucularda olabilecek tek tek parçalarda çalışması gerektiğidir.

Kimlik bilgilerine erişme

Parça eşlemelerini yönetmeyen bir uygulamada parça eşleme yöneticisi oluştururken, genel parça eşlemesinde salt okunur izinlere sahip kimlik bilgilerini kullanın. Bu kimlik bilgileri altındaki genel parça eşlemesinden alınan bilgiler, verilere bağımlı yönlendirme ve istemcideki parça eşleme önbelleğini doldurmak için kullanılır. Kimlik bilgileri GetSqlShardMapManager için aynı çağrı düzeni aracılığıyla sağlanır:

// Obtain shard map manager.
ShardMapManager shardMapManager = ShardMapManagerFactory.GetSqlShardMapManager(smmReadOnlyConnectionString, ShardMapManagerLoadPolicy.Lazy);  

Yönetici olmayan kullanıcılar adına bu erişim için farklı kimlik bilgilerinin kullanımını yansıtmak için smmReadOnlyConnectionString kullanımına dikkat edin: Bu kimlik bilgileri genel parça eşlemesinde yazma izinleri sağlamamalıdır.

Bağlantı kimlik bilgileri

Parçalama anahtarıyla ilişkili bir parçaya erişmek için OpenConnectionForKey (Java, .NET) yöntemi kullanılırken ek kimlik bilgileri gerekir. Bu kimlik bilgilerinin, parça üzerinde bulunan yerel parça eşleme tablolarına salt okunur erişim izni sağlaması gerekir. Bu, parça üzerinde verilere bağımlı yönlendirme için bağlantı doğrulaması gerçekleştirmek için gereklidir. Bu kod parçacığı, verilere bağımlı yönlendirme bağlamında veri erişimine izin verir:

using (SqlConnection conn = rangeMap.OpenConnectionForKey<int>(targetWarehouse, smmUserConnectionString, ConnectionOptions.Validate))

Bu örnekte, smmUserConnectionString kullanıcı kimlik bilgileri için bağlantı dizesi tutar. Azure SQL Veritabanı için, kullanıcı kimlik bilgileri için tipik bir bağlantı dizesi aşağıda verilmiştir:

"User ID=<yourusername>; Password=<youruserpassword>; Trusted_Connection=False; Encrypt=True; Connection Timeout=30;"  

Yönetici kimlik bilgilerinde olduğu gibi, değerleri "username@server" biçiminde kullanmayın. Bunun yerine yalnızca "kullanıcıadı" kullanın. Ayrıca bağlantı dizesi bir sunucu adı ve veritabanı adı içermediğini unutmayın. Bunun nedeni OpenConnectionForKey çağrısının anahtarı temel alarak bağlantıyı otomatik olarak doğru parçaya yönlendirmesidir. Bu nedenle, veritabanı adı ve sunucu adı sağlanmaz.

Ayrıca bkz.

Azure SQL Veritabanı’nda veritabanlarını ve oturum açma bilgilerini yönetme

SQL Veritabanınızı güvenli hale getirme

Elastik Veritabanı işleri

Elastik veritabanı araçlarını henüz kullanmıyor musunuz? Başlarken Kılavuzumuza göz atın. Sorular için, SQL Veritabanı ve özellik istekleri için Microsoft Soru-Cevap soru sayfasından bizimle iletişime geçin, yeni fikirler ekleyin veya SQL Veritabanı geri bildirim forumunda mevcut fikirler için oy verin.