SecureString Klasse

Definition

Stellt Text dar, der vertraulich behandelt werden soll, etwa durch Löschen aus dem Arbeitsspeicher des Computers, wenn er nicht mehr benötigt wird. Diese Klasse kann nicht vererbt werden.

public ref class SecureString sealed : IDisposable
public sealed class SecureString : IDisposable
type SecureString = class
    interface IDisposable
Public NotInheritable Class SecureString
Implements IDisposable
Vererbung
SecureString
Implementiert

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie Sie ein SecureString verwenden, um das Kennwort eines Benutzers für die Verwendung als Anmeldeinformationen zum Starten eines neuen Prozesses zu schützen.

using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Security;

public class Example
{
    public static void Main()
    {
        // Instantiate the secure string.
        SecureString securePwd = new SecureString();
        ConsoleKeyInfo key;

        Console.Write("Enter password: ");
        do {
           key = Console.ReadKey(true);
           
           // Ignore any key out of range.
           if (((int) key.Key) >= 65 && ((int) key.Key <= 90)) {
              // Append the character to the password.
              securePwd.AppendChar(key.KeyChar);
              Console.Write("*");
           }   
        // Exit if Enter key is pressed.
        } while (key.Key != ConsoleKey.Enter);
        Console.WriteLine();
        
        try {
            Process.Start("Notepad.exe", "MyUser", securePwd, "MYDOMAIN");
        }
        catch (Win32Exception e) {
            Console.WriteLine(e.Message);
        }
        finally {
           securePwd.Dispose();
        }
    }
}
Imports System.ComponentModel
Imports System.Diagnostics
Imports System.Security

Public Class Example
    Public Shared Sub Main()
        ' Instantiate the secure string.
        Dim securePwd As New SecureString()
        Dim key As ConsoleKeyInfo
        
        Console.Write("Enter password: ")
        Do
           key = Console.ReadKey(True)

           ' Ignore any key out of range
           If CInt(key.Key) >= 65 And CInt(key.Key <= 90) Then    
              ' Append the character to the password.
              securePwd.AppendChar(key.KeyChar)
              Console.Write("*")
           End If                                    
        ' Exit if Enter key is pressed.
        Loop While key.Key <> ConsoleKey.Enter
        Console.WriteLine()
        
        Try
            Process.Start("Notepad.exe", "MyUser", securePwd, "MYDOMAIN")
        Catch e As Win32Exception
            Console.WriteLine(e.Message)
        Finally
           securePwd.Dispose()
        End Try
    End Sub
End Class

Hinweise

Weitere Informationen zu dieser API finden Sie unter Zusätzliche API-Hinweise für SecureString.

Konstruktoren

SecureString()

Initialisiert eine neue Instanz der SecureString-Klasse.

SecureString(Char*, Int32)

Initialisiert eine neue Instanz der SecureString-Klasse aus einem Unterarray von Char-Objekten.

Dieser Konstruktor ist nicht CLS-kompatibel. Die CLS-kompatible Alternative ist SecureString().

Eigenschaften

Length

Ruft die Anzahl der Zeichen in der aktuellen sicheren Zeichenfolge ab.

Methoden

AppendChar(Char)

Fügt am Ende der aktuellen sicheren Zeichenfolge ein Zeichen an.

Clear()

Löscht den Wert der aktuellen sicheren Zeichenfolge.

Copy()

Erstellt eine Kopie der aktuellen sicheren Zeichenfolge.

Dispose()

Gibt alle vom aktuellen SecureString-Objekt verwendeten Ressourcen frei.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
InsertAt(Int32, Char)

Fügt in dieser sicheren Zeichenfolge an der angegebenen Indexposition ein Zeichen ein.

IsReadOnly()

Gibt an, ob diese sichere Zeichenfolge als schreibgeschützt markiert ist.

MakeReadOnly()

Legt den Textwert dieser sicheren Zeichenfolge als schreibgeschützt fest.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
RemoveAt(Int32)

Entfernt das Zeichen an der angegebenen Indexposition aus dieser sicheren Zeichenfolge.

SetAt(Int32, Char)

Ersetzt das an der angegebenen Indexposition vorhandene Zeichen durch ein anderes Zeichen.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen