MemoryProtectionScope Enumeration
.NET Framework 4.5
Specifies the scope of memory protection to be applied by the Protect method.
Assembly: System.Security (in System.Security.dll)
| Member name | Description | |
|---|---|---|
| CrossProcess | All code in any process can unprotect memory that was protected using the Protect method. | |
| SameLogon | Only code running in the same user context as the code that called the Protect method can unprotect memory. | |
| SameProcess | Only code running in the same process as the code that called the Protect method can unprotect memory. |
The following code example shows how to use data protection.
using System; using System.Security.Cryptography; public class MemoryProtectionSample { public static void Main() { // Create the original data to be encrypted (The data length should be a multiple of 16). byte [] secret = { 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4 }; // Encrypt the data in memory. The result is stored in the same same array as the original data. ProtectedMemory.Protect( secret, MemoryProtectionScope.SameLogon ); // Decrypt the data in memory and store in the original array. ProtectedMemory.Unprotect( secret, MemoryProtectionScope.SameLogon ); } }
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.