SecureString Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa o texto que deve ser mantido como confidencial, como excluindo-o da memória do computador quando ele não for mais necessário. Essa 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 a seguir demonstra como usar um SecureString para proteger a senha de um usuário para uso como uma 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
Comentários
Para obter mais informações sobre essa API, consulte Comentários da API complementar para SecureString.
Construtores
SecureString() |
Inicializa uma nova instância da classe SecureString. |
SecureString(Char*, Int32) |
Inicializa uma nova instância da classe SecureString de uma submatriz de objetos Char. Este construtor não é compatível com CLS. A alternativa compatível com CLS é SecureString(). |
Propriedades
Length |
Obtém o número de caracteres na cadeia de caracteres atual. |
Métodos
AppendChar(Char) |
Acrescenta um caractere ao final da cadeia de caracteres segura atual. |
Clear() |
Exclui o valor da cadeia de caracteres segura atual. |
Copy() |
Cria uma cópia da cadeia de caracteres segura atual. |
Dispose() |
Libera todos os recursos usados pelo objeto SecureString atual. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
InsertAt(Int32, Char) |
Insere um caractere nesta cadeia de caracteres segura na posição de índice especificada. |
IsReadOnly() |
Indica se essa cadeia de caracteres segura é marcada como somente leitura. |
MakeReadOnly() |
Torna o valor de texto da cadeia de caracteres segura em somente leitura. |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
RemoveAt(Int32) |
Remove o caractere na posição de índice especificada dessa cadeia de caracteres segura. |
SetAt(Int32, Char) |
Substitui o caractere existente na posição de índice especificada por outro caractere. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |