Pular para o conteúdo
AdiosDocumentação
Explorar a documentação

API de segurança do gateway

Configure HTTPS, CORS e WAF para um nome de host controlado pela sua equipe.

Usar Autenticação da API para pedidos protegidos. Exemplos usam seus próprios IDs de recursos e um token temporário; exemplos de resposta salvos são sintéticos.

MétodoCaminhoOperação
GET/v1/gateway_security_profileListar os perfis de segurança do gateway
POST/v1/gateway_security_profileCriar perfil de segurança do gateway
GET/v1/gateway_security_profile/{id}Obter o perfil de segurança do gateway
PUT/v1/gateway_security_profile/{id}Atualizar o perfil de segurança do gateway
DELETE/v1/gateway_security_profile/{id}Excluir perfil de segurança do gateway

Listar os perfis de segurança do gateway

GET /v1/gateway_security_profile

Retorna uma lista paginada de GatewaySecurityProfile

Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.

Parâmetros

NomeLocalizaçãoObrigatórioDescrição
X-Tenant-IDcabeçalhosimID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico.
pageconsultanãoNúmero da página
per_pageconsultanãoItens por página

Exemplo de requisição

Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.

curl --fail-with-body --request GET "$ADIOS_API_URL/v1/gateway_security_profile" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID"

Resposta: HTTP 200

Lista de GatewaySecurityProfile

Campos de resposta

CampoTipoDescrição
dataarray
data[].cors_enabledbooleano
data[].cors_headersstringCabeçalhos de pedidos CORS separados por vírgulas
data[].cors_methodsstringMétodos HTTP separados por vírgulas
data[].cors_originsstringOrigens separadas por vírgulas ou *
data[].created_atinteiro(Timestamp Unix)
data[].deleted_atinteiro(Timestamp Unix)
data[].enabledbooleano
data[].force_httpsbooleano
data[].geo_policyobjetoPolítica opcional de permissão ou bloqueio por país no nível do host
data[].hostnamestring
data[].hsts_enabledbooleano
data[].max_body_bytesinteiroLimite opcional de tamanho do corpo da requisição. 0 usa o padrão da plataforma.
data[].profile_idstring
data[].team_idstring
data[].updated_atinteiro(Timestamp Unix)
data[].waf_custom_directivesstringDiretivas Coraza originais usadas quando waf_template=custom
data[].waf_modestringValores permitidos: off, monitor, block.
data[].waf_overridesobjetoAjustes estruturados do modelo (por exemplo, exclusões por caminho ou ativação e desativação de regras)
data[].waf_rule_exclusionsobjetoLista de exclusão gerenciada opcional. Exemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}]
data[].waf_templatestringModelo pré-configurado de regras WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom.
paginationobjeto
pagination.pageinteiroNúmero da página atual
pagination.per_pageinteiroNúmero de itens por página
pagination.totalinteiroNúmero total de itens

Exemplo ilustrativo; não é uma resposta real:

{
  "data": [
    {
      "cors_enabled": true,
      "cors_headers": "example",
      "cors_methods": "example",
      "cors_origins": "example",
      "created_at": 1791072000,
      "deleted_at": 0,
      "enabled": true,
      "force_https": true,
      "geo_policy": {},
      "hostname": "app.example.com",
      "hsts_enabled": true,
      "max_body_bytes": 0,
      "profile_id": "000000000000000000000000001",
      "team_id": "000000000000000000000000001",
      "updated_at": 1791072000,
      "waf_custom_directives": "example",
      "waf_mode": "off",
      "waf_overrides": {},
      "waf_rule_exclusions": {},
      "waf_template": "workload_default"
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 1,
    "total": 1
  }
}

Criar perfil de segurança do gateway

POST /v1/gateway_security_profile

Cria um novo objeto GatewaySecurityProfile

Esta requisição altera dados ou inicia uma ação. Confira o destino e o corpo antes de enviá-la.

Campos da requisição (o corpo contém um exemplo editável):

CampoTipoObrigatórioDescrição
cors_enabledbooleanosimPadrão: true.
cors_headersstringnãoCabeçalhos de pedidos CORS separados por vírgulas
cors_methodsstringnãoMétodos HTTP separados por vírgulas
cors_originsstringnãoOrigens separadas por vírgulas ou *
enabledbooleanosimPadrão: true.
force_httpsbooleanosimPadrão: true.
geo_policyobjetonãoPolítica opcional de permissão ou bloqueio por país no nível do host
hostnamestringsim
hsts_enabledbooleanosimPadrão: true.
max_body_bytesinteironãoLimite opcional de tamanho do corpo da requisição. 0 usa o padrão da plataforma. Padrão: 0.
team_idstringsim
waf_custom_directivesstringnãoDiretivas Coraza originais usadas quando waf_template=custom
waf_modestringsimValores permitidos: off, monitor, block. Padrão: "off".
waf_overridesobjetonãoAjustes estruturados do modelo (por exemplo, exclusões por caminho ou ativação e desativação de regras)
waf_rule_exclusionsobjetonãoLista de exclusão gerenciada opcional. Exemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}]
waf_templatestringsimModelo pré-configurado de regras WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom. Padrão: "workload_default".

Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.

Parâmetros

NomeLocalizaçãoObrigatórioDescrição
X-Tenant-IDcabeçalhosimID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico.

Exemplo de requisição

Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.

curl --fail-with-body --request POST "$ADIOS_API_URL/v1/gateway_security_profile" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'JSON'
{
  "cors_enabled": true,
  "enabled": true,
  "force_https": true,
  "hostname": "YOUR_HOSTNAME",
  "hsts_enabled": true,
  "max_body_bytes": 0,
  "team_id": "YOUR_TEAM_ID",
  "waf_mode": "off",
  "waf_template": "workload_default"
}
JSON

Substitua YOUR_* no corpo antes de enviar. O heredoc com delimitador entre aspas mantém o JSON literal.

Resposta: HTTP 201

GatewaySecurityProfile criado

Campos de resposta

CampoTipoDescrição
cors_enabledbooleano
cors_headersstringCabeçalhos de pedidos CORS separados por vírgulas
cors_methodsstringMétodos HTTP separados por vírgulas
cors_originsstringOrigens separadas por vírgulas ou *
created_atinteiro(Timestamp Unix)
deleted_atinteiro(Timestamp Unix)
enabledbooleano
force_httpsbooleano
geo_policyobjetoPolítica opcional de permissão ou bloqueio por país no nível do host
hostnamestring
hsts_enabledbooleano
max_body_bytesinteiroLimite opcional de tamanho do corpo da requisição. 0 usa o padrão da plataforma.
profile_idstring
team_idstring
updated_atinteiro(Timestamp Unix)
waf_custom_directivesstringDiretivas Coraza originais usadas quando waf_template=custom
waf_modestringValores permitidos: off, monitor, block.
waf_overridesobjetoAjustes estruturados do modelo (por exemplo, exclusões por caminho ou ativação e desativação de regras)
waf_rule_exclusionsobjetoLista de exclusão gerenciada opcional. Exemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}]
waf_templatestringModelo pré-configurado de regras WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom.

Exemplo ilustrativo; não é uma resposta real:

{
  "cors_enabled": true,
  "cors_headers": "example",
  "cors_methods": "example",
  "cors_origins": "example",
  "created_at": 1791072000,
  "deleted_at": 0,
  "enabled": true,
  "force_https": true,
  "geo_policy": {},
  "hostname": "app.example.com",
  "hsts_enabled": true,
  "max_body_bytes": 0,
  "profile_id": "000000000000000000000000001",
  "team_id": "000000000000000000000000001",
  "updated_at": 1791072000,
  "waf_custom_directives": "example",
  "waf_mode": "off",
  "waf_overrides": {},
  "waf_rule_exclusions": {},
  "waf_template": "workload_default"
}

Obter o perfil de segurança do gateway

GET /v1/gateway_security_profile/{id}

Retorna um objeto GatewaySecurityProfile

Defina gateway_security_profile_id usando IDs das suas próprias respostas da API.

Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.

Parâmetros

NomeLocalizaçãoObrigatórioDescrição
idcaminhosimIdentificador de recurso dos resultados da API da sua equipe.
X-Tenant-IDcabeçalhosimID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico.

Exemplo de requisição

Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.

curl --fail-with-body --request GET "$ADIOS_API_URL/v1/gateway_security_profile/${ADIOS_GATEWAY_SECURITY_PROFILE_ID}" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID"

Resposta: HTTP 200

GatewaySecurityProfile

Campos de resposta

CampoTipoDescrição
cors_enabledbooleano
cors_headersstringCabeçalhos de pedidos CORS separados por vírgulas
cors_methodsstringMétodos HTTP separados por vírgulas
cors_originsstringOrigens separadas por vírgulas ou *
created_atinteiro(Timestamp Unix)
deleted_atinteiro(Timestamp Unix)
enabledbooleano
force_httpsbooleano
geo_policyobjetoPolítica opcional de permissão ou bloqueio por país no nível do host
hostnamestring
hsts_enabledbooleano
max_body_bytesinteiroLimite opcional de tamanho do corpo da requisição. 0 usa o padrão da plataforma.
profile_idstring
team_idstring
updated_atinteiro(Timestamp Unix)
waf_custom_directivesstringDiretivas Coraza originais usadas quando waf_template=custom
waf_modestringValores permitidos: off, monitor, block.
waf_overridesobjetoAjustes estruturados do modelo (por exemplo, exclusões por caminho ou ativação e desativação de regras)
waf_rule_exclusionsobjetoLista de exclusão gerenciada opcional. Exemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}]
waf_templatestringModelo pré-configurado de regras WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom.

Exemplo ilustrativo; não é uma resposta real:

{
  "cors_enabled": true,
  "cors_headers": "example",
  "cors_methods": "example",
  "cors_origins": "example",
  "created_at": 1791072000,
  "deleted_at": 0,
  "enabled": true,
  "force_https": true,
  "geo_policy": {},
  "hostname": "app.example.com",
  "hsts_enabled": true,
  "max_body_bytes": 0,
  "profile_id": "000000000000000000000000001",
  "team_id": "000000000000000000000000001",
  "updated_at": 1791072000,
  "waf_custom_directives": "example",
  "waf_mode": "off",
  "waf_overrides": {},
  "waf_rule_exclusions": {},
  "waf_template": "workload_default"
}

Atualizar o perfil de segurança do gateway

PUT /v1/gateway_security_profile/{id}

Atualiza um objeto GatewaySecurityProfile existente

Defina gateway_security_profile_id usando IDs das suas próprias respostas da API.

Esta requisição altera dados ou inicia uma ação. Confira o destino e o corpo antes de enviá-la.

Campos da requisição (o corpo contém um exemplo editável):

CampoTipoObrigatórioDescrição
cors_enabledbooleanosimPadrão: true.
cors_headersstringnãoCabeçalhos de pedidos CORS separados por vírgulas
cors_methodsstringnãoMétodos HTTP separados por vírgulas
cors_originsstringnãoOrigens separadas por vírgulas ou *
enabledbooleanosimPadrão: true.
force_httpsbooleanosimPadrão: true.
geo_policyobjetonãoPolítica opcional de permissão ou bloqueio por país no nível do host
hostnamestringsim
hsts_enabledbooleanosimPadrão: true.
max_body_bytesinteironãoLimite opcional de tamanho do corpo da requisição. 0 usa o padrão da plataforma. Padrão: 0.
team_idstringsim
waf_custom_directivesstringnãoDiretivas Coraza originais usadas quando waf_template=custom
waf_modestringsimValores permitidos: off, monitor, block. Padrão: "off".
waf_overridesobjetonãoAjustes estruturados do modelo (por exemplo, exclusões por caminho ou ativação e desativação de regras)
waf_rule_exclusionsobjetonãoLista de exclusão gerenciada opcional. Exemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}]
waf_templatestringsimModelo pré-configurado de regras WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom. Padrão: "workload_default".

Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.

Parâmetros

NomeLocalizaçãoObrigatórioDescrição
idcaminhosimIdentificador de recurso dos resultados da API da sua equipe.
X-Tenant-IDcabeçalhosimID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico.

Exemplo de requisição

Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.

curl --fail-with-body --request PUT "$ADIOS_API_URL/v1/gateway_security_profile/${ADIOS_GATEWAY_SECURITY_PROFILE_ID}" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'JSON'
{
  "cors_enabled": true,
  "enabled": true,
  "force_https": true,
  "hostname": "YOUR_HOSTNAME",
  "hsts_enabled": true,
  "max_body_bytes": 0,
  "team_id": "YOUR_TEAM_ID",
  "waf_mode": "off",
  "waf_template": "workload_default"
}
JSON

Substitua YOUR_* no corpo antes de enviar. O heredoc com delimitador entre aspas mantém o JSON literal.

Resposta: HTTP 200

GatewaySecurityProfile atualizado

Campos de resposta

CampoTipoDescrição
cors_enabledbooleano
cors_headersstringCabeçalhos de pedidos CORS separados por vírgulas
cors_methodsstringMétodos HTTP separados por vírgulas
cors_originsstringOrigens separadas por vírgulas ou *
created_atinteiro(Timestamp Unix)
deleted_atinteiro(Timestamp Unix)
enabledbooleano
force_httpsbooleano
geo_policyobjetoPolítica opcional de permissão ou bloqueio por país no nível do host
hostnamestring
hsts_enabledbooleano
max_body_bytesinteiroLimite opcional de tamanho do corpo da requisição. 0 usa o padrão da plataforma.
profile_idstring
team_idstring
updated_atinteiro(Timestamp Unix)
waf_custom_directivesstringDiretivas Coraza originais usadas quando waf_template=custom
waf_modestringValores permitidos: off, monitor, block.
waf_overridesobjetoAjustes estruturados do modelo (por exemplo, exclusões por caminho ou ativação e desativação de regras)
waf_rule_exclusionsobjetoLista de exclusão gerenciada opcional. Exemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}]
waf_templatestringModelo pré-configurado de regras WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom.

Exemplo ilustrativo; não é uma resposta real:

{
  "cors_enabled": true,
  "cors_headers": "example",
  "cors_methods": "example",
  "cors_origins": "example",
  "created_at": 1791072000,
  "deleted_at": 0,
  "enabled": true,
  "force_https": true,
  "geo_policy": {},
  "hostname": "app.example.com",
  "hsts_enabled": true,
  "max_body_bytes": 0,
  "profile_id": "000000000000000000000000001",
  "team_id": "000000000000000000000000001",
  "updated_at": 1791072000,
  "waf_custom_directives": "example",
  "waf_mode": "off",
  "waf_overrides": {},
  "waf_rule_exclusions": {},
  "waf_template": "workload_default"
}

Excluir perfil de segurança do gateway

DELETE /v1/gateway_security_profile/{id}

Exclui um objeto GatewaySecurityProfile

Defina gateway_security_profile_id usando IDs das suas próprias respostas da API.

Esta requisição altera dados ou inicia uma ação. Confira o destino e o corpo antes de enviá-la.

Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.

Parâmetros

NomeLocalizaçãoObrigatórioDescrição
idcaminhosimIdentificador de recurso dos resultados da API da sua equipe.
X-Tenant-IDcabeçalhosimID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico.

Exemplo de requisição

Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.

curl --fail-with-body --request DELETE "$ADIOS_API_URL/v1/gateway_security_profile/${ADIOS_GATEWAY_SECURITY_PROFILE_ID}" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID"

Resposta: HTTP 200

O recurso foi apagado.

Campos de resposta

CampoTipoDescrição
messagestring

Exemplo ilustrativo; não é uma resposta real:

{
  "message": "Deleted successfully"
}