Compartilhar via


Método WorkbookBase.SetPasswordEncryptionOptions

Defina as opções para criptografar a pasta de trabalho usando uma senha.

Namespace:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel.v4.0.Utilities (em Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)

Sintaxe

'Declaração
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
    Uma cadeia de caracteres maiúsculas de minúsculas do provedor de criptografia.
  • passwordEncryptionAlgorithm
    Tipo: System.Object
    Uma cadeia de caracteres maiúsculas de minúsculas de nome curto algorítmico (isto é RC4 “”).
  • passwordEncryptionKeyLength
    Tipo: System.Object
    O comprimento de chave de criptografia, que é um múltiplas de 8 (40 ou maior que).
  • passwordEncryptionFileProperties
    Tipo: System.Object
    true (padrão) para criptografar as propriedades de arquivo.

Comentários

PasswordEncryptionProvider, PasswordEncryptionAlgorithm, e os parâmetros de PasswordEncryptionKeyLength não são independentes de se. Um provedor selecionado de criptografia limita o conjunto de algoritmos e de comprimento principal que podem ser escolhidos.

Para o parâmetro de PasswordEncryptionKeyLength não há um limite inerente no intervalo de comprimento principal. O intervalo é determinado pelo provedor de serviços de criptografia que também determina o algoritmo de criptografia.

Parâmetros Opcionais

Para obter informações sobre parâmetros opcionais, consulte Parâmetros opcionais em soluções do Office.

Exemplos

O exemplo de código a seguir verifica o valor da propriedade HasPassword para determinar se a pasta de trabalho é protegida por senha. Caso a pasta de trabalho não seja protegida por senha, o exemplo define a propriedade Password como uma senha obtida junto à entrada do usuário e, em seguida, chama o método SetPasswordEncryptionOptions para definir o algoritmo de criptografia, definir o tamanho da chave, definir o nome do provedor de criptografia e permitir a criptografia da propriedade do arquivo. Em seguida, o exemplo exibe os valores das propriedades PasswordEncryptionProvider, de PasswordEncryptionAlgorithm, PasswordEncryptionKeyLength e PasswordEncryptionFileProperties na planilha Sheet1. Este exemplo pressupõe que o método GetPasswordFromUserInput esteja definido em outro lugar.

Este exemplo destina-se a uma personalização no nível de 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();
}

Segurança do .NET Framework

Consulte também

Referência

WorkbookBase Classe

Namespace Microsoft.Office.Tools.Excel