SecurityContext.SuppressFlow Metoda

Definicja

Pomija przepływ kontekstu zabezpieczeń w wątkach asynchronicznych.

C#
public static System.Threading.AsyncFlowControl SuppressFlow();
C#
[System.Security.SecurityCritical]
public static System.Threading.AsyncFlowControl SuppressFlow();

Zwraca

Struktura AsyncFlowControl przywracania przepływu.

Atrybuty

Wyjątki

.NET 5+ (w tym .NET Core): we wszystkich przypadkach.

Uwagi

Użyj tej metody, aby pominąć przepływ SecurityContext informacji na temat bieżącego wątku dla operacji asynchronicznych.

Środowisko uruchomieniowe języka wspólnego (CLR) jest świadome tylko operacji personifikacji wykonywanych przy użyciu kodu zarządzanego. ClR nie ma wiedzy na temat personifikacji wykonywanej poza kodem zarządzanym, na przykład wywołania platformy do niezarządzanego kodu, który wykonuje personifikację lub za pośrednictwem wywołań funkcji Win32. Aby przepływać tożsamość między punktami asynchronicznymi, należy użyć metod zarządzanych WindowsIdentity i WindowsImpersonationContext .

Undo Użyj metody w zwróconej AsyncFlowControl strukturze, aby zwrócić SecurityContext obiekt do poprzedniego stanu.

Ta metoda jest chroniona za SecurityPermissionFlag.Infrastructure pomocą SecurityAction.LinkDemand uprawnienia. W pełni zaufany składnik może wywołać tę metodę, aby pominąć przepływ SecurityContext informacji podczas wywołań asynchronicznych. Gdy przepływ jest pomijany, Capture metoda zwraca wartość null.

Dotyczy

Produkt Wersje
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10