Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

SecureString-Klasse

Hinweis: Diese Klasse ist neu in .NET Framework, Version 2.0.

Stellt Text dar, der vertraulich behandelt werden soll. Aus Datenschutzgründen wird der Text bei Verwendung verschlüsselt und, wenn er nicht mehr benötigt wird, aus dem Computerspeicher gelöscht. Diese Klasse kann nicht vererbt werden.

Namespace: System.Security
Assembly: mscorlib (in mscorlib.dll)

public sealed class SecureString : CriticalFinalizerObject, IDisposable
public final class SecureString extends CriticalFinalizerObject implements IDisposable
public final class SecureString extends CriticalFinalizerObject implements IDisposable

Eine Instanz der System.String-Klasse ist unveränderlich und kann, wenn sie nicht mehr benötigt wird, nicht programmgesteuert für die Garbage Collection geplant werden. Dies bedeutet, dass die Instanz nach dem Erstellen schreibgeschützt ist und dass nicht vorhersagbar ist, wann die Instanz aus dem Computerspeicher gelöscht wird. Wenn ein String-Objekt vertrauliche Informationen wie Kennwörter, Kreditkartennummern oder persönliche Daten enthält, besteht daher ein Risiko, dass nach der Verwendung auf die Informationen zugegriffen werden kann, da die Anwendung die Daten nicht aus dem Computerspeicher löschen kann.

Ein SecureString-Objekt ähnelt einem String-Objekt darin, dass es einen Textwert besitzt. Der Wert eines SecureString-Objekts wird jedoch automatisch verschlüsselt und kann geändert werden, solange er von der Anwendung nicht als schreibgeschützt markiert wurde. Außerdem kann er von der Anwendung oder dem Garbage Collector von .NET Framework aus dem Computerspeicher gelöscht werden.

Der Wert einer Instanz von SecureString wird automatisch verschlüsselt, wenn die Instanz initialisiert oder der Wert geändert wird. Ihre Anwendung kann die Instanz als unveränderlich festlegen und weitere Änderungen durch Aufrufen der MakeReadOnly-Methode verhindern.

Beachten Sie, dass SecureString keine Member besitzt, die den Wert von SecureString überprüfen, vergleichen oder konvertieren. Das Fehlen solcher Member erleichtert es, den Wert der Instanz vor versehentlicher oder böswilliger Verfügbarmachung zu schützen. Verwenden Sie geeignete Member der System.Runtime.InteropServices.Marshal-Klasse, z. B. die SecureStringToBSTR-Methode, um den Wert eines SecureString-Objekts zu ändern.

Die SecureString-Klasse wird von der CriticalFinalizerObject-Klasse abgeleitet und implementiert die IDisposable-Schnittstelle. Weitere Informationen zum Implementieren der IDisposable-Schnittstelle finden Sie unter Garbage Collection.

Die SecureString-Klasse und ihre Member sind für COM nicht sichtbar. Weitere Informationen finden Sie unter ComVisibleAttribute.

Hinweis zu Windows 2000: SecureString wird nur unter Windows 2000 ab Service Pack 3 unterstützt.

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

.NET Framework

Unterstützt in: 2.0
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)