Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2022-11-02 GMT+08:00

Adición de un nombre de dominio a la nube WAF

Función

Esta API se utiliza para agregar un nombre de dominio a la nube WAF.

URI

POST /v1/{project_id}/waf/instance

Tabla 1 Parámetros de ruta

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

ID del proyecto

Tabla 2 Parámetros de consulta

Parámetro

Obligatorio

Tipo

Descripción

enterprise_project_id

No

String

ID del proyecto de empresa. Se puede obtener mediante el llamado API ListEnterpriseProject de EPS.

Parámetros de solicitud

Tabla 3 Parámetros de encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Token de usuario. Se puede obtener llamando a la API IAM (valor de X-Subject-Token en el encabezado de respuesta).

Content-Type

String

Tipo de contenido

Predeterminado: application/json;charset=utf8

Tabla 4 Parámetros del cuerpo de solicitud

Parámetro

Obligatorio

Tipo

Descripción

hostname

String

El nombre de dominio puede contener un máximo de 64 caracteres. Solo se permiten letras, dígitos, guiones (-) guiones bajos y puntos, por ejemplo, www.domain.com.

policyid

No

String

ID de la política utilizada inicialmente para el nombre de dominio. Se puede obtener llamando a la API ListPolicy.

server

Array of CloudWafServer objects

Detalles del servidor de origen

certificateid

No

String

ID del certificado. Se puede obtener llamando a la API de ListCertificates. \n - Este parámetro no es necesario cuando el protocolo cliente es HTTP. \n - Este parámetro es obligatorio cuando el protocolo cliente es HTTPS.

certificatename

No

String

Nombre del certificado. \n - Este parámetro no es necesario cuando el protocolo cliente es HTTP. \n - Este parámetro es obligatorio cuando el protocolo cliente es HTTPS.

proxy

Boolean

Si se utiliza un proxy para el nombre de dominio

description

No

String

Descripción del nombre de dominio

Tabla 5 CloudWafServer

Parámetro

Obligatorio

Tipo

Descripción

front_protocol

String

Protocolo del cliente

Valores de enumeración:

  • HTTP
  • HTTPS

back_protocol

String

Protocolo de servidor

Valores de enumeración:

  • HTTP
  • HTTPS

address

String

Dirección del servidor

port

Integer

Puerto del servidor

type

String

La dirección del servidor de origen es una dirección IPv4 o IPv6.

Valores de enumeración:

  • ipv4
  • ipv6

Parámetros de respuesta

Código de estado: 200

Tabla 6 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

id

String

ID de nombre de dominio

hostname

String

Nombre de dominio agregado a la nube WAF.

policyid

String

ID de política

access_code

String

Prefijo de CNAME

protect_status

Integer

Estado de protección del nombre de dominio. \n - -1: Se omite la protección WAF. Las solicitudes del nombre de dominio se envían directamente al servidor backend y no pasan a través de WAF. \n - 0: La protección WAF está suspendida. WAF solo reenvía solicitudes del nombre de dominio y no detecta ataques. \n - 1: La protección WAF está habilitada. WAF detecta ataques basados en la política configurada.

access_status

Integer

Estado de acceso

protocol

String

Tipo de protocolo de cliente devuelto

certificateid

String

ID de certificado devuelto

certificatename

String

Nombre del certificado

server

Array of CloudWafServer objects

Detalles del servidor de origen

flag

Flag object

Certificaciones soportadas por WAF

proxy

Boolean

Si el proxy está habilitado

timestamp

Long

Hora en que se agrega un nombre de dominio a WAF.

exclusive_ip

Boolean

Si se utiliza una dirección IP dedicada

http2_enable

Boolean

Compatibilidad con HTTP/2

Tabla 7 CloudWafServer

Parámetro

Tipo

Descripción

front_protocol

String

Protocolo del cliente

Valores de enumeración:

  • HTTP
  • HTTPS

back_protocol

String

Protocolo de servidor

Valores de enumeración:

  • HTTP
  • HTTPS

address

String

Dirección del servidor

port

Integer

Puerto del servidor

type

String

La dirección del servidor de origen es una dirección IPv4 o IPv6.

Valores de enumeración:

  • ipv4
  • ipv6
Tabla 8 Flag

Parámetro

Tipo

Descripción

pci_3ds

String

true: Se aprueba la certificación estándar PCI 3DS. false: no se aprueba la certificación estándar PCI 3DS.

Valores de enumeración:

  • true
  • false

pci_dss

String

true: Se aprueba la certificación estándar PCI DSS. false: no se aprueba la certificación estándar PCI DSS.

Valores de enumeración:

  • true
  • false

cname

String

old: Se utiliza el antiguo registro CNAME. new: se utiliza un nuevo registro CNAME.

Valores de enumeración:

  • old
  • new

is_dual_az

String

true: WAF soporta multi-AZ DR. false: WAF no admite DR multi-AZ.

Valores de enumeración:

  • true
  • false

Código de estado: 400

Tabla 9 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

error_code

String

Código de error

error_msg

String

Mensaje de código de error

Código de estad: 401

Tabla 10 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

error_code

String

Código de error

error_msg

String

Mensaje de código de error

Código de estado: 500

Tabla 11 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

error_code

String

Código de error

error_msg

String

Mensaje de código de error

Solicitudes de ejemplo

POST https://{Endpoint}/v1/{project_id}/waf/instance?enterprise_project_id=0

{
  "hostname" : "www.demo.com",
  "server" : [ {
    "front_protocol" : "HTTPS",
    "back_protocol" : "HTTP",
    "type" : "ipv4",
    "address" : "x.x.x.x",
    "port" : "7443"
  } ],
  "proxy" : false,
  "paid_type" : "prePaid",
  "description" : "demo",
  "web_tag" : "demo",
  "certificateid" : "3ac1402300374a63a05be68c641e92c8",
  "certificatename" : "test6",
  "exclusive_ip" : false
}

Ejemplo de respuestas

Código de estado: 200

OK

{
  "id" : "31af669f567246c289771694f2112289",
  "hostname" : "www.demo.com",
  "protocol" : "HTTP",
  "server" : [ {
    "address" : "x.x.x.x",
    "port" : 80,
    "type" : "ipv4",
    "http2" : false,
    "weight" : 1,
    "front_protocol" : "HTTP",
    "back_protocol" : "HTTP"
  } ],
  "proxy" : false,
  "locked" : 0,
  "timestamp" : 1650527546420,
  "flag" : {
    "pci_3ds" : "false",
    "pci_dss" : "false",
    "ipv6" : "false",
    "cname" : "new",
    "is_dual_az" : "true"
  },
  "description" : "",
  "policyid" : "41cba8aee2e94bcdbf57460874205494",
  "domainid" : "d4ecb00b031941ce9171b7bc3386883f",
  "projectid" : "0456cf04d6f64725ab02ed5bd2efdfa4",
  "enterprise_project_id" : "0",
  "protect_status" : 1,
  "access_status" : 0,
  "access_code" : "1b18879b9d064f8bbcbf8abce7294cac",
  "block_page" : {
    "template" : "default"
  },
  "web_tag" : "",
  "exclusive_ip" : false,
  "http2_enable" : false
}

Códigos de estado

Código de estado

Descripción

200

OK

400

Error de solicitud.

401

Permisos de token insuficientes.

500

Error de servidor interno.

Códigos de error

Consulte Códigos de error.