Solucionar problemas con los proveedores de identidad personalizados - AWS Transfer Family

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.

Solucionar problemas con los proveedores de identidad personalizados

En esta sección se describen las posibles soluciones para los problemas relacionados con los proveedores de identidad personalizados con Transfer Family.

Solucionar errores de integración de API Gateway

Descripción

Los usuarios no pueden autenticarse con su servidor Transfer Family y, al probar su proveedor de identidad, aparecen errores como:

{ "Response": "", "StatusCode": 500, "Message": "Internal server error" }

Causa

Los errores de integración de API Gateway pueden producirse debido a:

  • Configuración de API Gateway incorrecta

  • Los errores de la función Lambda no se gestionan correctamente

  • Problemas de permisos entre API Gateway y Lambda

  • Respuestas malformadas de la función Lambda

Solución

Para solucionar errores de integración de API Gateway:

  1. Consulte los registros de funciones de Lambda para obtener información detallada sobre los errores:

    • En la CloudWatch consola, vaya a Grupos de registros >/aws/lambda/your-function-name

    • Busca mensajes de error o rastros de pila que indiquen la causa raíz

  2. Compruebe que la función Lambda devuelva respuestas con el formato correcto:

    { "Role": "arn:aws:iam::123456789012:role/TransferUserRole", "HomeDirectory": "/mybucket/home/username" }
  3. Habilite el CloudWatch registro detallado para API Gateway:

    • En la consola de API Gateway, selecciona tu API y elige Stages

    • Seleccione su etapa y, en Registros/Rastreo, active Registros CloudWatch

    • Establezca el nivel de registro en ERROR o INFO

  4. Pruebe su punto final de API Gateway directamente:

    curl -X POST https://your-api-id.execute-api.region.amazonaws.com/prod/servers/your-server-id/users/username/config \ -H "Content-Type: application/json" \ -d '{"Password": "password"}'
  5. Compruebe los permisos entre API Gateway y Lambda:

    • Asegúrese de que API Gateway tenga permiso para invocar su función Lambda

    • Compruebe que el rol de ejecución de la función Lambda tenga los permisos necesarios.

Solucionar problemas de tiempos de espera de funciones Lambda

Descripción

Cuando los usuarios intentan autenticarse en su servidor Transfer Family mediante un proveedor de identidad personalizado, sufren grandes retrasos seguidos de errores de autenticación. En sus registros Lambda, ve errores de tiempo de espera.

Causa

Las funciones Lambda utilizadas para los proveedores de identidad personalizados tienen un tiempo de espera predeterminado de 3 segundos. Si su lógica de autenticación tarda más que este tiempo de espera (por ejemplo, al consultar bases de datos externas o realizar llamadas a la API a proveedores de identidad de terceros), se agotará el tiempo de espera de la función y la autenticación fallará.

Solución

Para resolver problemas de tiempo de espera de Lambda:

  1. Aumente el tiempo de espera de la función Lambda:

    • En la consola Lambda, vaya a su función y seleccione la pestaña Configuración

    • En Configuración general, haga clic en Editar

    • Aumente el valor de tiempo de espera (se recomienda un máximo de 15 segundos para las funciones de autenticación)

  2. Optimice el código de su función Lambda:

    • Utilice la agrupación de conexiones para las consultas a la base de datos

    • Implemente el almacenamiento en caché para los datos de acceso frecuente

    • Minimice las llamadas a la API externa durante la autenticación

  3. Considere la posibilidad de utilizar la simultaneidad aprovisionada de Lambda para eliminar los arranques en frío:

    aws lambda put-provisioned-concurrency-config \ --function-name my-authentication-function \ --qualifier prod \ --provisioned-concurrent-executions 5
  4. Supervise el rendimiento de Lambda mediante CloudWatch métricas y configure alarmas para los umbrales de duración

Solucione problemas constantes de tiempo de espera de Lambda

Descripción

Los usuarios experimentan tiempos de espera constantes cuando utilizan una función Lambda para la autenticación.

Causa

Lambda no puede acceder al AWS servicio correspondiente utilizado para la autenticación (como DynamoDB, Secrets Manager u otro proveedor de identidad).

Solución

Compruebe que las subredes puedan acceder a los servicios. AWS O bien, si se conecta a un proveedor de identidad de Internet (como Okta), compruebe que la subred de la función Lambda pueda acceder a Internet a través de una puerta de enlace NAT.

Solucione los problemas de las excepciones KeyError

Descripción

En tus entradas de registro de Transfer Family, observas KeyError «» excepciones.

Causa

La causa más probable es que el usuario o identity_provider registro tenga un formato incorrecto o falten campos obligatorios.

Solución

Revise el ERRORS registro, ubicado en el grupo de /aws/transfer/your-server-id registros, para obtener pistas.