API de seguridad de la puerta de enlace
Configura HTTPS, CORS y WAF para un nombre de host que controle tu equipo.
Usa Autenticación de la API para las solicitudes protegidas. Los ejemplos usan tus propios IDs de recursos y un token temporal; las respuestas de ejemplo guardadas son sintéticas.
| Método | Ruta | Operación |
|---|---|---|
GET | /v1/gateway_security_profile | Listar perfiles de seguridad del gateway |
POST | /v1/gateway_security_profile | Crear perfil de seguridad de puerta de entrada |
GET | /v1/gateway_security_profile/{id} | Obtener perfil de seguridad de la puerta de entrada |
PUT | /v1/gateway_security_profile/{id} | Actualizar perfil de seguridad del gateway |
DELETE | /v1/gateway_security_profile/{id} | Eliminar el perfil de seguridad de la puerta |
Listar perfiles de seguridad del gateway
GET /v1/gateway_security_profile
Devuelve una lista paginada de GatewaySecurityProfile
Autenticación: token bearer y la cabecera de equipo que se muestra a continuación.
Parámetros
| Nombre | Ubicación | Obligatorio | Descripción |
|---|---|---|---|
X-Tenant-ID | cabecera | sí | ID del equipo activo. Debe coincidir con el tenant vinculado al token de diagnóstico. |
page | consulta | no | Número de página |
per_page | consulta | no | Elementos por página |
Ejemplo de solicitud
Configura ADIOS_API_URL=https://api.adios.dev. Para las solicitudes protegidas, configura ADIOS_ACCESS_TOKEN y ADIOS_TEAM_ID como en el inicio rápido. Configura las variables adicionales ADIOS_* a partir de los resultados de tus propios 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"
Respuesta: HTTP 200
Lista de GatewaySecurityProfile
Campos de respuesta
| Campo | Tipo | Descripción |
|---|---|---|
data | array | |
data[].cors_enabled | boolean | |
data[].cors_headers | string | Cabeceras de solicitud CORS separadas por comas |
data[].cors_methods | string | Métodos HTTP separados por comas |
data[].cors_origins | string | Orígenes separados por comas o * |
data[].created_at | integer | (marca de tiempo Unix) |
data[].deleted_at | integer | (marca de tiempo Unix) |
data[].enabled | boolean | |
data[].force_https | boolean | |
data[].geo_policy | object | Política opcional de países permitidos o bloqueados para el host |
data[].hostname | string | |
data[].hsts_enabled | boolean | |
data[].max_body_bytes | integer | Límite opcional del tamaño del cuerpo de solicitud. 0 indica el valor predeterminado de la plataforma. |
data[].profile_id | string | |
data[].team_id | string | |
data[].updated_at | integer | (marca de tiempo Unix) |
data[].waf_custom_directives | string | Directivas Coraza sin procesar usadas cuando waf_template=custom |
data[].waf_mode | string | Valores permitidos: off, monitor, block. |
data[].waf_overrides | object | Ajustes estructurados de la plantilla (por ejemplo, exclusiones por ruta o activación y desactivación de reglas) |
data[].waf_rule_exclusions | object | Lista de exclusión administrada opcional. Ejemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}] |
data[].waf_template | string | Plantilla preconfigurada de reglas WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom. |
pagination | object | |
pagination.page | integer | Número de página actual |
pagination.per_page | integer | Número de elementos por página |
pagination.total | integer | Número total de elementos |
Ejemplo ilustrativo; no es una respuesta 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
}
}
Crear perfil de seguridad de puerta de entrada
POST /v1/gateway_security_profile
Crea un nuevo GatewaySecurityProfile
Esta solicitud modifica datos o inicia una acción. Revisa el destino y el cuerpo antes de enviarla.
Campos de la solicitud (el cuerpo contiene un ejemplo editable):
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
cors_enabled | boolean | sí | Valor predeterminado: true. |
cors_headers | string | no | Cabeceras de solicitud CORS separadas por comas |
cors_methods | string | no | Métodos HTTP separados por comas |
cors_origins | string | no | Orígenes separados por comas o * |
enabled | boolean | sí | Valor predeterminado: true. |
force_https | boolean | sí | Valor predeterminado: true. |
geo_policy | object | no | Política opcional de países permitidos o bloqueados para el host |
hostname | string | sí | |
hsts_enabled | boolean | sí | Valor predeterminado: true. |
max_body_bytes | integer | no | Límite opcional del tamaño del cuerpo de solicitud. 0 indica el valor predeterminado de la plataforma. Valor predeterminado: 0. |
team_id | string | sí | |
waf_custom_directives | string | no | Directivas Coraza sin procesar usadas cuando waf_template=custom |
waf_mode | string | sí | Valores permitidos: off, monitor, block. Valor predeterminado: "off". |
waf_overrides | object | no | Ajustes estructurados de la plantilla (por ejemplo, exclusiones por ruta o activación y desactivación de reglas) |
waf_rule_exclusions | object | no | Lista de exclusión administrada opcional. Ejemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}] |
waf_template | string | sí | Plantilla preconfigurada de reglas WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom. Valor predeterminado: "workload_default". |
Autenticación: token bearer y la cabecera de equipo que se muestra a continuación.
Parámetros
| Nombre | Ubicación | Obligatorio | Descripción |
|---|---|---|---|
X-Tenant-ID | cabecera | sí | ID del equipo activo. Debe coincidir con el tenant vinculado al token de diagnóstico. |
Ejemplo de solicitud
Configura ADIOS_API_URL=https://api.adios.dev. Para las solicitudes protegidas, configura ADIOS_ACCESS_TOKEN y ADIOS_TEAM_ID como en el inicio rápido. Configura las variables adicionales ADIOS_* a partir de los resultados de tus propios 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
Reemplaza los marcadores YOUR_* del cuerpo antes de enviar la solicitud. El heredoc entrecomillado conserva el JSON literal.
Respuesta: HTTP 201
GatewaySecurityProfile creado
Campos de respuesta
| Campo | Tipo | Descripción |
|---|---|---|
cors_enabled | boolean | |
cors_headers | string | Cabeceras de solicitud CORS separadas por comas |
cors_methods | string | Métodos HTTP separados por comas |
cors_origins | string | Orígenes separados por comas o * |
created_at | integer | (marca de tiempo Unix) |
deleted_at | integer | (marca de tiempo Unix) |
enabled | boolean | |
force_https | boolean | |
geo_policy | object | Política opcional de países permitidos o bloqueados para el host |
hostname | string | |
hsts_enabled | boolean | |
max_body_bytes | integer | Límite opcional del tamaño del cuerpo de solicitud. 0 indica el valor predeterminado de la plataforma. |
profile_id | string | |
team_id | string | |
updated_at | integer | (marca de tiempo Unix) |
waf_custom_directives | string | Directivas Coraza sin procesar usadas cuando waf_template=custom |
waf_mode | string | Valores permitidos: off, monitor, block. |
waf_overrides | object | Ajustes estructurados de la plantilla (por ejemplo, exclusiones por ruta o activación y desactivación de reglas) |
waf_rule_exclusions | object | Lista de exclusión administrada opcional. Ejemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}] |
waf_template | string | Plantilla preconfigurada de reglas WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom. |
Ejemplo ilustrativo; no es una respuesta 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"
}
Obtener perfil de seguridad de la puerta de entrada
GET /v1/gateway_security_profile/{id}
Devuelve un único GatewaySecurityProfile
Configura gateway_security_profile_id usando IDs de tus propias respuestas de la API.
Autenticación: token bearer y la cabecera de equipo que se muestra a continuación.
Parámetros
| Nombre | Ubicación | Obligatorio | Descripción |
|---|---|---|---|
id | ruta | sí | Identificador del recurso obtenido de los resultados de la API de tu equipo. |
X-Tenant-ID | cabecera | sí | ID del equipo activo. Debe coincidir con el tenant vinculado al token de diagnóstico. |
Ejemplo de solicitud
Configura ADIOS_API_URL=https://api.adios.dev. Para las solicitudes protegidas, configura ADIOS_ACCESS_TOKEN y ADIOS_TEAM_ID como en el inicio rápido. Configura las variables adicionales ADIOS_* a partir de los resultados de tus propios 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"
Respuesta: HTTP 200
GatewaySecurityProfile
Campos de respuesta
| Campo | Tipo | Descripción |
|---|---|---|
cors_enabled | boolean | |
cors_headers | string | Cabeceras de solicitud CORS separadas por comas |
cors_methods | string | Métodos HTTP separados por comas |
cors_origins | string | Orígenes separados por comas o * |
created_at | integer | (marca de tiempo Unix) |
deleted_at | integer | (marca de tiempo Unix) |
enabled | boolean | |
force_https | boolean | |
geo_policy | object | Política opcional de países permitidos o bloqueados para el host |
hostname | string | |
hsts_enabled | boolean | |
max_body_bytes | integer | Límite opcional del tamaño del cuerpo de solicitud. 0 indica el valor predeterminado de la plataforma. |
profile_id | string | |
team_id | string | |
updated_at | integer | (marca de tiempo Unix) |
waf_custom_directives | string | Directivas Coraza sin procesar usadas cuando waf_template=custom |
waf_mode | string | Valores permitidos: off, monitor, block. |
waf_overrides | object | Ajustes estructurados de la plantilla (por ejemplo, exclusiones por ruta o activación y desactivación de reglas) |
waf_rule_exclusions | object | Lista de exclusión administrada opcional. Ejemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}] |
waf_template | string | Plantilla preconfigurada de reglas WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom. |
Ejemplo ilustrativo; no es una respuesta 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"
}
Actualizar perfil de seguridad del gateway
PUT /v1/gateway_security_profile/{id}
Actualiza un GatewaySecurityProfile existente
Configura gateway_security_profile_id usando IDs de tus propias respuestas de la API.
Esta solicitud modifica datos o inicia una acción. Revisa el destino y el cuerpo antes de enviarla.
Campos de la solicitud (el cuerpo contiene un ejemplo editable):
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
cors_enabled | boolean | sí | Valor predeterminado: true. |
cors_headers | string | no | Cabeceras de solicitud CORS separadas por comas |
cors_methods | string | no | Métodos HTTP separados por comas |
cors_origins | string | no | Orígenes separados por comas o * |
enabled | boolean | sí | Valor predeterminado: true. |
force_https | boolean | sí | Valor predeterminado: true. |
geo_policy | object | no | Política opcional de países permitidos o bloqueados para el host |
hostname | string | sí | |
hsts_enabled | boolean | sí | Valor predeterminado: true. |
max_body_bytes | integer | no | Límite opcional del tamaño del cuerpo de solicitud. 0 indica el valor predeterminado de la plataforma. Valor predeterminado: 0. |
team_id | string | sí | |
waf_custom_directives | string | no | Directivas Coraza sin procesar usadas cuando waf_template=custom |
waf_mode | string | sí | Valores permitidos: off, monitor, block. Valor predeterminado: "off". |
waf_overrides | object | no | Ajustes estructurados de la plantilla (por ejemplo, exclusiones por ruta o activación y desactivación de reglas) |
waf_rule_exclusions | object | no | Lista de exclusión administrada opcional. Ejemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}] |
waf_template | string | sí | Plantilla preconfigurada de reglas WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom. Valor predeterminado: "workload_default". |
Autenticación: token bearer y la cabecera de equipo que se muestra a continuación.
Parámetros
| Nombre | Ubicación | Obligatorio | Descripción |
|---|---|---|---|
id | ruta | sí | Identificador del recurso obtenido de los resultados de la API de tu equipo. |
X-Tenant-ID | cabecera | sí | ID del equipo activo. Debe coincidir con el tenant vinculado al token de diagnóstico. |
Ejemplo de solicitud
Configura ADIOS_API_URL=https://api.adios.dev. Para las solicitudes protegidas, configura ADIOS_ACCESS_TOKEN y ADIOS_TEAM_ID como en el inicio rápido. Configura las variables adicionales ADIOS_* a partir de los resultados de tus propios 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
Reemplaza los marcadores YOUR_* del cuerpo antes de enviar la solicitud. El heredoc entrecomillado conserva el JSON literal.
Respuesta: HTTP 200
GatewaySecurityProfile actualizado
Campos de respuesta
| Campo | Tipo | Descripción |
|---|---|---|
cors_enabled | boolean | |
cors_headers | string | Cabeceras de solicitud CORS separadas por comas |
cors_methods | string | Métodos HTTP separados por comas |
cors_origins | string | Orígenes separados por comas o * |
created_at | integer | (marca de tiempo Unix) |
deleted_at | integer | (marca de tiempo Unix) |
enabled | boolean | |
force_https | boolean | |
geo_policy | object | Política opcional de países permitidos o bloqueados para el host |
hostname | string | |
hsts_enabled | boolean | |
max_body_bytes | integer | Límite opcional del tamaño del cuerpo de solicitud. 0 indica el valor predeterminado de la plataforma. |
profile_id | string | |
team_id | string | |
updated_at | integer | (marca de tiempo Unix) |
waf_custom_directives | string | Directivas Coraza sin procesar usadas cuando waf_template=custom |
waf_mode | string | Valores permitidos: off, monitor, block. |
waf_overrides | object | Ajustes estructurados de la plantilla (por ejemplo, exclusiones por ruta o activación y desactivación de reglas) |
waf_rule_exclusions | object | Lista de exclusión administrada opcional. Ejemplo: [{"path_prefix":"/api/monitoring","remove_rule_ids":[920420]}] |
waf_template | string | Plantilla preconfigurada de reglas WAF para este host. Valores permitidos: platform_default, workload_default, api_strict, nextjs, django, wordpress, custom. |
Ejemplo ilustrativo; no es una respuesta 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"
}
Eliminar el perfil de seguridad de la puerta
DELETE /v1/gateway_security_profile/{id}
Elimina un GatewaySecurityProfile
Configura gateway_security_profile_id usando IDs de tus propias respuestas de la API.
Esta solicitud modifica datos o inicia una acción. Revisa el destino y el cuerpo antes de enviarla.
Autenticación: token bearer y la cabecera de equipo que se muestra a continuación.
Parámetros
| Nombre | Ubicación | Obligatorio | Descripción |
|---|---|---|---|
id | ruta | sí | Identificador del recurso obtenido de los resultados de la API de tu equipo. |
X-Tenant-ID | cabecera | sí | ID del equipo activo. Debe coincidir con el tenant vinculado al token de diagnóstico. |
Ejemplo de solicitud
Configura ADIOS_API_URL=https://api.adios.dev. Para las solicitudes protegidas, configura ADIOS_ACCESS_TOKEN y ADIOS_TEAM_ID como en el inicio rápido. Configura las variables adicionales ADIOS_* a partir de los resultados de tus propios 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"
Respuesta: HTTP 200
Recurso eliminado.
Campos de respuesta
| Campo | Tipo | Descripción |
|---|---|---|
message | string |
Ejemplo ilustrativo; no es una respuesta real:
{
"message": "Deleted successfully"
}