SqlContext.WindowsIdentity Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Identita systému Microsoft Windows volajícího.
public:
static property System::Security::Principal::WindowsIdentity ^ WindowsIdentity { System::Security::Principal::WindowsIdentity ^ get(); };
public static System.Security.Principal.WindowsIdentity WindowsIdentity { get; }
static member WindowsIdentity : System.Security.Principal.WindowsIdentity
Public Shared ReadOnly Property WindowsIdentity As WindowsIdentity
Hodnota vlastnosti
Instance WindowsIdentity představující identitu systému Windows volajícího nebo null pokud byl klient ověřen pomocí ověřování SQL Server.
Příklady
Následující příklad ukazuje, jak získat identitu Systému Windows volajícího klienta a zosobnit klienta.
WindowsIdentity clientId = null;
WindowsImpersonationContext impersonatedUser = null;
clientId = SqlContext.WindowsIdentity;
// This outer try block is used to thwart exception filter attacks which would prevent
// the inner finally block from executing and resetting the impersonation.
try
{
try
{
impersonatedUser = clientId.Impersonate();
if (impersonatedUser != null)
{
// Perform some action using impersonation.
}
}
finally
{
if (impersonatedUser != null)
impersonatedUser.Undo();
}
}
catch
{
throw;
}
Dim clientId As WindowsIdentity
Dim impersonatedUser As WindowsImpersonationContext
clientId = SqlContext.WindowsIdentity
Try
Try
impersonatedUser = clientId.Impersonate()
If impersonatedUser IsNot Nothing Then
' Perform some action using impersonation.
End If
Finally
If impersonatedUser IsNot Nothing Then
impersonatedUser.Undo
End If
End Try
Catch e As Exception
throw e
End Try
Poznámky
Kód MODULU CLR (Common Language Runtime) uvnitř SQL Server se vždy vyvolává v kontextu účtu procesu. Pokud je nutné, aby kód provedl akci pomocí volání identity uživatele místo identity SQL Server procesu, pak by měl být token zosobnění získán prostřednictvím této vlastnosti. Po získání objektu WindowsIdentity mohou volající zosobnit klientský účet a provádět akce jejich jménem.
Pokud je vyvolána z vnějšku NotSupportedException SQL Server, je vyvolána hodnota .
K této vlastnosti mají přístup pouze sestavení označená oprávněním EXTERNAL_ACCESS nebo UNSAFE .
Tato vlastnost je jen ke čtení.