WorkbookBase.SetPasswordEncryptionOptions (Método)
Establece las opciones para cifrar el libro mediante una contraseña.
Espacio de nombres: Microsoft.Office.Tools.Excel
Ensamblado: Microsoft.Office.Tools.Excel.v4.0.Utilities (en Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)
Sintaxis
'Declaración
Public Sub SetPasswordEncryptionOptions ( _
passwordEncryptionProvider As Object, _
passwordEncryptionAlgorithm As Object, _
passwordEncryptionKeyLength As Object, _
passwordEncryptionFileProperties As Object _
)
public void SetPasswordEncryptionOptions(
Object passwordEncryptionProvider,
Object passwordEncryptionAlgorithm,
Object passwordEncryptionKeyLength,
Object passwordEncryptionFileProperties
)
Parámetros
- passwordEncryptionProvider
Tipo: System.Object
Una cadena con distinción entre mayúsculas y minúsculas del proveedor de cifrado.
- passwordEncryptionAlgorithm
Tipo: System.Object
Una cadena distingue entre mayúsculas y minúsculas de corto algorítmico r C4 (/fa IE.. “").
- passwordEncryptionKeyLength
Tipo: System.Object
La longitud de la clave de cifrado, que es un múltiplo de 8 (40 o mayor).
- passwordEncryptionFileProperties
Tipo: System.Object
true (valor predeterminado) para cifrar las propiedades de archivo.
Comentarios
Los parámetros PasswordEncryptionProvider, PasswordEncryptionAlgorithm y PasswordEncryptionKeyLength no son independientes entre sí.Un proveedor de cifrado seleccionado limita el conjunto de algoritmos y la longitud de clave que se pueden elegir.
En el parámetro PasswordEncryptionKeyLength no hay ningún límite inherente en el intervalo de la longitud de la clave.El proveedor de servicios criptográficos es quien determina el intervalo, además del algoritmo criptográfico.
Parámetros opcionales
Para obtener información sobre parámetros opcionales, vea Parámetros opcionales en las soluciones de Office.
Ejemplos
El ejemplo de código siguiente comprueba el valor de la propiedad HasPassword para determinar si el libro está protegido con contraseña.Si el libro no está protegido con contraseña, el ejemplo establece la propiedad Password en una contraseña obtenida a partir de los datos proporcionados por el usuario y, a continuación, llama al método SetPasswordEncryptionOptions para establecer el algoritmo de cifrado, establecer la longitud de la clave, establecer el nombre del proveedor de cifrado y habilitar el cifrado de la propiedad del archivo.A continuación, el ejemplo muestra los valores de las propiedades PasswordEncryptionProvider, PasswordEncryptionAlgorithm, PasswordEncryptionKeyLength y PasswordEncryptionFileProperties en la hoja de cálculo Sheet1.Este ejemplo supone que se ha definido el método GetPasswordFromUserInput en otra parte.
Se trata de un ejemplo para una personalización en el nivel del documento.
Private Sub WorkbookPasswordOptions()
If Not Me.HasPassword Then
Me.Password = GetPasswordFromUserInput()
Me.SetPasswordEncryptionOptions( _
"Microsoft RSA SChannel Cryptographic Provider", _
"RC4", 128, True)
End If
' Display the password properties in Sheet1.
Globals.Sheet1.Range("A1").Value2 = _
"Password Encryption Provider:"
Globals.Sheet1.Range("A2").Value2 = _
"Password Encryption Algorithm:"
Globals.Sheet1.Range("A3").Value2 = _
"Password Encryption Key Length:"
Globals.Sheet1.Range("A4").Value2 = _
"Password Encryption File Properties:"
Globals.Sheet1.Range("A1", "A4").Columns.AutoFit()
Globals.Sheet1.Range("B1").Value2 = _
Me.PasswordEncryptionProvider
Globals.Sheet1.Range("B2").Value2 = _
Me.PasswordEncryptionAlgorithm
Globals.Sheet1.Range("B3").Value2 = _
Me.PasswordEncryptionKeyLength
Globals.Sheet1.Range("B4").Value2 = _
Me.PasswordEncryptionFileProperties
Globals.Sheet1.Range("B1", "B4").Columns.AutoFit()
End Sub
private void WorkbookPasswordOptions()
{
if (!this.HasPassword)
{
this.Password = GetPasswordFromUserInput();
this.SetPasswordEncryptionOptions(
"Microsoft RSA SChannel Cryptographic Provider",
"RC4", 128, true);
}
// Display the password properties in Sheet1.
Globals.Sheet1.Range["A1"].Value2 =
"Password Encryption Provider:";
Globals.Sheet1.Range["A2"].Value2 =
"Password Encryption Algorithm:";
Globals.Sheet1.Range["A3"].Value2 =
"Password Encryption Key Length:";
Globals.Sheet1.Range["A4"].Value2 =
"Password Encryption File Properties:";
Globals.Sheet1.Range["A1", "A4"].Columns.AutoFit();
Globals.Sheet1.Range["B1"].Value2 =
this.PasswordEncryptionProvider;
Globals.Sheet1.Range["B2"].Value2 =
this.PasswordEncryptionAlgorithm;
Globals.Sheet1.Range["B3"].Value2 =
this.PasswordEncryptionKeyLength;
Globals.Sheet1.Range["B4"].Value2 =
this.PasswordEncryptionFileProperties;
Globals.Sheet1.Range["B1", "B4"].Columns.AutoFit();
}
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.