IHostSecurityManager
Mise à jour : novembre 2007
Fournit des méthodes qui permettent l'accès au contexte de sécurité du thread en cours d'exécution et d'en exercer le contrôle.
interface IHostSecurityManager : IUnknown {
HRESULT GetSecurityContext (
[in] EContextType eContextType,
[out] IHostSecurityContext** ppSecurityContext
);
HRESULT ImpersonateLoggedOnUser (
[in] HANDLE hToken
);
HRESULT OpenThreadToken (
[in] DWORD dwDesiredAccess,
[in] BOOL bOpenAsSelf,
[out] HANDLE *phThreadToken
);
HRESULT RevertToSelf ();
HRESULT SetSecurityContext (
[in] EContextType eContextType,
[in] IHostSecurityContext* pSecurityContext
);
HRESULT SetThreadToken (
[in] HANDLE hToken
);
};
Méthodes
Méthode |
Description |
---|---|
Obtient l'IHostSecurityContext demandé auprès de l'hôte. |
|
Demande que le code soit exécuté à l'aide des informations d'identification de l'identité d'utilisateur actuel. |
|
Ouvre le jeton d'accès discrétionnaire associé au thread actuel. |
|
Termine l'emprunt d'identité de l'identité d'utilisateur actuel et retourne le jeton de thread original. |
|
Définit le contexte de sécurité pour le thread en cours d'exécution. |
|
Définit un handle pour le thread en cours d'exécution. |
Notes
Un hôte peut contrôler l'accès de tout le code aux jetons de threads par le biais à la fois du Common Language Runtime (CLR) et du code utilisateur. Il peut également garantir que toutes les informations de contexte de sécurité sont passées via des opérations asynchrones ou des points de code ayant un accès restreint au code. IHostSecurityContext encapsule ces informations de contexte de sécurité qui sont opaques pour le CLR.
Le CLR gère le contexte d'un thread managé en interne. Il interroge l'IHostSecurityManager spécifique au processus dans les cas suivants :
Sur le thread finaliseur, pendant l'exécution du finaliseur.
Pendant l'exécution de la classe et du constructeur du module.
Aux points asynchrones sur le thread de travail, dans les appels à la méthode IHostThreadPoolManager::QueueUserWorkItem.
Pour prendre en charge des ports de terminaison d'E/S.
Configuration requise
Plateformes : consultez Configuration requise du .NET Framework.
En-tête : MSCorEE.idl
Bibliothèque : incluse en tant que ressource dans MSCorEE.dll
Versions du .NET Framework : 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0