View a markdown version of this page

Configure las redes, los grupos de seguridad y la autenticación de IAM - Amazon Neptune

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configure las redes, los grupos de seguridad y la autenticación de IAM

Las implementaciones en contenedores en Amazon ECS o Amazon EKS requieren una configuración de red y una administración de credenciales de IAM correctas para conectarse a Neptune.

Lista de verificación de los grupos de seguridad

  • El grupo de seguridad del clúster de Neptune debe permitir el TCP entrante en el puerto 8182 (o el puerto personalizado configurado para el clúster de Neptune) desde el nodo EKS de Amazon EKS o el rango CIDR del pod.

  • Si utiliza el complemento CNI de Amazon VPC con redes personalizadas, compruebe que la subred del pod tenga una ruta a la subred de Neptune.

  • Neptune debe estar en la misma Amazon VPC que su clúster de Amazon ECS o Amazon EKS, o estar conectado a través de la interconexión de Amazon VPC o Transit Gateway.

Verifique la conectividad desde el interior del contenedor

Antes de depurar los problemas a nivel de la aplicación, confirme la ruta de red ejecutando uno de los siguientes comandos desde el interior del contenedor:

AWS CLI
aws neptunedata get-engine-status \ --endpoint-url https://your-neptune-endpoint:8182

Para obtener más información, consulte get-engine-status en la Referencia de comandos. AWS CLI

SDK
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', region_name='us-east-1', endpoint_url='https://your-neptune-endpoint:8182', config=Config(read_timeout=10) ) response = client.get_engine_status() print(response['status'])
awscurl
awscurl https://your-neptune-endpoint:8182/status \ --region us-east-1 \ --service neptune-db
nota

En este ejemplo se supone que sus AWS credenciales están configuradas en su entorno. us-east-1Sustitúyala por la región de tu cúmulo de Neptuno.

curl
curl -k https://your-neptune-endpoint:8182/status
nota

La -k bandera omite la verificación del certificado. Úselo solo para las pruebas de conectividad, no en el código de producción.

Una respuesta correcta confirma que los grupos de seguridad, el enrutamiento y la resolución de DNS funcionan correctamente. Un tiempo de espera indica un problema a nivel de red.

Actualización de credenciales de IAM

Si utilizas la autenticación de IAM con Neptune, tus pods deben actualizar las credenciales antes de que caduquen. Recomendamos Amazon EKS Pod Identity para las nuevas implementaciones. Las funciones de IAM para cuentas de servicio (IRSA) también son compatibles y se utilizan ampliamente.

Con cualquiera de los dos enfoques, recupere las credenciales dentro de la función generadora de autenticación, no una vez al inicio. Los tokens IRSA y Pod Identity caducan después de 1 hora. Si guardas en caché las credenciales en el momento de la inicialización, las solicitudes fallarán cuando el token AccessDeniedException: security token expired caduque.

  • Para gremlin-go: llama cfg.Credentials.Retrieve(ctx) desde dentro de la función transferida a. gen NewDynamicAuth

  • Para Java: utilízalo NeptuneGremlinClient con una HandshakeInterceptor que actualice la firma de SigV4 en cada nueva conexión.

Cross-account access

Neptune no admite la autenticación IAM directa entre cuentas. Si su clúster de Amazon EKS está en una AWS cuenta diferente a la de su clúster de Neptune, el pod primero debe asumir una función en la cuenta de Neptune antes de autenticarse.

Configuración de ingreso para Graph Explorer

Si ejecuta Graph Explorer en un entorno contenerizado, asegúrese de que el proxy pueda acceder a todas las rutas, no solo. /explorer En Amazon EKS, configure las reglas del controlador de ingreso para permitir todas las rutas. En Amazon ECS, configure el grupo objetivo y las reglas de escucha del Application Load Balancer para reenviar todas las rutas al contenedor de Graph Explorer. El proxy de Graph Explorer realiza llamadas a/summary, /gremlin/openCypher, y. /sparql Path-restricted las reglas de enrutamiento rompen el proxy silenciosamente.