Knowledge Center Monthly Newsletter - September 2025
Stay up to date with the latest from the Knowledge Center. See all new Knowledge Center articles published in the last month, and re:Post’s top contributors.
¿Cómo puedo solucionar los errores HTTP 403 desde API Gateway?
Cuando llamo a la API de Amazon API Gateway, aparece un error 403.
Descripción breve
Cuando un cliente no puede acceder a una URL válida, recibe un código de respuesta HTTP 403. El servidor entiende la solicitud, pero no puede cumplirla debido a problemas en el lado del cliente.
Las API de API Gateway pueden devolver respuestas 403 por los siguientes motivos:
Problema | Encabezado de respuesta | Mensaje de error | Causa raíz |
Acceso denegado | «x-amzn-errortype» = «AccessDeniedException» | “User is not authorized to access this resource with an explicit deny” | El usuario que llama no está autorizado a acceder a una API que utiliza un autorizador de Lambda de API Gateway. |
Acceso denegado | «x-amzn-errortype» = «AccessDeniedException» | «User: <user-arn> is not authorized to perform: execute-api:Invoke on resource: <api-resource-arn> with an explicit deny” | El usuario que llama no está autorizado a acceder a una API que utiliza la autorización de AWS Identity and Access Management (IAM). O bien, la API tiene una política de recursos asociada que niega explícitamente el acceso a la persona que llama. Para obtener más información, consulta Autenticación de IAM y política de recursos. |
Acceso denegado | «x-amzn-errortype» = «AccessDeniedException» | «User: anonymous is not authorized to perform: execute-api:Invoke on resource:<api-resource-arn>” | El usuario que llama no está autorizado a acceder a una API que utiliza la autorización de IAM. O bien, la API tiene una política de recursos asociada que no permite explícitamente que la persona que llama invoque la API. Para obtener más información, consulta Autenticación de IAM y política de recursos. |
Acceso denegado | «x-amzn-errortype» = «AccessDeniedException» | “The security token included in the request is invalid.” | El usuario que llama ha usado claves de IAM que no son válidas para acceder a una API que utiliza la autorización de IAM. |
Falta el token de autenticación | «x-amzn-errortype» = «MissingAuthenticationTokenException» | «Falta el token de autenticación» | No se ha encontrado ningún token de autenticación en la solicitud. |
El token de autenticación ha vencido | «x-amzn-errortype» = «InvalidSignatureException» | “Signature expired” | El token de autenticación en la solicitud ha caducado. |
La clave de API no es válida | «x-amzn-errortype» = «ForbiddenException» | “Forbidden” | El usuario que llama ha usado una clave de API en un método que requiere una clave de API, pero la clave de API no es correcta. O bien, la clave de API no está asociada a un plan de uso que esté asociado a la etapa. O bien, la clave de API está desactivada o no existe. |
La firma no es válida | «x-amzn-errortype» = «InvalidSignatureException» | «The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method.” | La firma de la solicitud no coincide con la del servidor cuando el usuario que llama accede a una API que usa la autorización de IAM. |
Se ha filtrado AWS WAF | «x-amzn-errortype» = «ForbiddenException» | “Forbidden” | El filtrado del firewall de aplicaciones web bloquea la solicitud cuando AWS WAF está activado en la API. |
La ruta del recurso no existe | «x-amzn-errortype» = «MissingAuthenticationTokenException» | “Missing Authentication Token” | Se ha enviado una solicitud con un encabezado “Authorization” a una ruta de recursos de API que no existe. Para obtener más información, consulta ¿Cómo puedo solucionar los errores 403 “Missing Authentication Token” en el punto de enlace de la API de REST de API Gateway? |
La ruta del recurso no existe | «x-amzn-errortype» = «IncompleteSignatureException» | «Authorization header requires "Credential" parameter. Authorization header requires "Signature" parameter. Authorization header requires "SignedHeaders" parameter. Authorization header requires existence of either a "X-Amz-Date" or a "Date" header. Authorization=allow» | Se ha enviado una solicitud con un encabezado “Authorization” a una ruta de recursos de API que no existe. |
Utiliza incorrectamente nombres de DNS públicos para invocar una API privada | “x-amzn-errortype” = “ForbiddenException” | “Forbidden” | Has utilizado nombres de DNS públicos de forma incorrecta para invocar una API privada desde una Amazon Virtual Private Cloud (Amazon VPC). Por ejemplo: faltan los encabezados “Host” o “x-apigw-api-id” en la solicitud. Para obtener más información, consulta Invocación de una API privada mediante nombres de host de DNS públicos específicos de punto de enlace. |
Se usa el punto de enlace execute-api predeterminado para invocar una API de REST que tiene un nombre de dominio personalizado | “x-amzn-errortype” = “ForbiddenException” | “Forbidden” | El usuario que llama usa el punto de enlace execute-api predeterminado para invocar una API de REST después de desactivar el punto de enlace predeterminado. Para obtener más información, consulta Deshabilitación del punto de enlace predeterminado para las API de REST. |
Se usa un certificado de cliente que no es válido para invocar un nombre de dominio personalizado de API Gateway que requiere TLS mutua | “x-amzn-errortype” = “ForbiddenException” | “Forbidden” | El almacén de confianza del nombre de dominio personalizado no emite el certificado de cliente que figura en la solicitud de la API o el certificado no es válido. Para obtener más información, consulta ¿Cómo soluciono los errores prohibidos de HTTP 403 de un nombre de dominio personalizado de API Gateway que requiere TLS mutua? |
Se ha invocado un nombre de dominio personalizado sin una asignación de rutas base | «x-amzn-errortype» = «ForbiddenException» | “Forbidden” | El usuario que llama invoca un dominio personalizado y no asigna una ruta base a una API. Para obtener más información, consulta Nombre de dominio personalizado para las API de REST en API Gateway. |
Se ha invocado una API con el dominio personalizado activado cuando la URL del dominio incluye la etapa | “x-amzn-errortype” = “MissingAuthenticationTokenException” | “Missing Authentication Token” | Una asignación de API especifica una API, una etapa y, opcionalmente, una ruta que se utilizará para la asignación. Por lo tanto, cuando la etapa de una API se asigna a un dominio personalizado, ya no es necesario incluir la etapa en la URL. Para obtener más información, consulta Asignación de etapas de API a un nombre de dominio personalizado para las API de REST. |
La etapa de la URL de la solicitud no es válida | «x-amzn-errortype» = «ForbiddenException» | «Prohibido» | La URL de la solicitud del usuario que llama incluye una etapa que no existe. Para obtener más información, consulta Invocación de las API de REST en API Gateway. |
Resolución
Identificación de la causa del error
Si el error 403 proviene de otros recursos, como en los ejemplos siguientes, es posible que el error se deba a otra causa:
- Si el error se notifica en un navegador web, es posible que la configuración del proxy sea incorrecta y no permita el acceso HTTP.
- Si hay otro servicio de AWS delante de la API, como Amazon CloudFront, el servicio puede rechazar la solicitud.
Para identificar la causa del error, configura el registro de acceso de Amazon CloudWatch para la API. A continuación, consulta los eventos de registro de la API en CloudWatch para determinar si las solicitudes llegan a la API.
Nota: Las API HTTP no admiten el registro de ejecución.
Para solucionar los errores 403 devueltos por un nombre de dominio personalizado que requiere TLS mutua e invoca una API HTTP, sigue estos pasos:
- Crea una nueva asignación de API para probar la invocación de la API de REST para el nombre de dominio personalizado.
- Para identificar la causa de los errores, consulta los eventos de registro de la API de REST en CloudWatch.
- Después de identificar y resolver el error, redirige la asignación de API a la API HTTP.
Confirmación de si el recurso solicitado existe en la definición de la API
Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulte Troubleshoot AWS CLI errors. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.
Utiliza la consola de API Gateway o la AWS CLI para verificar las siguientes configuraciones:
- Has desplegado la API con la definición de API más reciente.
- El recurso solicitado existe en la definición de la API.
Utilización de curl para obtener los detalles de la solicitud y la respuesta
Si puedes reproducir el error, usa el comando curl -v para obtener más detalles entre el cliente y la API:
curl -X HTTP_VERB -v https://{api_id}.execute-api.{region}.amazonaws.com/{stage_name}/{resource_name}
Verificación de si el encabezado de la solicitud es correcto
Si el error se debe a una clave de API que no es válida, verifica que se haya enviado el encabezado “x-api-key” en la solicitud. Si el encabezado de la solicitud no está incluido o no es correcto, actualízalo.
Comprobación de si la configuración de DNS de los puntos de enlace de Amazon VPC de la interfaz es correcta
Nota: Las siguientes tareas se aplican a las API que invocas desde una Amazon VPC que solo tenga un punto de enlace de VPC de la interfaz.
Comprueba que la configuración de DNS del punto de enlace de la interfaz sea correcta en función del tipo de API que utilices.
Para invocar una API regional desde una Amazon VPC, desactiva los nombres de DNS privados en el punto de enlace de la interfaz. A continuación, un DNS público puede resolver el nombre de host del punto de enlace. Para obtener más información, consulta Creación de una API privada.
Para usar el nombre de DNS privado de la API para invocar una API privada desde una Amazon VPC, activa los nombres de DNS privados en el punto de enlace. Entonces, los recursos de subred local de Amazon VPC pueden resolver el nombre de host del punto de enlace de la interfaz.
Nota: Si utilizas alguna de las siguientes opciones para invocar la API privada, no tienes que configurar el nombre de DNS público de la API privada ni un alias de Amazon Route 53.
Revisión de la política de recursos de la API
Revisa la política de recursos de la API para comprobar las siguientes configuraciones:
- En el caso de las API que invoques desde una Amazon VPC con un punto de enlace de VPC de la interfaz: La política de recursos de la API otorga acceso a la API a la Amazon VPC o al punto de enlace de la interfaz.
- Las especificaciones y el formato de los recursos de la política de recursos son correctos.
Nota: Al guardar una política de recursos, las especificaciones del recurso no se validan. Para ver ejemplos, consulta los Ejemplos de políticas de recursos de API Gateway. - El usuario que llama puede invocar el punto de enlace de la API mediante el tipo de autenticación que hayas definido para la API. Para obtener más información, consulta Cómo afectan las políticas de recursos de API Gateway al flujo de trabajo de autorización.
Revisión de los mensajes de solicitud y respuesta HTTP
Reproduce el error en un navegador web. Utiliza las herramientas de red del navegador para capturar los mensajes de solicitud y respuesta HTTP y analizarlos con el fin de determinar dónde se produjo el error.
Nota: Para el análisis sin conexión, guarda los mensajes en un archivo HTTP Archive (HAR).
Información relacionada
Common errors (Errores comunes)
¿Cómo permito que solo direcciones IP específicas accedan a mi API de REST de API Gateway?
¿Cómo soluciono los errores al conectarme a un punto de enlace de la API privada de API Gateway?
Proyecto Curl en el sitio web de curl
- Etiquetas
- Amazon API Gateway
- Idioma
- Español
Vídeos relacionados


Contenido relevante
- preguntada hace 6 meses
- preguntada hace 6 meses
- preguntada hace 4 meses
- preguntada hace 2 meses