Kimliğe bürünme ve bağlantılar için kimlik bilgileri

De SQL Server ortak dil çalışma zamanı (clr) tümleştirme, Windows kimlik doğrulaması kullanarak karmaşık, ancak daha güvenli kullanmaktan sql Server kimlik doğrulaması.Windows kimlik doğrulaması kullanırken, aşağıdaki konuları göz önünde bulundurun.

Varsayılan olarak Windows sql Server hizmet hesabının güvenlik bağlamını bağlayan öğrenmek için Windows sql Server işlemi kapsar.Ancak farklı bir güvenlik bağlamını, Windows hizmet hesabını, giden bağlantılara sahip olacak biçimde bir CLR işlev bir proxy kimlik ile eşleştirmek mümkündür.

Bazı durumlarda, kullanarak arayan taklit isteyebilirsiniz SqlContext.WindowsIdentity özellik yerine hizmet hesabı.The WindowsIdentity instance represents the identity of the client that invoked the calling code, and is only available when the client used Windows Authentication.Elde ettikten sonra WindowsIdentity örnek çağrısı Impersonate iş parçacığı parçacığının güvenlik belirteci değiştirmek ve ado açın.AĞ bağlantıları, adına istemci.

Siz çağrısından sonra SQLContext.WindowsIdentity.Impersonate, yerel veri erişemez ve erişemiyorsunuz sistem veri.Verilere erişmek için yeniden çağırmak elinizde WindowsImpersonationContext.Undo.

Aşağıdaki örnek kullanarak arayan taklit gösterilmiştir SqlContext.WindowsIdentity özellik.

Visual C#

WindowsIdentity clientId = null;
WindowsImpersonationContext impersonatedUser = null;

clientId = SqlContext.WindowsIdentity;

// This outer try block is used to protect from 
// exception filter attacks which would prevent
// the inner finally block from executing and 
// resetting the impersonation.
try
{
   try
   {
      impersonatedUser = clientId.Impersonate();
      if (impersonatedUser != null)
         return GetFileDetails(directoryPath);
         else return null;
   }
   finally
   {
      if (impersonatedUser != null)
         impersonatedUser.Undo();
   }
}
catch
{
   throw;
}

Not

Kimliğe bürünme davranış değişiklikleri hakkında daha fazla bilgi için bkz: En son sql Server veritabanı altyapısı özellikleri 2008 R2 değiştirir..

Ayrıca, elde ettiğiniz, Microsoft Windows kimlik örnek varsayılan olarak başka bir bilgisayara; o örneğe doldurulamıyor Windows güvenlik alt yapısı, varsayılan olarak sınırlar.Vardır, ancak, "temsilci" adı verilen bir mekanizma birden fazla bilgisayarda güvenilen kimlikler Windows yayılmasını sağlayan.TechNet temsilci atama hakkında daha fazla bilgi edinmek makale, "Kerberos iletişim kuralı geçiş ve kısıtlı temsilci".

Ayrıca bkz.

Kavramlar