MemoryProtectionScope MemoryProtectionScope MemoryProtectionScope MemoryProtectionScope Enum

Definition

Gibt den Speicherschutzbereich an, der von der Protect(Byte[], MemoryProtectionScope)-Methode angewendet wird.Specifies the scope of memory protection to be applied by the Protect(Byte[], MemoryProtectionScope) method.

public enum class MemoryProtectionScope
public enum MemoryProtectionScope
type MemoryProtectionScope = 
Public Enum MemoryProtectionScope
Vererbung
MemoryProtectionScopeMemoryProtectionScopeMemoryProtectionScopeMemoryProtectionScope

Felder

CrossProcess CrossProcess CrossProcess CrossProcess 1

Mit Code kann in beliebigen Prozessen der Speicherschutz für Speicher aufgehoben werden, der mithilfe der Protect(Byte[], MemoryProtectionScope)-Methode geschützt wurde.All code in any process can unprotect memory that was protected using the Protect(Byte[], MemoryProtectionScope) method.

SameLogon SameLogon SameLogon SameLogon 2

Der Speicherschutz kann nur von Code aufgehoben werden, der im gleichen Benutzerkontext wie der Code ausgeführt wird, mit dem die Protect(Byte[], MemoryProtectionScope)-Methode aufgerufen wurde.Only code running in the same user context as the code that called the Protect(Byte[], MemoryProtectionScope) method can unprotect memory.

SameProcess SameProcess SameProcess SameProcess 0

Der Speicherschutz kann nur von Code aufgehoben werden, der im gleichen Prozess wie der Code ausgeführt wird, mit dem die Protect(Byte[], MemoryProtectionScope)-Methode aufgerufen wurde.Only code running in the same process as the code that called the Protect(Byte[], MemoryProtectionScope) method can unprotect memory.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, Schutz von Daten verwenden.The following code example shows how to use data protection.

#using <System.Security.dll>

using namespace System;
using namespace System::Security::Cryptography;

int main()
{
   
   // Create the original data to be encrypted (The data length should be a multiple of 16).
   array<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 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 );
}
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 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 );
    }
}
Imports System
Imports System.Security.Cryptography

Public Class MemoryProtectionSample

    Public Shared Sub Main()
        ' Create the original data to be encrypted (The data length should be a multiple of 16).
        Dim secret As Byte() = {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 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)

    End Sub
End Class

Hinweise

Diese Enumeration wird verwendet, mit der Protect und Unprotect Methoden zum Schützen von Daten im Arbeitsspeicher.This enumeration is used with the Protect and Unprotect methods to protect data in memory.

Gilt für: