Apidog Docs
🇧🇷 Português (Brasil)
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇧🇷 Português (Brasil)
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇧🇷 Português (Brasil)
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
  1. Boas práticas
  • Centro de Aprendizado da Apidog
  • Primeiros passos
    • Introdução ao Apidog
    • Conceitos básicos no Apidog
    • Navegando pelo Apidog
    • Início rápido
      • Visão geral
      • Criando um Endpoint
      • Fazendo uma Requisição
      • Adicionando uma assertiva
      • Criação de Cenários de Teste
      • Compartilhamento da documentação da API
      • Explore Mais
    • Migração para o Apidog
      • Visão geral
      • Importação Manual
      • Importação Agendada (Vincular Fontes de Dados)
      • Opções de importação
      • Exportar Dados
      • Importar de
        • Importar do Postman
        • Importar especificação OpenAPI
        • Importar cURL
        • Importar Markdowns
        • Importar do Insomnia
        • Importar do apiDoc
        • Importar arquivo .har
        • Importar WSDL
  • Dados de API mock
    • Visão geral
    • Smart Mock
    • Mock personalizado
    • Sequência de Prioridade do Mock
    • Scripts de Mock
    • Mock na Nuvem
    • Mock do Runner Auto-hospedado
    • Idioma do Mock (Locales)
  • Conta e preferências
    • Configurações da Conta
    • Geração de Token de Acesso OpenAPI
    • Notificação
    • Configurações de idioma
    • Teclas de Atalho
    • Configuração de Proxy de Rede
    • Backup de Dados
    • Atualizando o Apidog
    • Exclusão da conta
    • Recursos Experimentais
  • Enviar requisições
    • Visão geral
    • Depuração de SSE
    • Cliente MCP
    • Socket.IO
    • WebSocket
    • Webhook
    • SOAP ou WebService
    • GraphQL
    • gRPC
    • Use Agentes de Proxy de Requisição para Depuração
    • Criar requisições
      • Histórico de Requisições
      • Conceitos Básicos de Requisições
      • Parâmetros e Corpo
      • Cabeçalhos da Requisição
      • Configurações da Requisição
      • Depurar Requisições
      • Salvando Requisições como Endpoints
      • HTTP/2
    • Autenticação e autorização
      • Visão geral
      • Certificados de CA e de Cliente
      • Tipos de autorização
      • Digest Auth
      • OAuth 1.0
      • OAuth 2.0
      • Autenticação Hawk
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • Resposta e cookies
      • Visualização de respostas de API
      • Gerenciamento de Cookies
      • Visão geral
  • Desenvolver e depurar APIs
    • Visão geral
    • Gerando Requisições
    • Envio de Requisições
    • Casos de Depuração
    • Casos de teste
    • Valores Dinâmicos
    • Validação de Respostas
    • Design-First vs Request-First
    • Geração de Código
    • Ambientes e variáveis
      • Visão geral
      • Usando variáveis
      • Gerenciamento de Ambientes
    • Segredos do cofre
      • Visão geral
      • HashiCorp Vault
      • Azure Key Vault
      • AWS Secrets Manager
    • Módulos de valores dinâmicos
      • Airline
      • Animal
      • Cor
      • Comércio
      • Empresa
      • Banco de Dados
      • Tipo de dados
      • Data
      • Finanças
      • Comida
      • Git
      • Hacker
      • Helpers
      • Imagem
      • Internet
      • Localização
      • Lorem
      • Música
      • Número
      • Pessoa
      • Telefone
      • Ciência
      • String
      • Sistema
      • Veículo
      • Palavra
    • Pré e pós-processadores
      • Visão geral
      • Assertiva
      • Extrair Variável
      • Espera
      • Segurança
      • Operações de banco de dados
        • Visão geral
        • MySQL
        • MongoDB
        • Redis
        • Cliente Oracle
      • Uso de scripts
        • Visão geral
        • Scripts de Pré-processador
        • Scripts de Pós-processamento
        • Scripts Públicos
        • Referência de Scripts do Postman
        • Chamando Outras Linguagens de Programação
        • Usando bibliotecas JS
        • Visualização de Respostas
        • Exemplos de scripts
          • Scripts de assertiva
          • Usando Variáveis
          • Modificando Requisições
          • Outros exemplos
    • Depuração de APIs
      • AI Agent Debugger
      • A2A Debugger
  • Projetar APIs
    • Visão geral
    • Criar um Novo Projeto de API
    • Conceitos Básicos de Endpoint
    • Diretrizes de Design de API
    • Módulo
    • Configurar vários exemplos de corpo da requisição
    • Componentes
    • Campos Comuns
    • Parâmetros Globais
    • Histórico de Alterações do Endpoint
    • Comentários
    • Gerenciamento de Endpoints em Lote
    • API de Protocolo Personalizado
    • Modo Spec-first (Beta)
    • Esquemas de segurança
      • Visão geral
      • Criar um esquema de segurança
      • Usar o Security Scheme
      • Esquema de segurança na documentação online
    • Recursos avançados
      • Campos de Endpoint Personalizados
      • Cenários de Teste Associados
      • Status do endpoint
      • Aparência das Listas de Parâmetros
      • Identificação Única de Endpoint
    • Schemas
      • Visão geral
      • Criar um Novo Schema
      • Criar um Schema
      • Gerar schemas a partir de JSON etc.
      • oneOf, allOf, anyOf
      • Usando Discriminator
  • Branches
    • Visão geral
    • Criando uma Branch de Sprint
    • Testando APIs em uma Branch
    • Projetando APIs em uma branch
    • Mesclando branches de sprint
    • Gerenciando Branches de Sprint
    • AI Branch (Beta)
  • Testes de API
    • Visão geral
    • Cenários de teste
      • Criar um cenário de teste
      • Passar Dados Entre Requisições
      • Condições de Controle de Fluxo
      • Sincronizar dados de endpoints e casos de endpoint
      • Importar Endpoints e Casos de Endpoint de Outros Projetos
      • Exportar Cenários de Teste
    • Relatórios de teste
      • Relatórios de teste
    • Executar cenários de teste
      • Executar um cenário de teste
      • Executar cenários de teste em lote
      • Testes Orientados por Dados
      • Dados de Teste Compartilhados
      • Tarefas agendadas
      • Gerenciar o ambiente de execução de APIs de outros projetos
    • Suíte de testes
      • Visão geral
      • Criar Uma Suíte de Testes
      • Orquestrar Suite de Testes
      • Executar Suítes de Teste Localmente
      • Executar Suítes de Teste Via CLI
      • Tarefas agendadas
    • Testar APIs
      • Teste de integração
      • Teste de desempenho
      • Testes de Ponta a Ponta
      • Teste de regressão
      • Teste de Contrato
    • Apidog CLI
      • Visão geral
      • Instalando e executando o Apidog CLI
      • Opções da CLI do Apidog
    • CI/CD
      • Visão geral
      • Integrar com Github Actions
      • Integre com o Gitlab
      • Integrar com o Jenkins
      • Acionar teste por commit do Git
  • Publicar documentação de API
    • Visão geral
    • Tecnologias de API Suportadas
    • Compartilhamento rápido
    • Visualização da documentação da API
    • Documentação em Markdown
    • Publicação de sites de documentação
    • Página de login personalizada
    • Layouts Personalizados
    • CSS, JavaScript e HTML personalizados
    • Domínio Personalizado
    • Recursos de IA
    • Configurações de SEO
    • Configurações avançadas
      • Pesquisa na documentação
      • Proxy CORS
      • Integração com o Google Analytics
      • Configurações da Árvore de Pastas
      • Configurações de Visibilidade
      • Incorporação de valores em URLs de documentação
    • Versões da API
      • Visão geral
      • Criando versões de API
      • Publicação de Versões da API
      • Compartilhamento de Endpoints com Versões da API
  • Recursos de IA
    • Visão geral
    • Habilitando recursos de IA
    • Geração de Casos de Teste
    • Modificando esquemas com IA
    • Verificação de conformidade de endpoint
    • Verificação de Completude da Documentação da API
    • Nomeação de Campos com IA
    • Perguntas frequentes
  • Servidor MCP do Apidog
    • Visão geral
    • Conectar projeto Apidog à IA
    • Conectar documentação publicada à IA
    • Conectar Arquivos OpenAPI à IA
  • Boas práticas
    • Como lidar com assinaturas de API
    • Acessando APIs protegidas por OAuth 2.0
    • Fluxo de Trabalho de Colaboração
    • Gerenciamento do Estado de Autenticação
  • Espaço offline
    • Visão geral
  • Administração
    • Gerenciamento de projetos
      • Gerenciamento de Projetos
      • Configurações de notificação
      • Gerenciamento de membros do projeto
      • Recursos do projeto
        • Conexão com Banco de Dados
        • Conexão Git
    • Gerenciamento de equipes
      • Gerenciando equipes
      • Gerenciando membros da equipe
      • Atividades da Equipe
      • Funções e permissões da equipe
      • Recursos da equipe
        • General Runner
        • Variáveis de Equipe
        • Agente de Proxy de Requisições
      • Colaborações em tempo real
        • Colaboração em Equipe
    • Checklist de integração
      • Conceitos Básicos
      • Guia de Onboarding
    • Gerenciamento da organização
      • Gerenciamento de Organização
      • Funções e permissões da organização
      • Gerenciamento de planos
        • Gerentes de cobrança em organizações
      • Single Sign-On (SSO)
        • Visão geral do SSO
        • Configurando o Microsoft Entra ID
        • Configurando o Okta
        • Configurando SSO para uma organização
        • Gerenciamento de contas de usuário
        • Mapeamento de Grupos para Equipes
      • Provisionamento SCIM
        • Introdução ao provisionamento SCIM
        • Microsoft Entra ID
        • Okta
      • Recursos da organização
        • Runner Auto-Hospedado
  • Apidog Europe
    • Apidog Europe
  • Cobrança
    • Visão geral
    • Créditos
    • Atualizando seu plano
    • Métodos de Pagamento Alternativos
    • Gerenciamento de assinaturas
    • Movendo equipes pagas para organizações
  • Complementos
    • Hub de APIs
    • Plugin Apidog Intellij IDEA
    • Extensão do navegador
      • Chrome
      • Microsoft Edge
    • Proxy de requisições
      • Proxy de Requisição na Web
      • Proxy de Requisição em Documentação Compartilhada
      • Proxy de Requisição no Cliente
  • Dados e segurança
    • Armazenamento e Segurança de Dados
    • Privacidade e Segurança dos Dados do Usuário
    • Roteamento de Requisições e Segurança de Dados
  • Referências
    • Abordagem API Design-First
    • Extensões da especificação OpenAPI do Apidog
    • JSONPath
    • XPath
    • Expressões Regulares
    • JSON Schema
    • Formato de Arquivo CSV
    • Instalando o ambiente Java
    • Ambiente de Implantação do Runner
    • Sintaxe Markdown do Apidog
    • Extensões Swagger do Apidog
      • Visão geral
      • x-apidog-folder
      • x-apidog-status
      • x-apidog-name
      • x-apidog-maintainer
    • Extensões JSON Schema do Apidog
      • Visão geral
      • x-apidog-mock
      • x-apidog-orders
      • x-apidog-enum
  • Central de suporte
  1. Boas práticas

Como lidar com assinaturas de API

Assinaturas de API são mecanismos de segurança que verificam a autenticidade e a integridade da requisição. Este guia demonstra como automatizar a geração de assinaturas no Apidog, eliminando a necessidade de recuperar assinaturas manualmente para cada requisição.

Estratégia de automação de assinaturas#

Em vez de acessar manualmente um endpoint de assinatura antes de cada requisição, use os recursos de script do Apidog para:
1.
Criar um script público que implemente a lógica de assinatura
2.
Gerar assinaturas automaticamente usando parâmetros da requisição
3.
Anexar assinaturas às requisições por meio de scripts ou variáveis de ambiente
4.
Referenciar o script público nos pré-processadores de API

Abordagem de implementação#

Método 1: Modificação direta por script#

Adicione parâmetros de assinatura e modifique as informações da requisição diretamente por meio de scripts, sem usar variáveis de ambiente.
Vantagens:
Não há gerenciamento de variáveis de ambiente
Atualizações imediatas de parâmetros
Configuração mais simples

Método 2: Variáveis de ambiente#

Gere a assinatura e grave-a em uma variável de ambiente; depois, referencie a variável nos parâmetros da API.
Vantagens:
Reutilizável em várias requisições
Depuração e monitoramento mais fáceis
Gerenciamento centralizado de assinaturas

Método 3: Programas externos#

Para assinaturas implementadas em outras linguagens, use o método dog.execute para chamar programas externos.

Exemplo: assinatura baseada em MD5#

Regras de geração de assinatura#

Etapa 1: Criar a string de parâmetros
1.
Colete todos os parâmetros não vazios no conjunto M
2.
Classifique os parâmetros por código ASCII em ordem crescente (ordem de dicionário)
3.
Concatene os parâmetros no formato de chave-valor de URL: key1=value1&key2=value2...
4.
Resultado: stringA
Regras importantes:
Classifique os nomes dos parâmetros por código ASCII em ordem crescente
Valores de parâmetro vazios são excluídos da assinatura
Os nomes dos parâmetros diferenciam maiúsculas de minúsculas
O próprio parâmetro sign é excluído da assinatura
Etapa 2: Gerar a assinatura
1.
Concatene a chave ao final de stringA para obter stringSignTemp
2.
Aplique o algoritmo MD5 a stringSignTemp
3.
Converta o resultado para letras maiúsculas para obter signValue

Implementação de script público#

Exemplo: assinatura de API de tradução#

Regras de geração de assinatura#

Etapa 1: Concatenar a string
Concatene os seguintes valores em ordem:
appid: ID do aplicativo
q: Texto a ser traduzido (codificação UTF-8)
salt: Número aleatório
key: Chave atribuída pela plataforma (disponível no console de gerenciamento)
Resultado: appid + q + salt + key
Etapa 2: Gerar a assinatura
Aplique o algoritmo MD5 à string concatenada para obter uma assinatura de 32 bits em letras minúsculas.
Observações importantes:
O texto a ser traduzido (q) deve estar em codificação UTF-8
Ao concatenar appid+q+salt+key, NÃO aplique codificação de URL a q
Depois que a assinatura for gerada, aplique codificação de URL a q antes de enviar a requisição HTTP

Exemplo de requisição#

Implementação de script público#

Práticas recomendadas#

PráticaDescrição
Use variáveis de ambienteArmazene chaves confidenciais em variáveis de ambiente, não em scripts
Valide parâmetrosVerifique os parâmetros obrigatórios antes de gerar assinaturas
Registre logs para depuraçãoUse console.log() para depurar problemas de geração de assinatura
Trate casos extremosConsidere valores vazios, caracteres especiais e codificação
Centralize a lógicaUse scripts públicos para evitar duplicar a lógica de assinatura
Teste cuidadosamenteVerifique a geração de assinatura com casos de teste conhecidos
Modified at 2026-06-11 10:21:25
Previous
Conectar Arquivos OpenAPI à IA
Next
Acessando APIs protegidas por OAuth 2.0
Built with