SecureString Classe

Definição

Representa texto que deve ser mantido confidencial, por exemplo, eliminando-o da memória do computador quando já não é necessário. Esta classe não pode ser herdada.

public ref class SecureString sealed : IDisposable
public sealed class SecureString : IDisposable
type SecureString = class
    interface IDisposable
Public NotInheritable Class SecureString
Implements IDisposable
Herança
SecureString
Implementações

Exemplos

O exemplo seguinte demonstra como usar a SecureString para proteger a palavra-passe de um utilizador para ser usada como credencial para iniciar um novo processo.

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

Observações

Para mais informações sobre esta API, consulte Observações suplementares sobre a API para o SecureString.

Construtores

Name Description
SecureString()

Inicializa uma nova instância da SecureString classe.

SecureString(Char*, Int32)

Inicializa uma nova instância da SecureString classe a partir de um subarray de Char objetos.

Este construtor não é compatível com CLS. A alternativa compatível com CLS é SecureString().

Propriedades

Name Description
Length

Obtém o número de caracteres na cadeia segura atual.

Métodos

Name Description
AppendChar(Char)

Acrescenta um carácter ao final da cadeia segura atual.

Clear()

Elimina o valor da cadeia segura atual.

Copy()

Cria uma cópia da cadeia segura atual.

Dispose()

Liberta todos os recursos usados pelo objeto atual SecureString .

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InsertAt(Int32, Char)

Insere um carácter nesta cadeia segura na posição do índice especificada.

IsReadOnly()

Indica se esta cadeia segura está marcada como apenas leitura.

MakeReadOnly()

Torna o valor de texto desta cadeia segura apenas de leitura.

MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
RemoveAt(Int32)

Remove o carácter na posição de índice especificada desta cadeia segura.

SetAt(Int32, Char)

Substitui o carácter existente na posição índice especificada por outro caractere.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Ver também