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 gehalten werden soll, z. B. durch Löschen aus dem Computerspeicher, 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 ein Benutzerkennwort für die Verwendung als Anmeldeinformationen zum Starten eines neuen Prozesses verwendet SecureString wird.
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 in den ergänzenden API-Hinweisen für SecureString.
Konstruktoren
| Name | Beschreibung |
|---|---|
| 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
| Name | Beschreibung |
|---|---|
| Length |
Ruft die Anzahl der Zeichen in der aktuellen sicheren Zeichenfolge ab. |
Methoden
| Name | Beschreibung |
|---|---|
| AppendChar(Char) |
Fügt ein Zeichen an das Ende der aktuellen sicheren Zeichenfolge 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 dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| InsertAt(Int32, Char) |
Fügt ein Zeichen in diese sichere Zeichenfolge an der angegebenen Indexposition ein. |
| IsReadOnly() |
Gibt an, ob diese sichere Zeichenfolge schreibgeschützt markiert ist. |
| MakeReadOnly() |
Macht den Textwert dieser sicheren Zeichenfolge schreibgeschützt. |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| RemoveAt(Int32) |
Entfernt das Zeichen an der angegebenen Indexposition aus dieser sicheren Zeichenfolge. |
| SetAt(Int32, Char) |
Ersetzt das vorhandene Zeichen an der angegebenen Indexposition durch ein anderes Zeichen. |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |