MemoryProtectionScope Sabit listesi

Tanım

yöntemi tarafından uygulanacak bellek korumasının Protect(Byte[], MemoryProtectionScope) kapsamını belirtir.

public enum class MemoryProtectionScope
public enum MemoryProtectionScope
type MemoryProtectionScope = 
Public Enum MemoryProtectionScope
Devralma
MemoryProtectionScope

Alanlar

CrossProcess 1

Herhangi bir işlemdeki tüm kod, yöntemi kullanılarak korunan belleğin korumasını Protect(Byte[], MemoryProtectionScope) kaldırabilir.

SameLogon 2

Yalnızca yöntemini çağıran Protect(Byte[], MemoryProtectionScope) kodla aynı kullanıcı bağlamında çalışan kod belleğin korumasını kaldırabilir.

SameProcess 0

Yalnızca yöntemini çağıran kodla aynı işlemde çalışan kod bellek korumasını Protect(Byte[], MemoryProtectionScope) kaldırabilir.

Örnekler

Aşağıdaki kod örneği, veri korumanın nasıl kullanılacağını gösterir.

#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.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

Açıklamalar

Bu numaralandırma, bellekteki Protect verileri korumak için ve Unprotect yöntemleriyle birlikte kullanılır.

Şunlara uygulanır