This documentation is archived and is not being maintained.

DataProtectionPermissionFlags Enumeration

Specifies the access permissions for encrypting data and memory.

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

Namespace:  System.Security.Permissions
Assembly:  System.Security (in System.Security.dll)

'Declaration
<SerializableAttribute> _
<FlagsAttribute> _
Public Enumeration DataProtectionPermissionFlags
'Usage
Dim instance As DataProtectionPermissionFlags

Member nameDescription
NoFlagsNo protection abilities.
ProtectDataThe ability to encrypt data.
UnprotectDataThe ability to unencrypt data.
ProtectMemoryThe ability to encrypt memory.
UnprotectMemoryThe ability to unencrypt memory.
AllFlagsThe ability to encrypt data, encrypt memory, unencrypt data, and 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.

Caution noteCaution:

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

The following code example shows the use of the DataProtectionPermissionFlags enumeration. This code example is part of a larger example provided for the DataProtectionPermission class.

<DataProtectionPermission( _
    SecurityAction.Deny, _
    Flags:=DataProtectionPermissionFlags.ProtectData)> _
Private Sub TryProtectData()
    Try
        ProtectData()
    Catch ex As SecurityException
        Dim protectionPermission As DataProtectionPermission
        protectionPermission = _
            CType(ex.DenySetInstance, DataProtectionPermission)

        WriteLine("Security exception thrown when attempting: " + _
            protectionPermission.Flags.ToString())
    End Try 
End Sub

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0
Show: