EApiCategories Enumeration
Describes the categories of capabilities that the host can block from running in partially trusted code.
typedef enum {
eNoCategory = 0,
eSynchronization = 0x1,
eSharedState = 0x2,
eExternalProcessMgmt = 0x4,
eSelfAffectingProcessMgmt = 0x8,
eExternalThreading = 0x10,
eSelfAffectingThreading = 0x20,
eSecurityInfrastructure = 0x40,
eUI = 0x80,
eMayLeakOnAbort = 0x100,
eAll = 0x1ff
} EHostProtectionCategories;
Members
Member |
Description |
---|---|
eAll |
Specifies that all managed classes and members that are covered by other EApiCategories fields be blocked from running in partially trusted code. |
eExternalProcessMgmt |
Specifies that managed classes and members that allow the creation, manipulation, and destruction of external processes be blocked from running in partially trusted code. |
eExternalThreading |
Specifies that managed classes and members that allow the creation, manipulation, and destruction of external threads be blocked from running in partially trusted code. |
eMayLeakOnAbort |
Specifies that managed types and members that could potentially leak memory on abort be blocked from running in partially trusted code. |
eNoCategory |
Specifies that no managed code categories be blocked from running in partially trusted code. |
eSecurityInfrastructure |
Specifies that the common language runtime (CLR) security infrastructure be blocked from being used by partially trusted code. |
eSelfAffectingProcessMgmt |
Specifies that managed classes and members whose capabilities can affect the hosted process be blocked from running in partially trusted code. |
eSelfAffectingThreading |
Specifies that managed classes and members whose capabilities can affect threads in the hosted process be blocked from running in partially trusted code. |
eSharedState |
Specifies that managed classes and members that expose shared state be blocked from running in partially trusted code. |
eSynchronization |
Specifies that common language runtime classes and members that allow user code to hold locks be blocked from running in partially trusted code. |
eUI |
Specifies that managed classes and members that allow or require human interaction be blocked from running in partially trusted code. |
Remarks
The ICLRHostProtectionManager::SetProtectedCategories method takes a parameter of type EApiCategories.
The EApiCategories enumeration and the SetProtectedCategories method are directly related to the managed System.Security.Permissions..::.HostProtectionAttribute class. The managed class is used with the System.Security.Permissions..::.HostProtectionResource enumeration, whose values correspond directly to the EApiCategories values, to mark managed types and members that expose capabilities corresponding to the categories described by EApiCategories.
Requirements
Platforms: Windows 2000, Windows XP, Windows Server 2003 family
Header: MSCorEE.idl
Library: MSCorEE.dll
.NET Framework Version: 2.0