TestIdentityProvider - 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.

TestIdentityProvider

Si el IdentityProviderType de un servidor con protocolo de transferencia de archivos habilitado es AWS_DIRECTORY_SERVICE o API_Gateway, comprueba si su proveedor de identidad está configurado correctamente. Le recomendamos que inicie esta operación para comprobar su método de autenticación tan pronto como cree el servidor. De este modo, puede solucionar problemas relacionados con la integración del proveedor de identidades para garantizar que sus usuarios puedan utilizar el servicio correctamente.

Los parámetros ServerId y UserName son obligatorios. Los ServerProtocol, SourceIp y UserPassword son todos opcionales.

Tenga en cuenta lo siguiente:

  • No puede usar TestIdentityProvider si el IdentityProviderType de su servidor es SERVICE_MANAGED.

  • TestIdentityProvider no funciona con claves: solo acepta contraseñas.

  • TestIdentityProvider puede probar el funcionamiento de la contraseña para un proveedor de identidad personalizado que gestione las claves y las contraseñas.

  • Si proporciona valores incorrectos para algún parámetro, el campo Response estará vacío.

  • Si proporciona un identificador de servidor para un servidor que utiliza usuarios administrados por el servicio, aparecerá un error:

    An error occurred (InvalidRequestException) when calling the TestIdentityProvider operation: s-server-ID not configured for external auth

  • Si introduce una ID de servidor para el parámetro --server-id que no identifica a un servidor de transferencia real, recibirá el siguiente error:

    An error occurred (ResourceNotFoundException) when calling the TestIdentityProvider operation: Unknown server.

    Es posible que su servidor se encuentre en una región diferente. Puede especificar una región añadiendo lo siguiente: --region region-code, por ejemplo, --region us-east-2 para especificar un servidor en Este de EE. UU. (Ohio).

Sintaxis de la solicitud

{ "ServerId": "string", "ServerProtocol": "string", "SourceIp": "string", "UserName": "string", "UserPassword": "string" }

Parámetros de la solicitud

Para obtener información sobre los parámetros comunes a todas las acciones, consulte Parámetros comunes.

La solicitud acepta los siguientes datos en formato JSON.

ServerId

Identificador asignado por el sistema para un servidor específico. El método de autenticación de usuarios de ese servidor se prueba con un nombre de usuario y contraseña.

Tipo: cadena

Limitaciones de longitud: longitud fija de 19.

Patrón: s-([0-9a-f]{17})

Obligatorio: sí

ServerProtocol

El tipo de protocolo de transferencia de archivos que se probará.

Los protocolos disponibles son:

  • Protocolo de File Transfer (SFTP) Secure Shell (SSH)

  • Protocolo seguro de File Transfer (FTPS)

  • Protocolo de File Transfer (FTP)

  • Declaración de aplicabilidad 2 (AS2)

Tipo: cadena

Valores válidos: SFTP | FTP | FTPS | AS2

Obligatorio: no

SourceIp

La dirección IP de origen de la cuenta que será comprobada.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 0. La longitud máxima es de 32 caracteres.

Patrón: \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}

Obligatorio: no

UserName

El nombre de la cuenta que será comprobada.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 3. La longitud máxima es de 100 caracteres.

Patrón: [\w][\w@.-]{2,99}

Obligatorio: sí

UserPassword

La contraseña de la cuenta que se probará.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 0. La longitud máxima es 1024.

Obligatorio: no

Sintaxis de la respuesta

{ "Message": "string", "Response": "string", "StatusCode": number, "Url": "string" }

Elementos de respuesta

Si la acción se realiza correctamente, el servicio devuelve una respuesta HTTP 200.

El servicio devuelve los datos siguientes en formato JSON.

Message

Un mensaje que indica si la prueba se ha realizado correctamente o no.

nota

Si se devuelve una cadena vacía, lo más probable es que la autenticación haya fallado debido a un nombre de usuario o contraseña incorrectos.

Tipo: cadena

Response

La respuesta que devuelve su puerta de enlace API o su función de Lambda.

Tipo: cadena

StatusCode

El código de estado HTTP que es la respuesta de su puerta de enlace API o de su función de Lambda.

Tipo: entero

Url

El punto de conexión del servicio utilizado para autenticar a un usuario.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 0. La longitud máxima es de 255 caracteres.

Errores

Para obtener información acerca de los errores comunes a todas las acciones, consulte Errores comunes.

InternalServiceError

Esta excepción se produce cuando se produce un error en el AWS Transfer Family servicio.

Código de estado HTTP: 500

InvalidRequestException

Esta excepción se produce cuando el cliente envía una solicitud con un formato incorrecto.

Código de estado HTTP: 400

ResourceNotFoundException

Esta excepción se produce cuando el servicio AWS Transfer Family no encuentra un recurso.

Código de estado HTTP: 400

ServiceUnavailableException

La solicitud ha fallado porque el servicio AWS Transfer Family no está disponible.

Código de estado HTTP: 500

Ejemplos

Ejemplo

La siguiente solicitud devuelve un mensaje de un proveedor de identidad en el que se indica que una combinación de nombre de usuario y contraseña es una identidad válida para utilizarla AWS Transfer Family.

Solicitud de muestra

{ "ServerID": "s-01234567890abcdef", "UserName": "my_user", "UserPassword": "MyPassword-1" }

Ejemplo

La siguiente respuesta muestra un ejemplo de respuesta para una prueba satisfactoria.

Respuesta de ejemplo

"Response":" {\"homeDirectory\":\"/mybucket001\",\"homeDirectoryDetails\":null,\"homeDirectoryType\":\"PATH\",\"posixProfile\":null, \"publicKeys\":\"[ssh-rsa-key]\",\"role\":\"arn:aws:iam::123456789012:role/my_role\",\"policy\":null,\"username\":\"transferuser002\", \"identityProviderType\":null,\"userConfigMessage\":null)"} "StatusCode": "200", "Message": ""

Ejemplo

La siguiente respuesta indica que el usuario especificado pertenece a más de un grupo al que tiene acceso.

"Response":"", "StatusCode":200, "Message":"More than one associated access found for user's groups."

Ejemplo

Si ha creado y configurado un proveedor de identidad personalizado mediante una puerta de enlace API, puede introducir el siguiente comando para probar su usuario:

aws transfer test-identity-provider --server-id s-0123456789abcdefg --user-name myuser

donde s-0123456789abcdefg sea su servidor de transferencias y myuser, el nombre de usuario de su usuario personalizado.

Si el comando se ejecuta correctamente, la respuesta será similar a la siguiente, donde:

  • Cuenta de AWS El ID es 012345678901

  • El rol de usuario es user-role-api-gateway

  • El directorio de inicio es myuser-bucket

  • La clave pública es public-key

  • La URL de invocación es invocation-URL

{ "Response": "{\"Role\": \"arn:aws:iam::012345678901:role/user-role-api-gateway\",\"HomeDirectory\": \"/myuser-bucket\",\"PublicKeys\": \"[public-key]\"}", "StatusCode": 200, "Message": "", "Url": "https://invocation-URL/servers/s-0123456789abcdefg/users/myuser/config" }

Véase también

Para obtener más información sobre el uso de esta API en uno de los AWS SDK específicos del idioma, consulta lo siguiente: