Paramètres des SMS pour les groupes d'utilisateurs Amazon Cognito
Certains événements Amazon Cognito pour votre groupe d'utilisateurs peuvent amener Amazon Cognito à ennvironnemeevoyer des SMS à vos utilisateurs. Par exemple, si vous configurez votre groupe d'utilisateurs de façon à exiger la vérification par téléphone, Amazon Cognito envoie un SMS au moment où un utilisateur crée un compte dans votre application ou réinitialise son mot de passe. En fonction de l'action qui déclenche le SMS, celui-ci contient un code de vérification, un mot de passe temporaire ou un message de bienvenue.
Amazon Cognito utilise Amazon Simple Notification Service (Amazon SNS) pour l'envoi des SMS. Si vous envoyez un SMS via Amazon Cognito ou Amazon SNS pour la première fois, Amazon SNS vous place dans un environnement de test (sandbox). Dans l'environnement de test (sandbox), vous pouvez tester vos applications pour les SMS. Dans l'environnement de test (sandbox), les messages ne peuvent être envoyés qu'à des numéros de téléphone vérifiés.
Configuration de l'envoi de SMS pour la première fois dans des groupes d'utilisateurs Amazon Cognito
Amazon Cognito utilise Amazon SNS pour envoyer des SMS à vos groupes d'utilisateurs. Vous pouvez également utiliser un Déclencheur Lambda de l'expéditeur de SMS personnalisé pour utiliser vos propres ressources afin d'envoyer des SMS. La première fois que vous configurez Amazon SNS pour envoyer des SMS dans une Région AWS particulière, Amazon SNS place votre Compte AWS dans l'environnement de test (sandbox) pour SMS de cette région. Amazon SNS utilise l'environnement de test (sandbox) pour prévenir la fraude et les abus et répondre aux exigences de conformité. Quand votre Compte AWS se trouve dans l'environnement de test (sandbox), Amazon SNS impose certaines restrictions. Par exemple, vous pouvez envoyer des SMS à un maximum de 10 numéros de téléphone que vous avez vérifiés avec Amazon SNS. Tant que votre Compte AWS se trouve dans l'environnement de test (sandbox), n'utilisez pas votre configuration Amazon SNS pour les applications en production. Lorsque vous êtes dans l'environnement de test (sandbox), Amazon Cognito ne peut pas envoyer de SMS aux numéros de téléphone de vos utilisateurs.
Pour envoyer des SMS aux utilisateurs du groupe d'utilisateurs
-
Préparez un rôle IAM qu'Amazon Cognito peut utiliser pour envoyer des SMS avec Amazon SNS.
-
Choisissez la Région AWS pour les SMS Amazon SNS.
-
Obtenez une identité d'origine si vous souhaitez envoyer des SMS à des numéros de téléphone aux États-Unis.
-
Confirmez que vous vous trouvez dans l'environnement de test (sandbox) pour SMS.
-
Sortez votre compte de l'environnement de test (sandbox) Amazon SNS.
-
Vérifiez les numéros de téléphone pour Amazon Cognito dans Amazon SNS.
-
Terminez la configuration du groupe d'utilisateurs dans Amazon Cognito.
Étape 1 : Préparer un rôle IAM qu'Amazon Cognito peut utiliser pour envoyer des SMS avec Amazon SNS
Lorsque vous envoyez un SMS depuis votre groupe d'utilisateurs, Amazon Cognito endosse un rôle IAM dans votre compte. Amazon Cognito utilise l'autorisation sns:Publish
attribuée à ce rôle pour envoyer des SMS à vos utilisateurs. Dans la console Amazon Cognito, vous pouvez définir une sélection de rôle IAM à partir de l'onglet Messaging (Messagerie) de votre groupe d'utilisateurs, dans SMS ou effectuer cette sélection par l'intermédiaire de l'assistant de création de groupe d'utilisateurs.
L'exemple suivant de politique d'approbation de rôle IAM permet à un groupe d’utilisateurs Amazon Cognito une capacité limitée à assumer le rôle. Amazon Cognito peut assumer le rôle uniquement lorsqu'il le fait au nom du groupe d'utilisateurs dans la condition aws:SourceArn
et du Compte AWS dans la condition aws:SourceAccount
.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "cognito-idp.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
<your account number>
" }, "ArnLike": { "aws:SourceArn": "<your user pool ARN>
" } } }] }
Vous pouvez spécifier un ARN de groupe d'utilisateurs exact ou un ARN générique dans la valeur de la condition aws:SourceArn
. Recherchez les ARN de vos groupes d'utilisateurs dans la AWS Management Console ou avec une demande d'API DescribeUserPool.
Pour plus d'informations sur les rôles IAM et les stratégies d’approbation, veuillez consulter Termes et concepts relatifs aux rôles dans le Guide de l’utilisateur AWS Identity and Access Management.
Étape 2 : Choisir la Région AWS pour les SMS Amazon SNS
Dans certaines Régions AWS, vous pouvez choisir la région qui contient les ressources Amazon SNS que vous souhaitez utiliser pour les SMS Amazon Cognito. Dans toute Région AWS où Amazon Cognito est disponible, à l'exception de l'Asie-Pacifique (Séoul), vous pouvez utiliser les ressources Amazon SNS dans la Région AWS où vous avez créé votre groupe d'utilisateurs. Pour rendre l'envoi de SMS plus rapide et plus fiable lorsque vous avez le choix entre les régions, utilisez les ressources Amazon SNS dans la même région que votre groupe d'utilisateurs.
Dans AWS Management Console, vous ne pouvez changer la région pour les ressources SMS qu'après avoir passé à la nouvelle expérience de console Amazon Cognito.
Choisissez une région pour les ressources SMS dans l'étape Configure message delivery (Configurer la diffusion des messages) de l'assistant Nouveau groupe d'utilisateurs. Vous pouvez également choisir Edit (Modifier) sous SMS, dans l'onglet Messaging (Messagerie) d'un groupe d'utilisateurs existant.
Au lancement, pour certaines Régions AWS, Amazon Cognito a envoyé des SMS avec des ressources Amazon SNS dans une autre région. Pour définir votre région préférée, utilisez le paramètre SnsRegion
de l'objet SmsConfigurationType pour votre groupe d'utilisateurs. Lorsque vous créez par programme une ressource de groupes d'utilisateurs Amazon Cognito dans une région Amazon Cognito dans le tableau suivant et que vous ne fournissez pas de paramètre SnsRegion
, votre groupe d'utilisateurs peut envoyer des SMS avec des ressources Amazon SNS dans une région Amazon SNS héritée.
Les groupes d'utilisateurs Amazon Cognito figurant dans la Région AWS Asie-Pacifique (Séoul) doivent utiliser votre configuration Amazon SNS dans la région Asie-Pacifique (Tokyo).
Amazon SNS définit le quota des dépenses pour tous les nouveaux comptes à 1,00 USD par mois. Vous avez peut-être augmenté votre limite de dépenses dans une Région AWS que vous utilisez avec Amazon Cognito. Avant de changer la Région AWS pour les SMS Amazon SNS, ouvrez une demande d'augmentation de quota dans AWS Support Center pour augmenter votre limite dans la nouvelle région. Pour plus d'informations, consultez Demande d'augmentations de votre quota de dépenses mensuelles pour l'envoi de SMS pour Amazon SNS dans le Guide du développeur Amazon Simple Notification Service.
Vous pouvez envoyer des SMS pour toute région Amazon Cognito figurant dans le tableau suivant avec les ressources Amazon SNS dans la région Amazon SNS correspondante.
Région Amazon Cognito | Région Amazon SNS |
---|---|
USA Est (Ohio) | USA Est (Ohio), USA Est (Virginie du Nord) |
Asie-Pacifique (Mumbai) | Asie-Pacifique (Mumbai), Asie-Pacifique (Singapour) |
Canada (Centre) | Canada (Centre), USA Est (Virginie du Nord) |
Europe (Francfort) | Europe (Francfort), Europe (Irlande) |
Europe (Londres) | Europe (Londres), Europe (Irlande) |
Asie-Pacifique (Séoul) | Asie Pacifique (Tokyo) |
USA Est (Virginie du Nord) | USA Est (Virginie du Nord) |
USA Ouest (Californie du Nord) | USA Ouest (Californie du Nord) |
USA Ouest (Oregon) | US West (Oregon) |
Asie-Pacifique (Singapour) | Asie-Pacifique (Singapour) |
Asie-Pacifique (Sydney) | Asie-Pacifique (Sydney) |
Asia Pacific (Tokyo) | Asie Pacifique (Tokyo) |
Europe (Irlande) | Europe (Irlande) |
Europe (Paris) | Europe (Paris) |
Europe (Stockholm) | Europe (Stockholm) |
Europe (Milan) | Europe (Milan) |
Moyen-Orient (Bahreïn) | Moyen-Orient (Bahreïn) |
Amérique du Sud (Sao Paulo) | Amérique du Sud (São Paulo) |
Étape 2 : Obtenir une identité d'origine pour envoyer des SMS à des numéros de téléphone aux États-Unis
Si vous envisagez d'envoyer des SMS à des numéros de téléphone aux États-Unis, vous devez obtenir une identité d'origine, que vous optiez pour un environnement de test (sandbox) pour SMS ou pour un environnement de production.
Depuis le 1er juin 2021, les opérateurs aux État-Unis exigent une identité d'origine pour envoyer des messages à des numéros de téléphone aux État-Unis. Si vous ne disposez pas encore d'une identité d'origine, vous devez en obtenir une. Pour savoir comment obtenir une identité d'origine, consultez Demande de numéro dans le Guide de l'utilisateur Amazon Pinpoint.
Si vous opérez dans les Régions AWS suivantes, vous devez ouvrir un ticket AWS Support pour obtenir une identité d'origine. Pour obtenir des instructions, consultez Demande de prise en charge des SMS dans le Manuel du développeur Amazon Simple Notification Service.
-
USA Est (Ohio)
-
Europe (Stockholm)
-
Europe (Paris)
-
Europe (Milan)
-
Middle East (Bahrain)
-
Amérique du Sud (Sao Paulo)
-
USA Ouest (Californie du Nord)
Lorsque vous avez plusieurs identités d'origine dans la même Région AWS, Amazon SNS choisit un type d'identité d'origine dans l'ordre de priorité suivant : code abrégé, 10DLC, numéro gratuit. Vous ne pouvez pas modifier cette priorité. Pour plus d'informations, consultez FAQ Amazon SNS
Étape 3 : Confirmer que vous êtes bien dans l'environnement de test (sandbox) pour SMS
Suivez la procédure ci-dessous pour confirmer que vous êtes dans l'environnement de test (sandbox) pour SMS. Répétez cette procédure pour chaque Région AWS où vous disposez de groupes d'utilisateurs Amazon Cognito en production.
Étape 4 : Sortir votre compte de l'environnement de test (sandbox) Amazon SNS
Si vous testez votre application et que vous avez seulement besoin d'envoyer des SMS à des numéros de téléphone que vos administrateurs peuvent vérifier, ignorez cette étape et passez à l'étape 5.
Pour utiliser votre application en production, sortez votre compte de l'environnement de test (sandbox) pour SMS et faite-le entrer en production. Une fois que vous avez configuré une identité d'origine dans la Région AWS qui contient les ressources Amazon SNS que vous voulez qu'Amazon Cognito utilise, vous pouvez vérifier les numéros de téléphone américains pendant que votre Compte AWS reste dans l'environnement de test (sandbox) pour SMS. Quand votre environnement Amazon SNS est en production, vous n'avez pas besoin de vérifier les numéros de téléphone des utilisateurs dans Amazon SNS pour envoyer des SMS à vos utilisateurs.
Pour des instructions détaillées, consultez Sortie de l'environnement de test (sandbox) dans le Guide du développeur Amazon Simple Notification Service.
Étape 5 : Vérifier les numéros de téléphone pour Amazon Cognito dans Amazon SNS
Si vous avez sorti votre compte de l'environnement de test (sandbox) pour SMS, ignorez cette étape et passez à l'étape 6.
Lorsque vous vous trouvez dans l'environnement de test (sandbox) pour SMS, vous pouvez envoyer des messages à n'importe quel numéro de téléphone que vous avez vérifié avec Amazon SNS.
Pour vérifier un numéro de téléphone, procédez comme suit :
-
Ajoutez un numéro de téléphone de destination de l'environnement de test (sandbox) dans la section Text messaging (SMS) (SMS) de la console Amazon SNS.
-
Recevez un SMS avec un code au numéro de téléphone que vous avez fourni.
-
Saisissez le code de vérification à partir du SMS dans la console Amazon SNS.
Pour obtenir des instructions détaillées, consultez Ajout et vérification de numéros de téléphone dans l'environnement de test (sandbox) SMS dans le Manuel du développeur Amazon Simple Notification Service.
Amazon SNS limite le nombre de numéros de téléphone de destination que vous pouvez vérifier quand vous êtes dans l'environnement de test (sandbox) pour SMS. Consultez Environnement de test (sandbox) pour SMS dans le Guide du développeur Amazon Simple Notification Service.
Étape 6 : Terminer la configuration du groupe d'utilisateurs dans Amazon Cognito
Revenez à l'onglet du navigateur sous lequel vous avez créé ou modifié votre groupe d'utilisateurs. Exécutez la procédure . Une fois que vous avez ajouté une configuration SMS à votre groupe d'utilisateurs, Amazon Cognito envoie un message de test à un numéro de téléphone interne pour vérifier que votre configuration fonctionne. Amazon SNS facture chaque SMS de test.