Aracılığıyla paylaş


IHostSecurityManager::SetSecurityContext Yöntemi

Yürütülmekte olan iş parçacığının güvenlik bağlamını ayarlar.

Sözdizimi

HRESULT SetSecurityContext (  
    [in]  EContextType eContextType,  
    [out] IHostSecurityContext** ppSecurityContext  
);  

Parametreler

eContextType
[in] Ortak dil çalışma zamanının (CLR) konağa hangi bağlam türünü yerleştirdiğini gösteren EContextType değerlerinden biri.

ppSecurityContext
[out] Yeni bir IHostSecurityContext nesnesinin adresinin işaretçisi.

Dönüş Değeri

HRESULT Description
S_OK SetSecurityContext başarıyla döndürüldü.
HOST_E_CLRNOTAVAILABLE CLR bir işleme yüklenmedi veya CLR yönetilen kodu çalıştıramadığı veya çağrıyı başarıyla işleyemediği bir durumda.
HOST_E_TIMEOUT Arama zaman aşımına uğradı.
HOST_E_NOT_OWNER Arayan, kilidin sahibi değil.
HOST_E_ABANDONED Engellenen bir iş parçacığı veya fiber beklerken bir olay iptal edildi.
E_FAIL Bilinmeyen bir yıkıcı hata oluştu. Bir yöntem E_FAIL döndürdüğünde, CLR artık işlem içinde kullanılamaz. Barındırma yöntemlerine yapılan sonraki çağrılar HOST_E_CLRNOTAVAILABLE döndürür.

Açıklamalar

CLR çeşitli senaryolarda çağrılar SetSecurityContext . Sınıf ve modül oluşturucuları ve sonlandırıcıları yürütmeden önce CLR, konağı yürütme hatalarından korumak için çağırır SetSecurityContext . Ardından, oluşturucu veya sonlandırıcı yürütüldikten sonra başka bir çağrısı SetSecurityContextkullanarak güvenlik bağlamını özgün durumuna sıfırlar. G/Ç tamamlandığında benzer bir desen oluşur. Konak IHostIoCompletionManager uygularsa, konak ICLRIoCompletionManager::OnComplete çağrısı yaptıktan sonra CLR çağrılarıSetSecurityContext.

Çalışan iş parçacıklarındaki zaman uyumsuz noktalarda CLR, konağın veya CLR'nin iş parçacığı havuzunu uygulayıp uygulamadığına bağlı olarak IHostThreadPoolManager::QueueUserWorkItem içindeki veya içindeki çağrıları SetSecurityContextThreadPool.QueueUserWorkItem gerçekleştirir.

Gereksinimler

Platform: Bkz. Sistem Gereksinimleri.

Üstbilgi: MSCorEE.h

Kitaplığı: MSCorEE.dll'da kaynak olarak dahil edilen

.NET Framework Sürümleri: 2.0 sürümünden itibaren kullanılabilir

Ayrıca bkz.