Adición de un certificado a un nombre de dominio
Función
Cuando crea una API para acceder a través de HTTPS, debe agregar un certificado SSL al nombre de dominio independiente que se ha enlazado al grupo al que pertenece la API.
Para los gateway con puertos de entrada personalizados, el mismo nombre de dominio se vincula a un certificado al mismo tiempo. La habilitación o deshabilitación de la verificación del cliente tiene efecto para diferentes puertos del mismo nombre de dominio.
Esta API se utiliza para agregar un certificado a un nombre de dominio específico.
Método de invocación
Para obtener más información, véase invocación de API.
URI
POST /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}/certificate
|
Parámetro |
Obligatorio |
Tipo |
Descripción |
|---|---|---|---|
|
project_id |
Sí |
String |
ID del proyecto. Para obtener más información sobre cómo obtenerlo, véase Obtención de un ID de proyecto. |
|
instance_id |
Sí |
String |
ID de gateway, que se puede obtener de la información de gateway en la consola de APIG. |
|
group_id |
Sí |
String |
ID de grupo de API. |
|
domain_id |
Sí |
String |
ID de dominio. |
Parámetros de solicitud
|
Parámetro |
Obligatorio |
Tipo |
Descripción |
|---|---|---|---|
|
X-Auth-Token |
Sí |
String |
Token de usuario. Se puede obtener invocando a la API de IAM utilizada para obtener un token de usuario. El valor de X-Subject-Token en el encabezado de respuesta es un token. |
|
Parámetro |
Obligatorio |
Tipo |
Descripción |
|---|---|---|---|
|
cert_content |
Sí |
String |
Contenido del certificado. |
|
name |
Sí |
String |
Nombre del certificado. Puede contener de 4 a 50 caracteres, empezando por una letra. Solo se permiten letras, dígitos y guiones bajos (_). |
|
private_key |
Sí |
String |
Clave privada. |
Parámetros de respuesta
Código de estado: 201
|
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
url_domain |
String |
Nombre de dominio personalizado. |
|
id |
String |
ID de dominio. |
|
status |
Integer |
Estado de resolución de CNAME.
|
|
min_ssl_version |
String |
Versión mínima de SSL compatible. |
|
is_http_redirect_to_https |
Boolean |
Si se debe habilitar la redirección HTTP a HTTPS. El valor false significa deshabilitar y true significa habilitar. El valor predeterminado es false. Predeterminado: false |
|
verified_client_certificate_enabled |
Boolean |
Si se debe habilitar la verificación de certificados de cliente. Este parámetro solo está disponible cuando hay un certificado enlazado. Se habilita por defecto si trusted_root_ca existe, y se deshabilita si trusted_root_ca no existe. Predeterminado: false |
|
ingress_http_port |
Integer |
Puerto HTTP de entrada vinculado al nombre de dominio. -1 indica que no hay ningún puerto disponible y que el protocolo no es compatible. En este caso, puede utilizar el puerto predeterminado 80. En los puertos de entrada HTTP del gateway se deben incluir otros puertos válidos. El valor oscila entre 1024 y 49151. Al crear un nombre de dominio, si no se establece este parámetro, se utiliza el puerto predeterminado 80. Si se configura este parámetro, se debe configurar https_port. Si tanto http_port como https_port necesitan usar el puerto predeterminado, deje ambos parámetros en blanco. Si no se especifica este parámetro al modificar el nombre de dominio, el número de puerto permanece sin cambios. Mínimo: -1 Máximo: 49151 |
|
ingress_https_port |
Integer |
Puerto de HTTPS de entrada vinculado al nombre de dominio. -1 indica que no hay ningún puerto disponible y que el protocolo no es compatible. En este caso, puede utilizar el puerto predeterminado 443. En los puertos de entrada HTTPS del gateway se deben incluir otros puertos válidos. El valor oscila entre 1024 y 49151. Al crear un nombre de dominio, si no se establece este parámetro, se utiliza el puerto predeterminado 443. Si se configura este parámetro, se debe configurar http_port. Si tanto http_port como https_port necesitan usar el puerto predeterminado, deje ambos parámetros en blanco. Si no se especifica este parámetro al modificar el nombre de dominio, el número de puerto permanece sin cambios. Mínimo: -1 Máximo: 49151 |
|
ssl_name |
String |
Nombre del certificado. |
|
ssl_id |
String |
ID del certificado. |
|
ssl_infos |
Array of SslInfo objects |
Lista de certificados SSL. |
|
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
ssl_id |
String |
ID de certificado SSL. |
|
ssl_name |
String |
Nombre del certificado SSL. |
|
algorithm_type |
String |
Tipo de algoritmo de certificado:
|
|
type |
String |
Alcance del certificado:
Predeterminado: global |
Código de estado: 400
|
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
error_code |
String |
Código de error. |
|
error_msg |
String |
Mensaje de error. |
Código de estado: 401
|
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
error_code |
String |
Código de error. |
|
error_msg |
String |
Mensaje de error. |
Código de estado: 403
|
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
error_code |
String |
Código de error. |
|
error_msg |
String |
Mensaje de error. |
Código de estado: 404
|
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
error_code |
String |
Código de error. |
|
error_msg |
String |
Mensaje de error. |
Código de estado: 500
|
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
error_code |
String |
Código de error. |
|
error_msg |
String |
Mensaje de error. |
Ejemplo de las solicitudes
Vincular un certificado a un nombre de dominio
{
"name" : "cert_demo",
"private_key" : "'-----BEGIN PRIVATE KEY-----THIS IS YOUR PRIVATE KEY-----END PRIVATE KEY-----\\n'",
"cert_content" : "'-----BEGIN CERTIFICATE-----THIS IS YOUR CERT CONTENT-----END CERTIFICATE-----\\n'"
}
Ejemplo de respuestas
Código de estado: 201
Creado
{
"ssl_name" : "cert_demo",
"url_domain" : "www.example.com",
"ssl_id" : "a27be832f2e9441c8127fe48e3b5ac67",
"id" : " f6bb84ccf1c34035878aa51b7253b21c",
"status" : 3
}
Código de estado: 400
Error en la solicitud
{
"error_code" : "APIG.2012",
"error_msg" : "Invalid parameter value,parameterName:name. Please refer to the support documentation"
}
Código de estado: 401
Sin autorización
{
"error_code" : "APIG.1002",
"error_msg" : "Incorrect token or token resolution failed"
}
Código de estado: 403
Prohibido
{
"error_code" : "APIG.1005",
"error_msg" : "No permissions to request this method"
}
Código de estado: 404
No se ha encontrado
{
"error_code" : "APIG.3020",
"error_msg" : "The URL domain does not exist"
}
Código de estado: 500
Error del servidor interno
{
"error_code" : "APIG.9999",
"error_msg" : "System error"
}
Códigos de estado
|
Código de estado |
Descripción |
|---|---|
|
201 |
Creado |
|
400 |
Error en la solicitud |
|
401 |
Sin autorización |
|
403 |
Prohibido |
|
404 |
No se ha encontrado |
|
500 |
Error del servidor interno |
Códigos de error
Consulte Códigos de error.