Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

1K
Vistas
"La solicitud EC2 Metadata roleName devolvió un error" al usar la biblioteca de cifrado aws con NestJS

Estoy tratando de usar SDK de cifrado de AWS en una aplicación NestJS, la siguiente fuente de código muestra la implementación.

 import { Controller, Get } from '@nestjs/common'; import {KmsKeyringNode, encrypt} from '@aws-crypto/client-node' @Controller('encryption') export class EncryptionController { // constructor() {} @Get() async crypt() { const generatorKeyId = "generatior key"; const masterKeyId = "master key id"; const keyring = new KmsKeyringNode({keyIds:[masterKeyId], generatorKeyId: generatorKeyId}); const plainText = "My passwords for senstive data"; const context = { accountId: "100", purpose: "youtube demo", country: "Sri Lanka" }; const { result } = await encrypt(keyring, plainText, { encryptionContext: context }); console.log(result) } }

pero cuando ejecuto una solicitud para ver el resultado de mi implementación recibo el siguiente error

 Error: connect EHOSTUNREACH 169.254.169.254:80 at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1128:14) { message: 'Missing credentials in config, if using AWS_CONFIG_FILE, set AWS_SDK_LOAD_CONFIG=1', errno: 'EHOSTUNREACH', code: 'CredentialsError', syscall: 'connect', address: '169.254.169.254', port: 80, time: 2020-06-09T11:41:47.638Z, originalError: { message: 'Could not load credentials from any providers', errno: 'EHOSTUNREACH', code: 'CredentialsError', syscall: 'connect', address: '169.254.169.254', port: 80, time: 2020-06-09T11:41:47.638Z, originalError: { message: 'EC2 Metadata roleName request returned error', errno: 'EHOSTUNREACH', code: 'EHOSTUNREACH', syscall: 'connect', address: '169.254.169.254', port: 80, time: 2020-06-09T11:41:47.637Z, originalError: [Object] } } }

Sin embargo, copié un script de nodejs de este tutorial para ver si funciona con mi configuración de aws sdk y no recibí ningún error, también si ejecuté métodos de cifrado de aws kms en el cli no tuve ningún error.

Intenté exportar la variable AWS_SDK_LOAD_CONFIG=1 como vi en otros errores similares.

¿Alguien sabe lo que está pasando?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Yo tuve el mismo problema. Me costó bastante dolor de cabeza porque tenía esto ejecutándose en AWS Fargate y la depuración no es tan fácil allí.

El error significa que el SDK de Javascript no puede encontrar las credenciales de AWS. Aquí puede ver en qué orden el SDK intenta cargar las credenciales desde: https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-credentials-node.html

Mi error fue bastante vergonzoso, solo tenía un error tipográfico en mis variables de entorno. Mi variable era AWS_ACCESSS_KEY_ID en lugar de AWS_ACCESS_KEY_ID . (Bastante difícil ver la diferencia, ¿verdad?)

Entonces, probablemente verifique dos veces los nombres de sus variables de entorno (o archivos de configuración)

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda