SecureString Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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) |