Entrar com a conta da Microsoft
Entrar ou criar uma conta.
Olá,
Selecionar uma conta diferente.
Você tem várias contas
Escolha a conta com a qual você deseja entrar.

Este artigo descreve como você pode assinar digitalmente um macros no Windows usando um certificado. Se você ainda não tiver um certificado digital, precisará obter um.

Dica: Para usar ou testar projetos de macro em seu próprio computador, você pode criar seu próprio certificado de autoassinagem usando a ferramenta Selfcert.exe. Você encontrará mais detalhes sobre isso abaixo.

Obter um certificado digital

Você pode obter um certificado digital de uma autoridade de certificado comercial (AC), de seu administrador de segurança interna ou profissional de TI (tecnologia da informação).

Para saber mais sobre as autoridades de certificado que oferecem serviços para produtos da Microsoft, confira a lista de membros do programa de certificado raiz da Microsoft.

Como um certificado digital criado por você não é emitido por uma autoridade de certificação oficial, os projetos de macro assinados usando esse tipo de certificado são denominados projetos autoassinados. O Microsoft Office confia em um certificado autoassinado somente em um computador que tenha esse certificado adicionado à pasta Trusted Root Certificação Raiz Confiável no repositório Certificados – Usuário Atual. Isso o torna bom para testar ou usar em seu próprio computador ou um número muito pequeno de computadores que você gerencia, mas não é muito bom para distribuir projetos de macros para outras pessoas.

Criar um certificado de autenticação

  1. Vá para C:\Arquivos de Programa (x86)\Microsoft Office\root\Office16.

    Dica: Se você não encontrá-lo nesta pasta, tente C:\Arquivos de Programa\Microsoft Office\root\Office16

  2. Clique em SelfCert.exe. A caixa de diálogo Criar Certificado Digital é exibida.

  3. Na caixa O nome do seu certificado, digite um nome descritivo para o certificado.

  4. Clique em OK.

  5. Quando a mensagem Êxito ao Criar SelfCert for exibida, clique em OK.

  1. Vá para C:\Arquivos de Programas\Microsoft Office\<versão do Office>\.

  2. Clique em SelfCert.exe. A caixa de diálogo Criar Certificado Digital é exibida.

  3. Na caixa O nome do seu certificado, digite um nome descritivo para o certificado.

  4. Clique em OK.

  5. Quando a mensagem Êxito ao Criar SelfCert for exibida, clique em OK.

Exibir o certificado no repositório certificados pessoais

  1. Abra o Microsoft Edge.

  2. Insira edge://settings/privacy na barra de endereços.

  3. Role para baixo até a seção Segurança e selecione Gerenciar certificados.

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

  1. Abra o arquivo que contém o projeto de macro que você deseja assinar.

  2. Na guia Desenvolvedor, no grupo Código, clique em Visual Basic.

    Observação: Se a guia Desenvolvedor não estiver disponível: clique na guia Arquivo. Clique em Opções. Clique em Personalizar Faixa de Opções. Na lista Personalizar a Faixa de Opções, clique em Desenvolvedor e em OK.

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

  4. A caixa de diálogo Assinatura Digital será exibida.

  5. Selecione um certificado e clique em OK.

    Observação: Se você não tiver selecionado um certificado digital ou desejar usar outro, clique em Escolher. Selecione um certificado e clique em OK.

Adicionar um carimbo de tempo à sua assinatura

Quando as pessoas executam sua macro VBA, o Office marcar a assinatura e o certificado com o qual ela foi assinada. Adicionar um carimbo de tempo à sua assinatura significa que sua macro ainda será tratada como assinada, mesmo depois que seu certificado tiver expirado, desde que o certificado não seja revogado. Isso pode reduzir a interrupção para os usuários.

Um certificado que está meramente expirado ainda pode ser usado para validar o código, ele simplesmente não pode ser usado para assinar um novo código.

Para adicionar um carimbo de tempo, você precisa adicionar três chaves ao registro.

Cuidado:  A edição incorreta do Registro pode danificar seriamente o sistema. Antes de fazer alterações no Registro, recomendamos que você faça backup de todos os dados valiosos no computador.

Tecla

Tipo

Descrição

HKCU\Software\Microsoft\VBA\Security\TimeStampURL

REG_SZ 

A URL do servidor de carimbo de horário preferencial. (Obrigatório)

HKCU\Software\Microsoft\VBA\Security\TimeStampRetryCount

REG_DWORD

O número de vezes que o Visual Basic Editor tentará se conectar ao servidor de carimbo de hora antes de falhar. (Opcional – se você não definir isso, o Visual Basic Editor só tentará entrar em contato com o servidor uma vez)

HKCU\Software\Microsoft\VBA\Security\TimeStampRetryDelay  

REG_DWORD

O número de segundos (em milissegundos) que o Visual Basic Editor aguardará entre tentar novamente se conectar ao servidor de carimbo de hora. (Opcional – se você não definir isso, não haverá nenhum atraso entre as tentativas)

Depois de adicionar uma entrada TimeStampURL em trabalho, o Visual Basic Editor adicionará automaticamente um carimbo de hora sempre que você assinar digitalmente uma macro.

Observações adicionais

  • É recomendável que você assine macros somente depois que sua solução tiver sido testada e pronta para distribuição: quando o código em um projeto de macro assinado é alterado de qualquer maneira, sua assinatura digital é removida. No entanto, se você tiver o certificado digital válido que foi usado anteriormente para assinar o projeto no computador, o projeto de macro será automaticamente assinado novamente quando salvá-lo.

  • Uma maneira de impedir que os usuários alterem acidentalmente seu projeto de macro e invalidem sua assinatura é bloquear o projeto de macro antes de aplicar a assinatura. Sua assinatura digital garante que o projeto não tenha sido adulterado desde que você assinou, mas isso não prova que você escreveu o projeto. Mesmo que você tenha bloqueado seu projeto de macro, outro usuário ainda poderá substituir sua assinatura por outra assinatura. Os administradores corporativos também podem assinar novamente modelos e suplementos para garantir que apenas o conteúdo aprovado seja executado em computadores da empresa.

  • Se você criar um suplemento que adicione código a um projeto de macro, o código deverá determinar se o projeto será assinado digitalmente e notificar os usuários das consequências de qualquer alteração em um projeto assinado antes que eles prossigam.

  • Os usuários que usam certificados comerciais podem encontrar blocos devido à limitação de algoritmos de hash com suporte na assinatura. Você pode adicionar um valor de chave de registro DWORD V1HashEnhanced para escolher outro algoritmo de hash, em HKCU\SOFTWARE\Microsoft\VBA\Security com regras de algoritmo de valor (1 para SHA1, 2 para SHA256, 3 para SHA384, 4 para SHA512 e outros para MD5). Essa configuração está disponível nas versões mais recentes do canal CC.

Saiba mais

Habilitar ou desabilitar macros nos arquivos do Microsoft 365

Observação: 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 assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.

As comunidades ajudam você a fazer e responder perguntas, fazer comentários e ouvir especialistas com conhecimento avançado.

Essas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade do idioma?
O que afetou sua experiência?
Ao pressionar enviar, seus comentários serão usados para aprimorar os produtos e serviços da Microsoft. Seu administrador de TI poderá coletar esses dados. Política de Privacidade.

Agradecemos seus comentários!

×