Metodo WorkbookBase.SetPasswordEncryptionOptions
Imposta le opzioni di crittografia della cartella di lavoro che utilizza una password.
Spazio dei nomi: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel.v4.0.Utilities (in Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)
Sintassi
'Dichiarazione
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
)
Parametri
- passwordEncryptionProvider
Tipo: System.Object
Stringa relativa al provider della crittografia in cui viene rilevata la distinzione tra maiuscole e minuscole.
- passwordEncryptionAlgorithm
Tipo: System.Object
Una serie la distinzione tra maiuscole e minuscole del nome breve algoritmico (IE.. "RC4").
- passwordEncryptionKeyLength
Tipo: System.Object
Lunghezza della chiave di crittografia, ovvero un valore multiplo di 8 (40 o superiore).
- passwordEncryptionFileProperties
Tipo: System.Object
true (predefinito) per crittografare le proprietà di file.
Note
I parametri PasswordEncryptionProvider, PasswordEncryptionAlgorithm e PasswordEncryptionKeyLength non sono indipendenti tra loro.Un provider di crittografia selezionato limita il set dei valori selezionabili relativi agli algoritmi e alla lunghezza della chiave.
Per il parametro PasswordEncryptionKeyLength non esiste un limite intrinseco relativo all'intervallo della lunghezza della chiave.L'intervallo è determinato dal provider del servizio di crittografia (CSP, Cryptographic Service Provider) il quale determina anche l'algoritmo crittografico.
Parametri facoltativi
Per informazioni sui parametri facoltativi, vedere Parametri facoltativi nelle soluzioni Office.
Esempi
Nell'esempio di codice riportato di seguito viene controllato il valore della proprietà HasPassword per determinare se la cartella di lavoro è protetta da password.Se la cartella di lavoro non è protetta da password, la proprietà Password viene impostata su una password ottenuta dall'input dell'utente. Viene quindi chiamato il metodo SetPasswordEncryptionOptions per impostare l'algoritmo di crittografia, la lunghezza della chiave e il nome del provider della crittografia, nonché per abilitare la crittografia delle proprietà del file.Vengono infine visualizzati i valori delle proprietà PasswordEncryptionProvider, PasswordEncryptionAlgorithm, PasswordEncryptionKeyLength e PasswordEncryptionFileProperties nel foglio di lavoro Sheet1.Nell'esempio si presuppone che il metodo GetPasswordFromUserInput sia definito altrove.
Questo esempio è valido per una personalizzazione a livello di 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();
}
Sicurezza di .NET Framework
- Attendibilità totale per il chiamante immediato. Impossibile utilizzare questo membro in codice parzialmente attendibile. Per ulteriori informazioni, vedere Utilizzo di librerie da codice parzialmente attendibile.