Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
O seguinte trecho de código também funciona com a biblioteca Aspose.PDF.Drawing.
Para definir privilégios em um arquivo PDF, crie um objeto da classe DocumentPrivilege e especifique os direitos que você deseja aplicar ao documento. Uma vez que os privilégios tenham sido definidos, passe este objeto como um argumento para o método Encrypt do objeto Document. O seguinte trecho de código mostra como definir os privilégios de um arquivo PDF.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetPrivilegesOnExistingPdfFile()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
{
// Instantiate Document Privileges object
// Apply restrictions on all privileges
var documentPrivilege = Aspose.Pdf.Facades.DocumentPrivilege.ForbidAll;
// Only allow screen reading
documentPrivilege.AllowScreenReaders = true;
// Encrypt the file with User and Owner password
// Need to set the password, so that once the user views the file with user password
// Only screen reading option is enabled
document.Encrypt("user", "owner", documentPrivilege, Aspose.Pdf.CryptoAlgorithm.AESx128, false);
// Save PDF document
document.Save(dataDir + "SetPrivileges_out.pdf");
}
}
Você pode usar o método Encrypt do objeto Document para criptografar um arquivo PDF. Você pode passar a senha do usuário, a senha do proprietário e permissões para o método Encrypt. Além disso, você pode passar qualquer valor do enum CryptoAlgorithm. Este enum fornece diferentes combinações de algoritmos de criptografia e tamanhos de chave. Você pode passar o valor de sua escolha. Finalmente, salve o arquivo PDF criptografado usando o método Save do objeto Document.
Por favor, especifique senhas de usuário e proprietário diferentes ao criptografar o arquivo PDF.
O seguinte trecho de código mostra como criptografar arquivos PDF.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void EncryptPdfFile()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "Encrypt.pdf"))
{
// Encrypt PDF
document.Encrypt("user", "owner", 0, Aspose.Pdf.CryptoAlgorithm.RC4x128);
// Save PDF document
document.Save(dataDir + "Encrypt_out.pdf");
}
}
Cada vez mais, os usuários estão trocando arquivos PDF com criptografia para evitar acesso não autorizado a documentos, como impressão/cópia/compartilhamento/extração de informações sobre o conteúdo de um arquivo PDF. Hoje, é a melhor escolha para criptografar um arquivo PDF porque mantém a confidencialidade e integridade do conteúdo. Nesse sentido, há uma necessidade de acessar o arquivo PDF criptografado, uma vez que tal acesso só pode ser obtido por um usuário autorizado. Além disso, as pessoas estão procurando várias soluções para descriptografar arquivos PDF na Internet.
É melhor resolver esse problema uma vez usando a biblioteca Aspose.PDF.
Para descriptografar o arquivo PDF, você primeiro precisa criar um objeto Document e abrir o PDF usando a senha do proprietário. Depois disso, você precisa chamar o método Decrypt do objeto Document. Finalmente, salve o arquivo PDF atualizado usando o método Save do objeto Document. O seguinte trecho de código mostra como descriptografar o arquivo PDF.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void DecryptPdfFile()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Open PDF document with password
using (var document = new Aspose.Pdf.Document(dataDir + "Decrypt.pdf", "password"))
{
// Decrypt PDF
document.Decrypt();
// Save PDF document
document.Save(dataDir + "Decrypt_out.pdf");
}
}
Você pode criptografar um documento para que apenas os proprietários dos certificados que você especificar durante a criptografia possam abri-lo. Para criptografar o documento, você precisará dos certificados públicos de todos os destinatários. Para abrir o documento, o destinatário deve ter o certificado público e o certificado de chave privada correspondente. Se o destinatário estiver abrindo o documento no Adobe Acrobat, o certificado deve estar instalado no armazenamento de certificados. Para abrir o documento usando Aspose.Pdf, você pode usar um certificado instalado no armazenamento ou um arquivo PFX.
Se você deseja mudar a senha de um arquivo PDF, primeiro precisa abrir o arquivo PDF usando a senha do proprietário com o objeto Document. Depois disso, você precisa chamar o método ChangePasswords do objeto Document. Você precisa passar a senha atual do proprietário junto com a nova senha do usuário e a nova senha do proprietário para este método. Finalmente, salve o arquivo PDF atualizado usando o método Save do objeto Document.
- A Senha do Usuário, se definida, é o que você precisa fornecer para abrir um PDF. O Acrobat/Reader solicitará que o usuário insira a senha do usuário. Se não estiver correta, o documento não será aberto.
- A Senha do Proprietário, se definida, controla permissões, como impressão, edição, extração, comentários, etc. O Acrobat/Reader não permitirá essas ações com base nas configurações de permissão. O Acrobat exigirá essa senha se você quiser definir/mudar permissões.
O seguinte trecho de código mostra como mudar a senha de um arquivo PDF.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ChangePassword()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Open PDF document with password
using (var document = new Aspose.Pdf.Document(dataDir + "ChangePassword.pdf", "owner"))
{
// Change password
document.ChangePasswords("owner", "newuser", "newowner");
// Save PDF document
document.Save(dataDir + "ChangePassword_out.pdf");
}
}
Aspose.PDF for .NET fornece grandes capacidades de lidar com documentos PDF. Ao usar a classe Document do namespace Aspose.PDF para abrir um documento PDF que está protegido por senha, precisamos fornecer as informações da senha como um argumento para o construtor Document e, caso essa informação não seja fornecida, uma mensagem de erro é gerada. Na verdade, ao tentar abrir um arquivo PDF com o objeto Document, o construtor tenta ler o conteúdo do arquivo PDF e, caso a senha correta não seja fornecida, uma mensagem de erro é gerada (isso acontece para evitar acesso não autorizado ao documento).
Ao lidar com arquivos PDF criptografados, você pode se deparar com o cenário em que estaria interessado em detectar se um PDF tem uma senha de abertura e/ou uma senha de edição. Às vezes, existem documentos que não requerem informações de senha ao abri-los, mas exigem informações para editar o conteúdo do arquivo. Portanto, para atender aos requisitos acima, a classe PdfFileInfo presente em Aspose.PDF.Facades fornece as propriedades que podem ajudar a determinar as informações necessárias.
PdfFileInfo contém três propriedades para obter informações sobre a segurança do documento PDF.
Às vezes, há uma necessidade de determinar a senha correta a partir de um array de senhas e abrir o documento com a senha correta. O seguinte trecho de código demonstra os passos para iterar pelo array de senhas e tentar abrir o documento com a senha correta.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void DetermineCorrectPasswordFromArray()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
using (var info = new Aspose.Pdf.Facades.PdfFileInfo())
{
// Bind PDF document
info.BindPdf(dataDir + "IsPasswordProtected.pdf");
// Determine if the source PDF is encrypted
Console.WriteLine("File is password protected " + info.IsEncrypted);
String[] passwords = new String[5] { "test", "test1", "test2", "test3", "sample" };
for (int passwordcount = 0; passwordcount < passwords.Length; passwordcount++)
{
try
{
using (var document = new Aspose.Pdf.Document(dataDir + "IsPasswordProtected.pdf", passwords[passwordcount]))
{
if (document.Pages.Count > 0)
{
Console.WriteLine("Number of Page in document are = " + document.Pages.Count);
}
}
}
catch (Aspose.Pdf.InvalidPasswordException)
{
Console.WriteLine("Password = " + passwords[passwordcount] + " is not correct");
}
}
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.