DataProtectionPermissionFlags DataProtectionPermissionFlags DataProtectionPermissionFlags DataProtectionPermissionFlags Enum


Specifies the access permissions for encrypting data and memory.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

public enum class DataProtectionPermissionFlags
public enum DataProtectionPermissionFlags
type DataProtectionPermissionFlags = 
Public Enum DataProtectionPermissionFlags


AllFlags AllFlags AllFlags AllFlags 15

The ability to encrypt data, encrypt memory, unencrypt data, and unencrypt memory.

NoFlags NoFlags NoFlags NoFlags 0

No protection abilities.

ProtectData ProtectData ProtectData ProtectData 1

The ability to encrypt data.

ProtectMemory ProtectMemory ProtectMemory ProtectMemory 4

The ability to encrypt memory.

UnprotectData UnprotectData UnprotectData UnprotectData 2

The ability to unencrypt data.

UnprotectMemory UnprotectMemory UnprotectMemory UnprotectMemory 8

The ability to unencrypt memory.


This enumeration is used by the DataProtectionPermission and DataProtectionPermissionAttribute classes to protect access to encrypted data and memory using the ProtectedData and ProtectedMemory classes.


Many of these flags can have powerful effects and should be granted only to highly trusted code.

Applies to