Iniciar sessão com a Microsoft
Iniciar sessão ou criar uma conta.
Olá,
Selecione uma conta diferente.
Tem várias contas
Selecione a conta com a qual pretende iniciar sessão.

Este artigo descreve como pode assinar digitalmente um projeto de macro no Windows através de um certificado. Se ainda não tiver um certificado digital, terá de obter um.

Sugestão: Para utilizar ou testar projetos de macros no seu próprio computador, pode criar o seu próprio certificado de autoassinação com a ferramenta Selfcert.exe. Encontrará mais detalhes sobre o que se segue.

Obter um certificado digital

Pode obter um certificado digital a partir de uma autoridade de certificação comercial (AC) junto do seu administrador de segurança interna ou profissional de tecnologias de informação (TI).

Para saber mais sobre as autoridades de certificação que oferecem serviços para produtos Microsoft, consulte a lista de membros do programa de certificados de raiz da Microsoft.

Visto um certificado digital criado por si não ser emitido por uma autoridade de certificação fidedigna formal, os projetos de macro assinados através da utilização de um certificado deste tipo são conhecidos como projetos autoassinados. O Microsoft Office só confia em certificados autoassinados em computadores que tenham o certificado de autoassinatura adicionado à pasta Certificação de Raiz Fidedigna no arquivo Certificados – Utilizador Atual. Isto faz com que seja bom para testar ou utilizar no seu próprio computador ou um número muito pequeno de máquinas que gere, mas não é muito bom para distribuir projetos de macros para outras pessoas.

Criar um certificado autoassinado

  1. Aceda a C:\Programas (x86)\Microsoft Office\root\Office16.

    Sugestão: Se não o encontrar nesta pasta, experimente C:\Programas\Microsoft Office\root\Office16

  2. Clique em SelfCert.exe. É apresentada a caixa Criar Certificado Digital.

  3. Na caixa Nome do certificado, introduza um nome descritivo para o certificado.

  4. Clique em OK.

  5. Quando for apresentada a mensagem SelfCert efetuado com êxito, clique em OK.

  1. Aceda a C:\Program Files\Microsoft Office\<versão do Office>\.

  2. Clique em SelfCert.exe. É apresentada a caixa Criar Certificado Digital.

  3. Na caixa Nome do certificado, introduza um nome descritivo para o certificado.

  4. Clique em OK.

  5. Quando for apresentada a mensagem SelfCert efetuado com êxito, clique em OK.

Ver o certificado no arquivo de Certificados Pessoais

  1. Abra o Microsoft Edge.

  2. Introduza edge://settings/privacy na barra de endereço.

  3. Desloque-se para baixo até à secção Segurança e selecione Gerir certificados.

Assinar digitalmente um projeto de macro VBA no Excel, PowerPoint, Publisher, Visio, Outlook ou Word

  1. Abra o ficheiro que contém o projeto de macro que pretende assinar.

  2. No separador Programador, no grupo Código, clique em Visual Basic.

    Nota: Se o separador Programador não estiver disponível, clique no separador Ficheiro. Clique em Opções. Clique em Personalizar Friso. Na lista Personalizar o Friso, clique em Programador e, em seguida, clique em OK.

  3. No Visual Basic, no menu Ferramentas, clique em Assinatura Digital.

  4. É apresentada a caixa de diálogo Assinatura Digital.

  5. Selecione um certificado e clique em OK.

    Nota: Se não tiver selecionado um certificado digital ou pretender utilizar outro, clique em Escolher. Selecione um certificado e clique em OK.

Adicionar um carimbo de data/hora à sua assinatura

Quando as pessoas executam a sua macro VBA, o Office verifica a assinatura e o certificado com o qual foi assinado. Adicionar um carimbo de data/hora à sua assinatura significa que a macro continuará a ser tratada como assinada, mesmo depois de o certificado expirar, desde que o certificado não seja revogado. Isto pode reduzir a interrupção para os utilizadores.

Um certificado que está apenas expirado ainda pode ser utilizado para validar o código, mas não pode ser utilizado para assinar novo código.

Para adicionar um carimbo de data/hora, tem de adicionar três chaves ao seu registo.

Atenção:  A edição incorreta do registo pode danificar seriamente o sistema. Antes de fazer alterações ao registo, deve criar uma cópia de segurança de todos os dados importantes no computador.

Tecla

Tipo

Descrição

HKCU\Software\Microsoft\VBA\Security\TimeStampURL

REG_SZ 

O URL do servidor de carimbos de data/hora preferido. (Obrigatório)

HKCU\Software\Microsoft\VBA\Security\TimeStampRetryCount

REG_DWORD

O número de vezes que o visual basic Revisor tentará ligar ao servidor de carimbo de data/hora antes de falhar. (Opcional - Se não definir esta opção, o visual basic Revisor tentará apenas contactar o servidor uma vez)

HKCU\Software\Microsoft\VBA\Security\TimeStampRetryDelay  

REG_DWORD

O número de segundos (em milissegundos) que o Visual Basic Revisor aguardará entre tentar ligar novamente ao servidor de carimbos de data/hora. (Opcional - Se não definir esta opção, não haverá qualquer atraso entre as repetições)

Depois de adicionar uma entrada TimeStampURL de trabalho, o Visual Basic Revisor adicionará automaticamente um carimbo de data/hora sempre que assinar digitalmente uma macro.

Notas adicionais

  • Recomenda-se que assine macros apenas depois de a sua solução ter sido testada e pronta para distribuição: quando o código num projeto de macro assinado for alterado de qualquer forma, a respetiva assinatura digital é removida. Contudo, se tiver o certificado digital válido anteriormente utilizado para assinar o projeto no computador, o projeto de macro é novamente assinado de forma automática assim que for guardado.

  • Uma forma de impedir que os utilizadores alterem acidentalmente o seu projeto de macro e invalidem a sua assinatura é bloquear o projeto de macro antes de aplicar a assinatura. A sua assinatura digital garante que o projeto não foi adulterado desde que o assinou, mas não prova que escreveu o projeto. Mesmo que tenha bloqueado o seu projeto de macro, outro utilizador poderá ainda conseguir substituir a sua assinatura por outra assinatura. Os administradores empresariais também podem voltar a assinar modelos e suplementos para garantir que apenas o conteúdo aprovado é executado em computadores da empresa.

  • Se criar um suplemento que adiciona códigos a um projeto de macro, o código deverá determinar se o projeto é assinado digitalmente e notificar os utilizadores das consequências de modificar um projeto assinado antes de continuarem.

  • Os utilizadores que utilizam certificados comerciais podem encontrar blocos devido à limitação dos algoritmos hash suportados na assinatura. Pode adicionar um valor-chave de registo DWORD V1HashEnhanced para escolher outro algoritmo hash, em HKCU\SOFTWARE\Microsoft\VBA\Security com regras de algoritmo de valor (1 a SHA1, 2 a SHA256, 3 a SHA384, 4 a SHA512 e outros a MD5). Esta definição está disponível nas versões mais recentes do canal CC.

Saiba mais

Ativar ou desativar macros em ficheiros do Microsoft 365

Nota: Este artigo foi criado por uma pessoa com a assistência de uma inteligência artificial (IA).

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.

Estas informações foram úteis?

Quão satisfeito está com a qualidade do idioma?
O que afetou a sua experiência?
Ao selecionar submeter, o seu feedback será utilizado para melhorar os produtos e serviços da Microsoft. O seu administrador de TI poderá recolher estes dados. Declaração de Privacidade.

Obrigado pelo seu feedback!

×