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.
Utilisation de l'authentification adaptative
Avec l’authentification adaptative, vous pouvez configurer votre groupe d’utilisateurs pour bloquer les connexions suspectes ou ajouter un deuxième facteur d’authentification en réponse à un niveau de risque accru. Pour chaque tentative de connexion, Amazon Cognito génère un score de risque mesurant la probabilité que la demande de connexion provienne d’une source compromise. Ce score de risque est basé sur les facteurs relatifs à l'appareil et à l'utilisateur fournis par votre application, ainsi que sur d'autres facteurs qu'Amazon Cognito obtient à partir de la demande. Certains facteurs qui contribuent à l'évaluation des risques par Amazon Cognito sont l'adresse IP et l'agent utilisateur, l'agent utilisateur et la distance géographique par rapport aux autres tentatives de connexion. L'authentification adaptative peut activer ou exiger l'authentification multifactorielle (MFA) pour un utilisateur de votre groupe d'utilisateurs lorsqu'Amazon Cognito détecte un risque dans la session d'un utilisateur et que celui-ci n'a pas encore choisi MFA de méthode. Lorsque vous activez l'authentification MFA pour un utilisateur, celui-ci est toujours invité à fournir ou à configurer un deuxième facteur lors de l'authentification, quelle que soit la manière dont vous avez configuré l'authentification adaptative. Du point de vue de votre utilisateur, votre application propose de l'aider à se configurerMFA, et Amazon Cognito l'empêche éventuellement de se reconnecter tant qu'il n'a pas configuré un facteur supplémentaire.
Amazon Cognito publie des statistiques concernant les tentatives de connexion, leurs niveaux de risque et les échecs rencontrés par Amazon. CloudWatch Pour de plus amples informations, veuillez consulter Afficher les indicateurs de protection contre les menaces.
Pour ajouter l’authentification adaptative à votre groupe d’utilisateurs, consultez Fonctionnalités de sécurité avancées du pool d'utilisateurs.
Rubriques
Présentation de l’authentification adaptative
Dans l'onglet Sécurité avancée de la console Amazon Cognito, vous pouvez choisir les paramètres de l'authentification adaptative, notamment les mesures à prendre en fonction des différents niveaux de risque et la personnalisation des messages de notification destinés aux utilisateurs. Vous pouvez attribuer une configuration de sécurité avancée globale à tous vos clients d’application, mais appliquez une configuration au niveau du client aux clients d’application individuels.
L’authentification adaptative Amazon Cognito attribue l’un des niveaux de risque suivants à chaque session utilisateur : élevé, moyen, faible ou aucun risque.
Examinez attentivement les options qui s’offrent à vous lorsque vous modifiez Enforcement method (Méthode d’application) en remplaçant Audit-only (Audit uniquement) par Full-function (Fonction complète). Les réponses automatiques que vous appliquez aux niveaux de risque influent sur le niveau de risque qu’Amazon Cognito affecte aux sessions d’utilisateur suivantes présentant les mêmes caractéristiques. Par exemple, une fois que vous avez choisi de ne réaliser aucune action ou de Allow (Autoriser) les sessions d’utilisateur qu’Amazon Cognito évalue initialement comme présentant un risque élevé, Amazon Cognito considère que les sessions similaires présentent un risque moindre.
Option |
Action |
---|---|
Autorisation | Les utilisateurs peuvent se connecter sans facteur supplémentaire. |
Facultatif MFA | Les utilisateurs qui disposent d’un second facteur configuré doivent répondre à la demande de vérification du second facteur pour se connecter. Un numéro de téléphone SMS et un jeton TOTP logiciel sont les seconds facteurs disponibles. Les utilisateurs sans deuxième facteur configuré peuvent se connecter avec un seul ensemble d’informations d’identification. |
Exiger MFA | Les utilisateurs qui disposent d’un second facteur configuré doivent répondre à la demande de vérification du second facteur pour se connecter. Amazon Cognito bloque la connexion des utilisateurs qui ne disposent pas d’un second facteur configuré. |
Bloc | Amazon Cognito bloque toutes les tentatives de connexion au niveau de risque désigné. |
Note
Il n'est pas nécessaire de vérifier les numéros de téléphone pour les utiliser SMS comme deuxième facteur d'authentification.
Ajout de données de session et d'appareil utilisateur aux API demandes
Vous pouvez collecter et transmettre des informations relatives à la session de votre utilisateur à Amazon Cognito Advanced Security lorsque vous utilisez le API pour l'inscrire, le connecter et réinitialiser son mot de passe. Ces informations incluent l’adresse IP de votre utilisateur et un identifiant de périphérique unique.
Vous disposez peut-être d’un périphérique réseau intermédiaire entre vos utilisateurs et Amazon Cognito, comme un service proxy ou un serveur d’applications. Vous pouvez collecter les données contextuelles des utilisateurs et les transmettre à Amazon Cognito, afin que l’authentification adaptative calcule votre risque en fonction des caractéristiques du point de terminaison utilisateur, au lieu de votre serveur ou de votre proxy. Si votre application côté client appelle directement les opérations Amazon API Cognito, l'authentification adaptative enregistre automatiquement l'adresse IP source. Toutefois, elle n’enregistre pas d’autres informations de périphérique, telles que l’user-agent
, sauf si vous collectez également une empreinte digitale de périphérique.
Générez ces données à l'aide de la bibliothèque de collecte de données contextuelles Amazon Cognito et soumettez-les à la sécurité avancée d'Amazon Cognito avec ContextDatales paramètres et. UserContextData La bibliothèque de collecte de données contextuelles est incluse dans le AWS SDKs. Pour plus d’informations, consultez Intégration d’Amazon Cognito aux applications Web et mobiles. Vous pouvez soumettre ContextData
si vous avez activé des fonctionnalités de sécurité avancée dans votre groupe d’utilisateurs. Pour plus d’informations, consultez Configuration des fonctions de sécurité avancée.
Lorsque vous appelez les API opérations authentifiées Amazon Cognito suivantes depuis votre serveur d'applications, transmettez l'adresse IP de l'appareil de l'utilisateur dans le paramètre. ContextData
En outre, transmettez le nom de votre serveur, le chemin d’accès du serveur et les données d’empreinte digitale du périphérique.
Lorsque vous appelez Amazon Cognito pour des API opérations non authentifiées, vous pouvez soumettre à Amazon UserContextData
Cognito des fonctionnalités de sécurité avancées. Ces données incluent une empreinte digitale de périphérique dans le paramètre EncodedData
. Vous pouvez également soumettre un paramètre IpAddress
dans UserContextData
si les conditions suivantes sont remplies :
-
Vous avez activé des fonctions de sécurité avancée dans votre groupe d’utilisateurs. Pour plus d’informations, consultez Configuration des fonctions de sécurité avancée.
-
Votre client d’application possède un secret client. Pour plus d’informations, consultez Configuration d’un client d’application pour un groupe d’utilisateurs.
-
Vous avez activé Accept additional user context data (Accepter des données contextuelles utilisateur supplémentaires) dans votre client d’application. Pour de plus amples informations, veuillez consulter Acceptation de données contextuelles utilisateur supplémentaires (AWS Management Console).
Votre application peut renseigner le UserContextData
paramètre avec les données d'empreinte numérique codées de l'appareil et l'adresse IP de l'appareil de l'utilisateur lors des opérations non authentifiées Amazon Cognito suivantes. API
Acceptation de données contextuelles utilisateur supplémentaires (AWS Management Console)
Votre groupe d’utilisateurs accepte une adresse IP dans un paramètre UserContextData
, une fois que vous avez activé la fonction Accept additional user context data (Accepter des données contextuelles utilisateur supplémentaires). Vous n’avez pas besoin d’activer cette fonctionnalité si :
-
Vos utilisateurs ne se connectent qu'avec des API opérations authentifiées telles que AdminInitiateAuth , et vous utilisez le
ContextData
paramètre. -
Vous souhaitez uniquement que vos API opérations non authentifiées envoient une empreinte digitale de l'appareil, mais pas une adresse IP, aux fonctionnalités de sécurité avancées d'Amazon Cognito.
Mettez à jour votre client d’application comme suit dans la console Amazon Cognito pour ajouter la prise en charge des données contextuelles utilisateur supplémentaires.
-
Connectez-vous à la console Amazon Cognito
. -
Dans le volet de navigation, choisissez Manage your User groupes (Gérer vos groupes d’utilisateurs), puis choisissez le groupe d’utilisateurs que vous souhaitez modifier.
-
Choisissez l’onglet App integration (Intégration d’applications).
-
Sous App clients and analytics (Clients d’application et analytique), choisissez ou créez un client d’application. Pour plus d’informations, consultez Configuration d’un client d’application pour groupe d’utilisateurs.
-
Choisissez Edit (Modifier) à partir du conteneur App client information (Informations sur le client d’application).
-
Dans Advanced authentication settings (Paramètres d’authentification avancée) pour votre client d’application, choisissez Accept additional user context data (Accepter des données contextuelles utilisateur supplémentaires).
-
Sélectionnez Enregistrer les modifications.
Pour configurer le client de votre application afin qu'il accepte les données contextuelles utilisateur dans Amazon CognitoAPI, définissez ce paramètre sur EnablePropagateAdditionalUserContextData
true
dans une demande CreateUserPoolClientor UpdateUserPoolClient. Pour obtenir des informations sur la façon d’activer la sécurité avancée à partir de votre application web ou mobile, consultez Activation de la sécurité avancée des groupes d’utilisateurs à partir de votre application. Quand votre appli appelle Amazon Cognito à partir de votre serveur, collectez les données contextuelles utilisateur côté client. Voici un exemple d'utilisation de cette JavaScript SDK méthodegetData
.
var EncodedData = AmazonCognitoAdvancedSecurityData.getData(
username
,userPoolId
,clientId
);
Lorsque vous concevez votre application pour utiliser l'authentification adaptative, nous vous recommandons d'intégrer la dernière version d'Amazon Cognito SDK dans votre application. La dernière version du SDK collecte des informations relatives aux empreintes digitales de l'appareil, telles que l'identifiant, le modèle et le fuseau horaire de l'appareil. Pour plus d'informations sur Amazon CognitoSDKs, consultez Installer un groupe d'utilisateurs. SDK La sécurité avancée d’Amazon Cognito enregistre et attribue uniquement un score de risque aux événements soumis par votre application dans le format approprié. Si Amazon Cognito renvoie une réponse d'erreur, vérifiez que votre demande inclut un hachage secret valide et que le IPaddress
paramètre est une adresse OR valideIPv4. IPv6
Ressources ContextData
et UserContextData
-
AWS Amplify SDKpour Android : GetUserContextData
-
AWS Amplify SDKpour iOS : userContextData
-
JavaScript: amazon-cognito-advanced-security-data.min.js
Afficher et exporter l'historique des événements utilisateur
Amazon Cognito génère un journal pour chaque événement d'authentification d'un utilisateur lorsque vous activez la protection avancée contre les menaces de sécurité. Par défaut, vous pouvez consulter les journaux des utilisateurs dans l'onglet Utilisateurs de la console Amazon Cognito ou lors de l'AdminListUserAuthEventsAPIopération. Vous pouvez également exporter ces événements vers un système externe tel que CloudWatch Logs, Amazon S3 ou Amazon Data Firehose. La fonctionnalité d'exportation peut rendre les informations de sécurité relatives à l'activité des utilisateurs dans votre application plus accessibles à vos propres systèmes d'analyse de sécurité.
Rubriques
Afficher l'historique des événements utilisateur (AWS Management Console)
Pour afficher l’historique de connexion d’un utilisateur, vous pouvez choisir l’utilisateur dans la console Amazon Cognito, dans l’onglet Users (Utilisateurs). Amazon Cognito conserve l’historique des événements utilisateur pendant deux ans.
Chaque événement de connexion possède un ID d’événement. L’événement a également des données contextuelles correspondantes, telles que l’emplacement, les détails de l’appareil et les résultats de détection des risques.
Vous pouvez également corréler l’ID de l’événement avec le jeton émis par Amazon Cognito au moment de l’enregistrement de l’événement. L’ID et les jetons d’accès incluent cet ID d’événement dans leur charge utile. Amazon Cognito établit également une corrélation entre l’utilisation du jeton d’actualisation et l’ID d’événement d’origine. Vous pouvez tracer l’ID d’événement d’origine en remontant jusqu’à l’ID de l’événement de connexion ayant conduit à l’émission des jetons Amazon Cognito. Vous pouvez tracer l’utilisation des jetons au sein de votre système jusqu’à un événement d’authentification particulier. Pour de plus amples informations, veuillez consulter Comprendre les jetons JSON Web du pool d'utilisateurs (JWTs).
Afficher l'historique des événements utilisateur (API/CLI)
Vous pouvez consulter l'historique des événements de l'utilisateur à l'aide de l'APIopération Amazon Cognito AdminListUserAuthEventsou à l'aide de AWS Command Line Interface (AWS CLI) with admin-list-user-auth -events.
Exportation des événements d'authentification utilisateur
Configurez votre groupe d'utilisateurs pour exporter les événements utilisateur de la protection avancée contre les menaces de sécurité vers un système externe. Les systèmes externes pris en charge (Amazon S3, CloudWatch Logs et Amazon Data Firehose) peuvent ajouter des coûts à votre AWS facture pour les données que vous envoyez ou récupérez. Pour de plus amples informations, veuillez consulter Exportation des journaux d'activité des utilisateurs en matière de sécurité avancée.
Fourniture de commentaires sur des événements
Les commentaires sur les événements ont un impact sur l’évaluation des risques en temps réel et améliorent l’algorithme d’évaluation des risques au fil du temps. Vous pouvez fournir des commentaires sur la validité des tentatives de connexion via la console API et les opérations Amazon Cognito.
Note
Vos commentaires sur les événements influent sur le niveau de risque qu’Amazon Cognito affecte aux sessions d’utilisateur suivantes présentant les mêmes caractéristiques.
Dans la console Amazon Cognito, choisissez un utilisateur dans l’onglet Users (Utilisateurs) et sélectionnez Provide event feedback (Fournir des commentaires sur les événements). Vous pouvez passer en revue les détails de l’événement et sélectionner Set as valid (Définir comme valide) ou Set as invalid (Définir comme non valide).
La console répertorie l’historique des connexions dans l’onglet Users and groups (Utilisateurs et groupes). Si vous sélectionnez une entrée, vous pouvez marquer l’événement comme étant valide ou non valide. Vous pouvez également fournir des commentaires via l'APIopération AdminUpdateAuthEventFeedbackdu groupe d'utilisateurs et via la AWS CLI commande admin-update-auth-event-feedback.
Lorsque vous sélectionnez Définir comme valide dans la console Amazon Cognito ou que vous indiquez la FeedbackValue
valeur valid
dans leAPI, vous indiquez à Amazon Cognito que vous faites confiance à une session utilisateur pour laquelle Amazon Cognito a évalué un certain niveau de risque. Lorsque vous sélectionnez Définir comme non valide dans la console Amazon Cognito ou que vous fournissez une FeedbackValue
valeur égale àAPI, vous invalid
indiquez à Amazon Cognito que vous ne faites pas confiance à une session utilisateur ou que vous ne pensez pas qu'Amazon Cognito a évalué un niveau de risque suffisamment élevé.
Envoi de messages de notification
Avec des protections de sécurité avancées, Amazon Cognito peut avertir les utilisateurs des tentatives de connexion risquées. Amazon Cognito peut également demander aux utilisateurs de sélectionner des liens pour indiquer si la connexion était valide ou non valide. Amazon Cognito utilise ces commentaires pour améliorer la précision de la détection des risques pour votre groupe d’utilisateurs.
Dans la section Automatic risk response (Réponse automatique aux risques), choisissez Notify Users (Avertir les utilisateurs) pour les situations à risque faible, moyen ou élevé.
Amazon Cognito envoie des notifications par e-mail à vos utilisateurs, qu’ils aient confirmé ou non leur adresse e-mail.
Vous pouvez personnaliser les e-mails de notification et fournir à la fois du texte brut et des HTML versions de ces messages. Pour personnaliser vos notifications par e-mail, ouvrez Email templates (Modèles d’e-mail) à partir de Adaptive authentication messages (Messages d’authentification adaptative) dans votre configuration de sécurité avancée. Pour en savoir plus sur les modèles de courriel, consultez Modèles de messages.