SecureString Constructores

Definición

Inicializa una nueva instancia de la clase SecureString.

Sobrecargas

Nombre Description
SecureString()

Inicializa una nueva instancia de la clase SecureString.

SecureString(Char*, Int32)

Inicializa una nueva instancia de la SecureString clase a partir de una subbarray de Char objetos.

Este constructor no es compatible con CLS. La alternativa conforme a CLS es SecureString().

SecureString()

Inicializa una nueva instancia de la clase SecureString.

public:
 SecureString();
public SecureString();
Public Sub New ()

Excepciones

Error al proteger o desproteger el valor de esta instancia.

Esta operación no se admite en esta plataforma.

Ejemplos

En el ejemplo siguiente se usa el constructor predeterminado (o sin parámetros) para crear instancias de un nuevo SecureString objeto. A continuación, llama al AppendChar método para agregarle una matriz de caracteres.

using System;
using System.Security;

public class Example
{
   public static void Main()
   {
      // Define the string value to assign to a new secure string.
      char[] chars = { 't', 'e', 's', 't' };
      // Instantiate the secure string.
      SecureString testString = new SecureString();
      // Assign the character array to the secure string.
      foreach (char ch in chars)
         testString.AppendChar(ch);      
      // Display secure string length.
      Console.WriteLine("The length of the string is {0} characters.", 
                        testString.Length);
      testString.Dispose();
   }
}
// The example displays the following output:
//      The length of the string is 4 characters.
Imports System.Security

Module Example
   Public Sub Main()
      ' Define the string value to assign to a new secure string.
      Dim chars() As Char = { "t"c, "e"c, "s"c, "t"c }
      ' Instantiate the secure string.
      Dim testString As SecureString = New SecureString()
      ' Assign the character array to the secure string.
      For Each ch As char In chars
         testString.AppendChar(ch)
      Next         
      ' Display secure string length.
      Console.WriteLine("The length of the string is {0} characters.", _ 
                        testString.Length)
      testString.Dispose()
   End Sub
End Module
' The example displays the following output:
'      The length of the string is 4 characters.

En el ejemplo siguiente se crea un SecureString objeto a partir del valor de un String objeto .

using System;
using System.Security;

public class Example
{
   public static void Main()
   {
      // Define the string value to be assigned to the secure string.
      string initString = "TestString";
      // Instantiate the secure string.
      SecureString testString = new SecureString();
      // Use the AppendChar method to add each char value to the secure string.
      foreach (char ch in initString)
         testString.AppendChar(ch);
         
      // Display secure string length.
      Console.WriteLine("The length of the string is {0} characters.", 
                        testString.Length);
      testString.Dispose();
   }
}
// The example displays the following output:
//      The length of the string is 10 characters.
Imports System.Security

Module Example
   Public Sub Main()
      ' Define the string value to be assigned to the secure string.
      Dim initString As String = "TestString"
      ' Instantiate the secure string.
      Dim testString As SecureString = New SecureString()
      ' Use the AppendChar method to add each char value to the secure string.
      For Each ch As Char In initString
         testString.AppendChar(ch)
      Next   
      ' Display secure string length.
      Console.WriteLine("The length of the string is {0} characters.", _ 
                        testString.Length)
      testString.Dispose()
   End Sub
End Module
' The example displays the following output:
'      The length of the string is 10 characters.

Se aplica a

SecureString(Char*, Int32)

Importante

Esta API no es conforme a CLS.

Inicializa una nueva instancia de la SecureString clase a partir de una subbarray de Char objetos.

Este constructor no es compatible con CLS. La alternativa conforme a CLS es SecureString().

public:
 SecureString(char* value, int length);
[System.CLSCompliant(false)]
public SecureString(char* value, int length);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public SecureString(char* value, int length);
[<System.CLSCompliant(false)>]
new System.Security.SecureString : nativeptr<char> * int -> System.Security.SecureString
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new System.Security.SecureString : nativeptr<char> * int -> System.Security.SecureString

Parámetros

value
Char*

Puntero a una matriz de objetos Char.

length
Int32

Número de elementos de value que se van a incluir en la nueva instancia.

Atributos

Excepciones

value es null.

length es menor que cero o mayor que 65.536.

Error al proteger o desproteger el valor de esta cadena segura.

Esta operación no se admite en esta plataforma.

Ejemplos

En el ejemplo siguiente se crea una instancia de un nuevo SecureString objeto pasando su constructor un puntero a una matriz de caracteres.

using System;
using System.Security;

public class Example
{
   unsafe public static void Main()
   {
      SecureString testString;
      // Define the string value to assign to a new secure string.
      char[] chars = { 't', 'e', 's', 't' };

      // Instantiate a new secure string.
      fixed(char* pChars = chars)
      {
         testString = new SecureString(pChars, chars.Length);
      }
      // Display secure string length.
      Console.WriteLine("The length of the string is {0} characters.", 
                        testString.Length);
      testString.Dispose();
   }
}
// The example displays the following output:
//      The length of the string is 4 characters.

Comentarios

Este constructor inicializa el nuevo SecureString objeto en el número de caracteres especificados value por length; el valor de la instancia se cifra.

En C#, este constructor solo se define en el contexto de código no seguro.

Se aplica a