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.
Autoriser votre application à envoyer des données à AWS à travers CloudWatch RUM
Pour pouvoir être utilisée CloudWatch RUM, votre application doit disposer d'une autorisation.
Trois possibilités s'offrent à vous pour configurer l'autorisation :
CloudWatch RUMCréons un nouveau pool d'identités Amazon Cognito pour l'application. Cette méthode est la plus simple à configurer. Il s'agit de l'option par défaut.
Le groupe d'identités contiendra une identité non authentifiée. Cela permet au client CloudWatch RUM Web d'envoyer des données CloudWatch RUM sans authentifier l'utilisateur de l'application.
Le pool d'identités Amazon Cognito est associé IAM à un rôle. L'identité non authentifiée Amazon Cognito permet au client Web d'assumer le IAM rôle autorisé à envoyer des données. CloudWatch RUM
Utilisez un groupe d'identités Amazon Cognito existant. Dans ce cas, vous devez également modifier le IAM rôle attaché au pool d'identités. Utilisez cette option pour les pools d'identités qui prennent en charge les utilisateurs non authentifiés. Vous ne pouvez utiliser des groupes d'identités que provenant de la même région.
Utilisez l'authentification d'un fournisseur d'identité existant que vous avez déjà configuré. Dans ce cas, vous devez obtenir des informations d'identification auprès du fournisseur d'identité et votre application doit les transmettre au client RUM Web.
Utilisez cette option pour les pools d'identités qui ne prennent en charge que les utilisateurs authentifiés.
Les sections suivantes contiennent plus de détails sur ces options.
CloudWatch RUMcrée un nouveau pool d'identités Amazon Cognito
Il s'agit de l'option la plus simple à configurer. Si vous optez pour celle-ci, aucune autre étape de configuration n'est requise. Vous devez disposer d'autorisations administratives pour utiliser cette option. Pour de plus amples informations, veuillez consulter IAMpolitiques à utiliser CloudWatch RUM.
Cette option CloudWatch RUM permet de créer les ressources suivantes :
Un nouveau groupe d'identités Amazon Cognito.
Une identité Amazon Cognito non authentifiée. Cela permet au client RUM Web d'assumer un IAM rôle sans authentifier l'utilisateur de l'application.
IAMRôle que le client RUM Web assumera. La IAM politique associée à ce rôle lui permet d'utiliser la ressource
PutRumEvents
API avec le moniteur d'applications. En d'autres termes, il permet au client RUM Web d'envoyer des données àRUM.
Le client RUM Web utilise l'identité Amazon Cognito pour obtenir AWS informations d'identification. Le AWS les informations d'identification sont associées au IAM rôle. Le IAM rôle est autorisé à être utilisé PutRumEvents
avec la AppMonitor ressource.
Amazon Cognito envoie le jeton de sécurité nécessaire pour permettre à votre application d'envoyer des données à. CloudWatch RUM L'extrait de JavaScript code CloudWatch RUM généré inclut les lignes suivantes pour activer l'authentification.
{ identityPoolId: [identity pool id], // e.g., 'us-west-2:EXAMPLE4a-66f6-4114-902a-EXAMPLEbad7' } );
Utilisation d'un groupe d'identités Amazon Cognito existant
Si vous choisissez d'utiliser un pool d'identités Amazon Cognito existant, vous devez le spécifier lorsque vous y ajoutez l'application. CloudWatch RUM Le groupe doit prendre en charge l'activation de l'accès à des identités non authentifiées. Vous ne pouvez utiliser des groupes d'identités que provenant de la même région.
Vous devez également ajouter les autorisations suivantes à la IAM politique attachée au IAM rôle associé à ce pool d'identités.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rum:PutRumEvents", "Resource": "arn:aws:rum:[
region
]:[accountid
]:appmonitor/[app monitor name
]" } ] }
Amazon Cognito enverra ensuite le jeton de sécurité nécessaire pour permettre à votre application d'y accéder. CloudWatch RUM
Fournisseur tiers
Si vous choisissez d'utiliser l'authentification privée auprès d'un fournisseur tiers, vous devez obtenir les informations d'identification du fournisseur d'identité et les transmettre à AWS. La meilleure façon d'y parvenir est de faire appel à un fournisseur de jetons de sécurité. Vous pouvez utiliser n'importe quel fournisseur de jetons de sécurité, y compris Amazon Cognito avec AWS Security Token Service. Pour plus d'informations sur AWS STS, voir Bienvenue sur le AWS Security Token Service APIRéférence.
Si vous souhaitez utiliser Amazon Cognito comme fournisseur de jetons dans ce scénario, vous pouvez configurer Amazon Cognito pour qu'il fonctionne avec un fournisseur d'authentification. Pour plus d'informations, consultez Démarrez avec les groupes d'identités Amazon Cognito (identités fédérées).
Après avoir configuré Amazon Cognito pour qu'il fonctionne avec votre fournisseur d'identité, vous devez également effectuer les opérations suivantes :
Créez un IAM rôle avec les autorisations suivantes. Votre application utilisera ce rôle pour accéder AWS.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rum:PutRumEvents", "Resource": "arn:aws:rum:[
region
]:[accountID
]:appmonitor/[app monitor name
]" } ] }Ajoutez ce qui suit à votre application pour qu'elle transmette les informations d'identification de votre fournisseur à CloudWatch RUM. Insérez la ligne afin qu'elle s'exécute une fois qu'un utilisateur s'est connecté à votre application et que l'application a reçu les informations d'identification à utiliser pour accéder AWS.
cwr('setAwsCredentials', {/* Credentials or CredentialProvider */});
Pour plus d'informations sur les fournisseurs d'informations d'identification dans le AWS JavaScript SDK, voir Configuration des informations d'identification dans un navigateur Web dans le guide du développeur v3 pour SDK for JavaScript, Configuration des informations d'identification dans un navigateur Web dans le guide du développeur v2 SDK pour JavaScript, et @aws -sdk/credential-providers
Vous pouvez également utiliser le SDK for the CloudWatch RUM Web client pour configurer les méthodes d'authentification du client Web. Pour plus d'informations sur le client WebSDK, consultez la section client CloudWatch RUM Web SDK