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 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
See Also
Reference
ICLRHostProtectionManager Interface