Vamos aprender como manter nossos arquivos de planilha seguros para que apenas as pessoas certas possam usá-los. Anteriormente, falamos sobre adicionar marcas d’água de texto e imagem às planilhas do Excel para impedir que alguém as use de maneira incorreta. Agora, veremos como proteger com senha um arquivo do Excel usando Java. Também descobriremos como alterar a senha existente e, finalmente, como remover programaticamente a senha de planilhas protegidas para desproteger arquivos do Excel.

Proteger arquivos do Excel programaticamente com senha - Bloquear Desbloquear

Os seguintes tópicos são discutidos abaixo:

API Java para bloquear e desbloquear arquivos do Excel

Para bloquear e desbloquear documentos, usaremos GroupDocs.Merger for Java. Essa API permite adicionar, alterar e remover recursos de segurança de senha para os documentos dentro dos aplicativos. Além de proteger e desproteger planilhas do Excel, a API fornece muitos outros recursos, como mesclagem e divisão, explicados na documentação.

Você pode baixar o arquivo JAR da seção de downloads ou usar as configurações mais recentes de repositório e dependência Maven em seus aplicativos Java.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-merger</artifactId>
        <version>23.8</version>
</dependency>

Proteger arquivos do Excel com senha usando Java - Bloquear planilhas

Bloquear planilha com senha

Vamos adicionar segurança ao arquivo do Excel adicionando uma proteção por senha e bloqueio de planilhas. As etapas a seguir mostram como proteger com senha planilhas do Excel usando Java.

  1. Configure a senha usando a classe AddPasswordOptions.
  2. Carregue o arquivo Excel (XLS/XLSX) com a classe Merger.
  3. Bloqueie o arquivo adicionando uma senha usando o método addPassword.
  4. Preserve a planilha protegida usando o método salvar.

O seguinte código Java adiciona a senha ao arquivo do Excel para segurança.

/*
 * Proteger com senha planilhas do Excel usando Java
 */
AddPasswordOptions addOptions = new AddPasswordOptions("mySECRETpassWORD");

Merger merger = new Merger("path/spreadsheet.xlsx");
merger.addPassword(addOptions);
merger.save("path/protected-spreadsheet.xlsx");

Isso é o que você verá quando executar o código fornecido. Se você tentar abrir o arquivo da planilha, o editor ou visualizador solicitará sua senha como forma de confirmar sua autorização.

Digite a senha para o arquivo protegido

Atualize a senha existente de arquivos do Excel usando Java

Sua senha foi acidentalmente revelada? Tenha mais cuidado no futuro. Vamos modificá-lo, optando por um novo e complexo. As etapas a seguir permitem que você altere a senha atual de seu arquivo de planilha em seu aplicativo Java em Java.

  1. Comece configurando o LoadOptions com sua senha atual.
  2. Em seguida, prepare as Opções de atualização de senha usando a nova senha.
  3. Carregue o arquivo XLS/XLSX usando a classe Merger e as opções de carregamento.
  4. Agora, altere a senha existente usando o método updatePassword.
  5. Conclua salvando o arquivo com a senha atualizada por meio do método save.

Aqui está o trecho de código para alterar a senha existente do arquivo de planilha.

/*
 * Atualize a senha dos arquivos de planilha protegidos usando Java
 */
LoadOptions loadOptions = new LoadOptions("mySECRETpassWORD");
UpdatePasswordOptions updateOptions = new UpdatePasswordOptions("TOPSECRET_pa22WORD");

Merger merger = new Merger("path/protected-spreadsheet.xlsx", loadOptions);
merger.updatePassword(updateOptions);
merger.save("path/pwd-changed-spreadsheet.xlsx");

Remover senha para desproteger arquivos de planilha do Excel usando Java - Desbloquear XLS/XLSX

Planilha desbloqueada - Senha removida

Uma vez que suas planilhas estejam seguras, você pode facilmente eliminar a senha para facilitar o acesso. As etapas subsequentes descrevem o processo de desbloqueio de um arquivo Excel eliminando sua senha usando Java.

  1. Configure LoadOptions usando a senha existente do arquivo.
  2. Carregue o arquivo de planilha utilizando a classe Merger juntamente com as opções de carregamento.
  3. Apague a senha atual usando o método removePassword.
  4. Salve o arquivo de planilha desbloqueado usando o método salvar.

O trecho de código Java abaixo demonstra como desbloquear um arquivo do Excel eliminando sua senha atual. Isso concede acesso irrestrito sem exigir qualquer autorização.

/*
 * Remova a senha dos arquivos de planilha do Excel usando Java
 */
LoadOptions loadOptions = new LoadOptions("mySECRETpassWORD");

Merger merger = new Merger("path/protected-spreadsheet.xlsx", loadOptions);
merger.removePassword();
merger.save("path/unlocked-spreadsheet.xlsx");

Conclusão

Vamos concluir o que aprendemos hoje. Começamos com o arquivo de planilha Excel simples (XLS/XLSX) e adicionamos proteção por senha programaticamente usando um pequeno código Java. Em seguida, alteramos a senha existente dessa planilha protegida. Por fim, aprendemos como remover a senha do arquivo protegido para desproteger a planilha do Excel. Agora você pode criar seu próprio protetor de senha e aplicativo de remoção de senha usando a API Java.

Para saber mais sobre GroupDocs.Merger for Java, visite a documentação. Em caso de dúvidas, contate-nos através do fórum.

Obtenha uma licença de API gratuita

Você pode obter uma licença temporária gratuita para usar a API sem as limitações de avaliação.

Veja também