Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
TestIdentityProvider
Si le serveur compatible avec le protocole IdentityProviderType
de transfert de fichiers est AWS_DIRECTORY_SERVICE
ouAPI_Gateway
, teste si votre fournisseur d'identité est correctement configuré. Nous vous recommandons vivement d'appeler cette opération pour tester votre méthode d'authentification dès la création de votre serveur. Ce faisant, vous pouvez résoudre les problèmes liés à l'intégration du fournisseur d'identité afin de garantir que vos utilisateurs peuvent utiliser le service avec succès.
Les paramètres ServerId
et UserName
sont obligatoires. Les ServerProtocol
SourceIp
, et UserPassword
sont tous facultatifs.
Notez ce qui suit :
-
Vous ne pouvez pas l'utiliser
TestIdentityProvider
si leIdentityProviderType
de votre serveur l'estSERVICE_MANAGED
. -
TestIdentityProvider
ne fonctionne pas avec les clés : il n'accepte que les mots de passe. -
TestIdentityProvider
peut tester le fonctionnement du mot de passe pour un fournisseur d'identité personnalisé qui gère les clés et les mots de passe. -
Si vous fournissez des valeurs incorrectes pour un paramètre, le
Response
champ est vide. -
Si vous fournissez un ID de serveur pour un serveur qui utilise des utilisateurs gérés par des services, le message d'erreur suivant s'affiche :
An error occurred (InvalidRequestException) when calling the TestIdentityProvider operation: s-server-ID not configured for external auth
-
Si vous entrez un ID de serveur pour le
--server-id
paramètre qui n'identifie pas un véritable serveur de transfert, le message d'erreur suivant s'affiche :An error occurred (ResourceNotFoundException) when calling the TestIdentityProvider operation: Unknown server
.Il est possible que votre serveur se trouve dans une autre région. Vous pouvez spécifier une région en ajoutant ce qui suit :
--region region-code
, par exemple--region us-east-2
pour spécifier un serveur dans l'est des États-Unis (Ohio).
Syntaxe de la requête
{
"ServerId": "string
",
"ServerProtocol": "string
",
"SourceIp": "string
",
"UserName": "string
",
"UserPassword": "string
"
}
Paramètres de demande
Pour plus d'informations sur les paramètres courants pour toutes les actions, consultez Paramètres courants.
La demande accepte le JSON format des données suivantes.
- ServerId
-
Identifiant attribué par le système à un serveur spécifique. La méthode d'authentification utilisateur de ce serveur est testée avec un nom d'utilisateur et un mot de passe.
Type : String
Contraintes de longueur : longueur fixe de 19.
Modèle :
s-([0-9a-f]{17})
Obligatoire : oui
- ServerProtocol
-
Type de protocole de transfert de fichiers à tester.
Les protocoles disponibles sont :
-
Protocole de transfert de fichiers Secure Shell (SSHSFTP)
-
Protocole de transfert de fichiers sécurisé (FTPS)
-
Protocole de transfert de fichiers (FTP)
-
Déclaration d'applicabilité (2) AS2
Type : String
Valeurs valides :
SFTP | FTP | FTPS | AS2
Obligatoire : non
-
- SourceIp
-
Adresse IP source du compte à tester.
Type : String
Contraintes de longueur : longueur minimum de 0. Longueur maximale de 32.
Modèle :
\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}
Obligatoire : non
- UserName
-
Nom du compte à tester.
Type : String
Contraintes de longueur : Longueur minimum de 3. Longueur maximum de 100.
Modèle :
[\w][\w@.-]{2,99}
Obligatoire : oui
- UserPassword
-
Le mot de passe du compte à tester.
Type : String
Contraintes de longueur : longueur minimum de 0. Longueur maximale de 1024.
Obligatoire : non
Syntaxe de la réponse
{
"Message": "string",
"Response": "string",
"StatusCode": number,
"Url": "string"
}
Eléments de réponse
Si l'action aboutit, le service renvoie une réponse HTTP 200.
Les données suivantes sont renvoyées sous JSON forme formatée par le service.
- Message
-
Message indiquant si le test a réussi ou non.
Note
Si une chaîne vide est renvoyée, la cause la plus probable est que l'authentification a échoué en raison d'un nom d'utilisateur ou d'un mot de passe incorrect.
Type : String
- Response
-
La réponse renvoyée par votre API passerelle ou votre fonction Lambda.
Type : String
- StatusCode
-
Le code HTTP d'état qui est la réponse de votre API passerelle ou de votre fonction Lambda.
Type : entier
- Url
-
Point de terminaison du service utilisé pour authentifier un utilisateur.
Type : String
Contraintes de longueur : longueur minimum de 0. Longueur maximale de 255.
Erreurs
Pour plus d'informations sur les erreurs courantes pour toutes les actions, consultez Erreurs courantes.
- InternalServiceError
-
Cette exception est levée lorsqu'une erreur se produit dans le AWS Transfer Family service.
HTTPCode de statut : 500
- InvalidRequestException
-
Cette exception est levée lorsque le client soumet une demande mal formée.
HTTPCode de statut : 400
- ResourceNotFoundException
-
Cette exception est levée lorsqu'aucune ressource n'est trouvée par le service AWS Transfer Family.
HTTPCode de statut : 400
- ServiceUnavailableException
-
La demande a échoué car le service AWS Transfer Family n'est pas disponible.
HTTPCode de statut : 500
Exemples
Exemple
La demande suivante renvoie un message d'un fournisseur d'identité indiquant qu'une combinaison nom d'utilisateur et mot de passe constitue une identité valide à utiliser AWS Transfer Family.
Exemple de demande
{
"ServerID": "s-01234567890abcdef",
"UserName": "my_user",
"UserPassword": "MyPassword-1"
}
Exemple
La réponse suivante montre un exemple de réponse pour un test réussi.
Exemple de réponse
"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": ""
Exemple
La réponse suivante indique que l'utilisateur spécifié appartient à plusieurs groupes ayant accès.
"Response":"", "StatusCode":200, "Message":"More than one associated access found for user's groups."
Exemple
Si vous avez créé et configuré un fournisseur d'identité personnalisé à l'aide d'une API passerelle, vous pouvez entrer la commande suivante pour tester votre utilisateur :
aws transfer test-identity-provider --server-id s-0123456789abcdefg --user-name myuser
où s-0123456789abcdefg est votre serveur de transfert et myuser est le nom d'utilisateur de votre utilisateur personnalisé.
Si la commande aboutit, votre réponse est similaire à la suivante, où :
-
Compte AWS L'identifiant est 012345678901
-
Le rôle de l'utilisateur est user-role-api-gateway
-
Le répertoire de base est myuser-bucket
-
La clé publique est une clé publique
-
L'invocation URL est une 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" }
consultez aussi
Pour plus d'informations sur son utilisation API dans l'une des langues spécifiques AWS SDKs, consultez ce qui suit :