SecureString Třída

Definice

Představuje text, který by měl být důvěrné, například odstraněním z paměti počítače, pokud už není potřeba. Tato třída se nemůže dědit.

public ref class SecureString sealed : IDisposable
public sealed class SecureString : IDisposable
type SecureString = class
    interface IDisposable
Public NotInheritable Class SecureString
Implements IDisposable
Dědičnost
SecureString
Implementuje

Příklady

Následující příklad ukazuje, jak použít SecureString k zabezpečení hesla uživatele pro použití jako přihlašovací údaje ke spuštění nového procesu.

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

Poznámky

Další informace o tomto rozhraní API naleznete v tématu Doplňkové poznámky k rozhraní API pro SecureString.

Konstruktory

Name Description
SecureString()

Inicializuje novou instanci SecureString třídy.

SecureString(Char*, Int32)

Inicializuje novou instanci SecureString třídy z podarray Char objektů.

Tento konstruktor není kompatibilní se specifikací CLS. Alternativou kompatibilní se specifikací CLS je SecureString().

Vlastnosti

Name Description
Length

Získá počet znaků v aktuálním zabezpečeném řetězci.

Metody

Name Description
AppendChar(Char)

Připojí znak na konec aktuálního zabezpečeného řetězce.

Clear()

Odstraní hodnotu aktuálního zabezpečeného řetězce.

Copy()

Vytvoří kopii aktuálního zabezpečeného řetězce.

Dispose()

Uvolní všechny prostředky používané aktuálním SecureString objektem.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
InsertAt(Int32, Char)

Vloží znak do tohoto zabezpečeného řetězce na zadanou pozici indexu.

IsReadOnly()

Určuje, jestli je tento zabezpečený řetězec označen jen pro čtení.

MakeReadOnly()

Vytvoří textovou hodnotu tohoto zabezpečeného řetězce jen pro čtení.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
RemoveAt(Int32)

Odebere znak na zadané pozici indexu z tohoto zabezpečeného řetězce.

SetAt(Int32, Char)

Nahradí existující znak na zadané pozici indexu jiným znakem.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také