Conexión con gateways AWS

Esta página describe cómo integrar sus soluciones de Sensedia (Adaptive Governance y Developer Portal) con gateways de AWS, lo que permite la importación y el gobierno de APIs (conexiones nativas) publicadas en Amazon API Gateway.

Vea en esta página:

Versiones y Tipos de API Soportados

El Amazon API Gateway está estructurado en dos infraestructuras principales (v1 y v2). La importación de APIs mediante conexión nativa con AWS ofrece soporte para ambas.

  • REST API (v1). Versión tradicional de API Gateway, que proporciona el conjunto más completo de funcionalidades de gestión de APIs. Ver documentación oficial

  • HTTP API (v2). Infraestructura más reciente de Amazon API Gateway, optimizada para menor latencia y reducción de costos, enfocada en APIs HTTP de alto rendimiento e integraciones simplificadas con los servicios de AWS. Ver documentación oficial

Para un análisis detallado de las diferencias entre estas dos versiones, consulte: Diferencias entre REST APIs y HTTP APIs

La siguiente tabla resume las principales características de los tipos de API soportados:

Característica REST API (v1) HTTP API (v2)

Enfoque principal

Funcionalidades avanzadas de gestión de APIs

Alto rendimiento y menor costo

Soporte de Apps en el Portal

No (limitación del modelo HTTP API de AWS)

Importación mediante conexión nativa

  • La creación de la conexión nativa con AWS y la configuración de las credenciales es idéntica para ambas versiones. La distinción ocurre únicamente al momento de la importación de la API.

  • Actualmente, nuestras soluciones ofrecen soporte solo para APIs de los tipos REST (v1) y HTTP (v2). Las APIs del tipo WebSocket no son compatibles en este flujo de integración.

Credenciales de acceso

Para crear una connection for AWS API Gateway, debe ingresar sus credenciales de AWS en la pantalla de Connections.

Estas credenciales deben obtenerse desde el lado de AWS.

Acceda al AWS Management Console y siga los pasos a continuación para:

Consulte la documentación de AWS para obtener más detalles.

Para listar e importar sus APIs, asegúrese de que su política de acceso en AWS conceda permiso a los recursos correctos del servicio apigateway, según la versión del gateway:

  • Para gateways v1 (REST): la política debe permitir el acceso a los recursos bajo el espacio de nombres /restapis.

  • Para gateways v2 (HTTP): la política debe permitir el acceso a los recursos bajo el espacio de nombres /apis.

Si su política permite solo uno de estos conjuntos de recursos, se visualizarán únicamente las APIs correspondientes. En caso de que no haya permiso para ninguno de ellos, se mostrará un error en la pantalla de importación.

Creando un usuario

Existen varias formas de crear un usuario IAM en su cuenta AWS.

Con los pasos a continuación, creará un usuario a través del AWS Management Console:

  1. En la parte superior del AWS Management Console, en la barra de búsqueda, busque y seleccione IAM.
    detalle de la pantalla de búsqueda del AWS Management Console con el resultado para la búsqueda de IAM

  2. En el menú lateral izquierdo, en Access management, seleccione Users.
    pantalla del panel de gestión AWS con énfasis en la opción Users

  3. Haga clic en el botón Create user en la esquina superior derecha de la pantalla.

  4. En el campo User name, ingrese el valor: adaptive_governance_integration_aws y haga clic en Next.
    pantalla del panel de gestión AWS con énfasis en el campo user name

  5. En Permissions options, seleccione Attach policies directly y haga clic en Next.
    pantalla del panel de gestión AWS con énfasis en agregar <em>policies</em>

    En Permissions policies, NO seleccione Policy name.
  6. En Review and Create, revise la información y haga clic en Create user.


Agregando una política de acceso

  1. En la lista de usuarios, seleccione adaptive_governance_integration_aws
    lista de usuarios con énfasis en el usuario creado

  2. En la pestaña Permissions, en Permissions policies, haga clic en el botón Add Permissions y, a continuación, haga clic en Create inline policy.
    pantalla con énfasis en la pestaña Permissions y el botón Add Permissions

  3. En Policy editor, seleccione la pestaña JSON.
    pantalla con énfasis en la pestaña JSON

  4. Copie y pegue el siguiente código en el editor.

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "apigateway:GET"
                ],
                "Resource": [
                    "*"
                ]
            }
        ]
    }
    
    ou
    
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "apigateway:GET"
                ],
                "Resource": [
                    "arn:aws:apigateway:*::/restapis",
                    "arn:aws:apigateway:*::/restapis/*",
                    "arn:aws:apigateway:*::/restapis/*/stages",
                    "arn:aws:apigateway:*::/restapis/*/deployments",
                    "arn:aws:apigateway:*::/restapis/*/deployments/*",
    
                    "arn:aws:apigateway:*::/apis",
                    "arn:aws:apigateway:*::/apis/*",
    
                    "arn:aws:apigateway:*::/apikeys",
                    "arn:aws:apigateway:*::/usageplans"
                ]
            }
        ]
    }
    Dependiendo de las necesidades de su negocio, existen algunos modelos de policy que podrán ser utilizados.
  5. Haga clic en Next.

  6. En el campo Policy name, ingrese el valor adaptive_governance-aws y haga clic en Create policy.
    pantalla create and review


Creando las credenciales

  1. En la lista de usuarios, seleccione adaptive_governance_integration_aws y haga clic en la pestaña Security credentials.
    aws security credentials

  2. Desplácese hacia abajo y, en Access keys, haga clic en Create access key.
    aws create access key

  3. Seleccione la opción Application running on an AWS compute service.
    pantalla indicando la opción

    Marque la casilla de confirmación en la parte inferior de la página.
    casilla de confirmación
  4. Haga clic en Next.

  5. Verá su access key y su secret access key.
    Anote estas credenciales para utilizarlas en el registro de la conexión AWS en Adaptive Governance.
    pantalla Retrieve access key

  6. Haga clic en Done.

Creando una nueva conexión

Siga los pasos a continuación para crear una nueva conexión.

  1. Acceda a la pantalla Connections, haciendo clic en el menú lateral izquierdo o en el card en la pantalla inicial.

  2. Haga clic en el botón + CREATE CONNECTION, ubicado en la parte superior derecha de la pantalla.
    captura de pantalla de la pantalla connections con énfasis en el botón create connection

  3. Seleccione el proveedor de la conexión y haga clic en CREATE CONNECTION.
    detalle de la pantalla de creación de conexión con la etapa 1

  4. Seleccione el modo de conexión: si es nativa (datos actualizados directamente con el proveedor) o no (carga manual).
    pantalla con opciones de conexión

Conexión no nativa:

  • Defina un nombre para la conexión y haga clic en NEXT.
    pantalla con campo para el nombre de la conexión

  • Confirme la información y haga clic en SAVE.

Conexión nativa:

  • Defina un nombre para la conexión y haga clic en NEXT.
    pantalla con campo para el nombre de la conexión

  • Seleccione un modo de conexión: Access Key o IAM (Role ).
    pantalla con opciones de autenticación

    • Para Access Key:

      • AWS Access Key Id: informe la clave de su recurso AWS.

      • AWS Secret Access Key Id: informe el secreto de la clave de AWS.
        detalle de la pantalla de configuración con campos para AWS Access Key Id y AWS Secret Access Key Id

      • Revise la información y haga clic en SAVE.

    • Para IAM:

      • Configure your role: copie el código de ejemplo que se muestra en esta sección y utilícelo en su proveedor de AWS para crear un rol:

        • Pasos en la Consola de AWS:

          • Vaya a IAM > Roles y haga clic en el botón "Create role".

          • Seleccione "Custom trust policy" y pegue el código copiado.

          • Agregue la política generada en la etapa Agregando una política de acceso.

          • Concluya la creación del rol, agregando la información necesaria, como tags.

          • Después de crear el rol, copie el Role ARN generado por AWS.

      • Role ARN: pegue aquí el Role ARN generado.

      • Revise la información y haga clic en SAVE.

        detalle de la pantalla de configuración con campos para Configure your role y Role ARN

Importando APIs

La importación de APIs a partir de una conexión nativa con AWS admite múltiples tipos de API Gateway.

Los tipos de API compatibles son:

  • REST — APIs provenientes de AWS REST API Gateway (v1).

  • HTTP — APIs provenientes de AWS HTTP API Gateway (v2).

Estos tipos se presentan en la columna Protocol Type durante el proceso de importación.

Para importar APIs, siga los pasos a continuación:

  1. Ingrese a la pantalla Connections, haciendo clic en el menú lateral izquierdo o en la card de la pantalla de inicio.

  2. Encuentre la conexión que desea editar y haga clic en el ícono icon view 2.
    Si es necesario, utilice la barra de búsqueda para localizar la conexión deseada.

  3. En la pantalla API Imports, haga clic en el botón + IMPORT API, ubicado justo debajo de General Info y encima de API Imports.
    captura de pantalla de la pantalla de importación de APIs

  4. Seleccione la región de las APIs que desea importar.
    captura de pantalla de la pantalla de importación de APIs para gateways AWS

  5. En la lista de APIs, utilice la columna Type para identificar el protocolo (REST o HTTP). Seleccione las APIs deseadas y haga clic en SAVE.
    Lista de importación mostrando la columna Type con REST y HTTP

La generación de credenciales (creación de Apps) en o Developer Portal no es compatible actualmente para APIs del tipo HTTP (v2), debido a una limitación inherente a esta versión de AWS Gateway.

En estos casos, la opción Enable Apps registration permanece deshabilitada en la configuración de API Docs del Portal Manager.

La funcionalidad de Discovery también identifica y unifica APIs de ambas versiones (REST y HTTP) automáticamente, siempre que los permisos de acceso del usuario IAM cubran los recursos necesarios. Si cuenta con permiso para solo una de las versiones, únicamente se listarán las APIs correspondientes.

Siempre que una API sea actualizada, haga clic en ícono de recargar.
detalle con el botón para recargar APIs importadas

Thanks for your feedback!
EDIT

Share your suggestions with us!
Click here and then [+ Submit idea]