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.
Journaux d'accès pour Amazon VPC Lattice
Les journaux d'accès capturent des informations détaillées sur vos services VPC Lattice. Vous pouvez utiliser ces journaux d'accès pour analyser les modèles de trafic et auditer tous les services du réseau.
Les journaux d'accès sont facultatifs et sont désactivés par défaut. Après avoir activé les journaux d'accès, vous pouvez les désactiver à tout moment.
Tarification
Des frais s'appliquent lorsque les journaux d'accès sont publiés. Les journaux publiés AWS nativement en votre nom sont appelés journaux automatiques. Pour plus d'informations sur la tarification des journaux vendus, consultez Amazon CloudWatch Pricing
Table des matières
Autorisations IAM requises pour activer les journaux d'accès
Pour activer les journaux d'accès et les envoyer à leur destination, les actions suivantes doivent figurer dans la politique attachée à l'utilisateur, au groupe ou au rôle IAM que vous utilisez.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "ManageVPCLatticeAccessLogSetup", "Action": [ "logs:CreateLogDelivery", "logs:GetLogDelivery", "logs:UpdateLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries", "vpc-lattice:CreateAccessLogSubscription", "vpc-lattice:GetAccessLogSubscription", "vpc-lattice:UpdateAccessLogSubscription", "vpc-lattice:DeleteAccessLogSubscription", "vpc-lattice:ListAccessLogSubscriptions" ], "Resource": [ "*" ] } ] }
Pour plus d'informations, veuillez consulter Ajout et suppression d'autorisations basées sur l'identité IAM dans le Guide de l'utilisateur AWS Identity and Access Management .
Après avoir mis à jour la politique associée à l'utilisateur, au groupe ou au rôle IAM que vous utilisez, rendez-vous sur. Activer les journaux d'accès
Accéder aux destinations du journal
Vous pouvez envoyer les journaux d'accès aux destinations suivantes.
Amazon CloudWatch Logs
-
VPC Lattice fournit généralement les journaux aux CloudWatch journaux en 2 minutes. Cependant, gardez à l'esprit que le délai réel de livraison des journaux est le meilleur moyen possible et qu'il peut y avoir une latence supplémentaire.
Une politique de ressources est créée automatiquement et ajoutée au groupe de CloudWatch journaux si le groupe de journaux ne dispose pas de certaines autorisations. Pour plus d'informations, consultez la section Logs envoyés à CloudWatch Logs dans le guide de CloudWatch l'utilisateur Amazon.
Vous trouverez les journaux d'accès envoyés CloudWatch sous Groupes de journaux dans la CloudWatch console. Pour plus d'informations, consultez Afficher les données de journal envoyées à CloudWatch Logs dans le guide de CloudWatch l'utilisateur Amazon.
Amazon S3
-
VPC Lattice fournit généralement des journaux à Amazon S3 dans un délai de 6 minutes. Cependant, gardez à l'esprit que le délai réel de livraison des journaux est le meilleur moyen possible et qu'il peut y avoir une latence supplémentaire.
Une politique de compartiment sera créée automatiquement et ajoutée à votre compartiment Amazon S3 si celui-ci ne dispose pas de certaines autorisations. Pour plus d'informations, consultez la section Logs envoyés à Amazon S3 dans le guide de CloudWatch l'utilisateur Amazon.
Les journaux d'accès envoyés à Amazon S3 utilisent la convention de dénomination suivante :
[bucket]/[prefix]/AWSLogs/[accountId]/VpcLattice/AccessLogs/[region]/[YYYY/MM/DD]/[resource-id]/[accountId]_VpcLatticeAccessLogs_[region]_[resource-id]_YYYYMMDDTHHmmZ_[hash].json.gz
Amazon Data Firehose
-
VPC Lattice fournit généralement des journaux à Firehose en 2 minutes. Cependant, gardez à l'esprit que le délai réel de livraison des journaux est le meilleur moyen possible et qu'il peut y avoir une latence supplémentaire.
Un rôle lié à un service est automatiquement créé pour autoriser VPC Lattice à envoyer des journaux d'accès à. Amazon Data Firehose Pour que la création automatique de rôle réussisse, les utilisateurs doivent avoir l’autorisation pour l’action
iam:CreateServiceLinkedRole
. Pour plus d'informations, consultez la section Logs envoyés à Amazon Data Firehose dans le guide de CloudWatch l'utilisateur Amazon.Pour plus d'informations sur l'affichage des journaux envoyés à Amazon Data Firehose, consultez la section Monitoring Amazon Kinesis Data Streams dans Amazon Data Firehose le manuel du développeur.
Activer les journaux d'accès
Procédez comme suit pour configurer les journaux d'accès afin de capturer et de distribuer les journaux d'accès à la destination de votre choix.
Table des matières
Activer les journaux d'accès à l'aide de la console
Vous pouvez activer les journaux d'accès pour un réseau de services ou pour un service lors de la création. Vous pouvez également activer les journaux d'accès après avoir créé un réseau ou un service de service, comme décrit dans la procédure suivante.
Pour créer un service de base à l'aide de la console
Ouvrez la console Amazon VPC à l’adresse https://console.aws.amazon.com/vpc/
. -
Sélectionnez le réseau ou le service de service.
-
Choisissez Actions, puis Modifier les paramètres du journal.
-
Activez le commutateur Access Logs.
-
Ajoutez une destination de livraison pour vos journaux d'accès comme suit :
-
Sélectionnez Groupe de CloudWatch journaux, puis choisissez un groupe de journaux. Pour créer un groupe de journaux, choisissez Create a log group in CloudWatch.
-
Sélectionnez le compartiment S3 et entrez le chemin du compartiment S3, y compris tout préfixe. Pour effectuer une recherche dans vos compartiments S3, choisissez Browse S3.
-
Sélectionnez le flux de diffusion Kinesis Data Firehose, puis choisissez un flux de diffusion. Pour créer un flux de diffusion, choisissez Créer un flux de diffusion dans Kinesis.
-
-
Sélectionnez Enregistrer les modifications.
Activez les journaux d'accès à l'aide du AWS CLI
Utilisez la commande CLI create-access-log-subscriptionpour activer les journaux d'accès pour les réseaux ou les services de service.
Accès au contenu du journal
Le tableau suivant décrit les champs d'une entrée de journal d'accès.
Champ | Description | Format |
---|---|---|
hostHeader |
L'en-tête d'autorité de la demande. |
chaîne |
sslCipher |
Le nom OpenSSL de l'ensemble de chiffrements utilisés pour établir la connexion TLS du client. |
chaîne |
serviceNetworkArn |
L'ARN du réseau de service. |
|
resolvedUser |
L'ARN de l'utilisateur lorsque l'authentification est activée et que l'authentification est terminée. |
null | ARN | « Anonyme » | « Inconnu » |
authDeniedReason |
La raison pour laquelle l'accès est refusé lorsque l'authentification est activée. |
null | « Service » | « Réseau » | « Identité » |
requestMethod |
L'en-tête de méthode de la demande. |
chaîne |
targetGroupArn |
Le groupe d'hôtes cible auquel appartient l'hôte cible. |
chaîne |
tlsVersion |
La version TLS. |
|
userAgent |
L'en-tête de l'agent utilisateur. |
chaîne |
ServerNameIndication |
[HTTPS uniquement] Valeur définie sur le socket de connexion SSL pour l'indication du nom du serveur (SNI). |
chaîne |
destinationVpcId |
L'ID du VPC de destination. |
|
sourceIpPort |
Adresse IP et:port de la source. |
|
targetIpPort |
Adresse IP et port de la cible. |
|
serviceArn |
L'ARN du service. |
|
sourceVpcId |
L'ID du VPC source. |
|
requestPath |
Le chemin d'accès de la demande. |
LatticePath? : |
startTime |
Heure de début de la demande. |
|
protocol |
Protocole. Actuellement, soit HTTP/1.1 soit HTTP/2. |
chaîne |
responseCode |
Le code de réponse HTTP. Seul le code de réponse pour les en-têtes finaux est enregistré. Pour plus d’informations, consultez Résoudre les problèmes liés aux journaux d'accès. |
entier |
bytesReceived |
Les octets de corps et d'en-tête reçus. |
entier |
bytesSent |
Les octets du corps et de l'en-tête envoyés. |
entier |
duration |
Durée totale en millisecondes de la demande entre l'heure de début et le dernier octet sortant. |
entier |
requestToTargetDuration |
Durée totale en millisecondes de la demande entre l'heure de début et le dernier octet envoyé à la cible. |
entier |
responseFromTargetDuration |
Durée totale en millisecondes de la demande entre le premier octet lu par l'hôte cible et le dernier octet envoyé au client. |
entier |
grpcResponseCode |
Le code de réponse gRPC. Pour plus d'informations, consultez la section Codes d'état et leur utilisation dans gRPC. |
entier |
callerPrincipal |
Le principal authentifié. |
chaîne |
callerX509SubjectCN |
Le nom du sujet (CN). |
chaîne |
callerX509IssuerOU |
L'émetteur (OU). |
chaîne |
callerX509SANNameCN |
L'alternative de l'émetteur (nom/CN). |
chaîne |
callerX509SANDNS |
Le nom alternatif du sujet (DNS). |
chaîne |
callerX509SANURI |
Le nom alternatif du sujet (URI). |
chaîne |
sourceVpcArn |
L'ARN du VPC d'où provient la demande. |
|
Exemple
Voici un exemple d'entrée de journal.
{
"hostHeader": "example.com",
"sslCipher": "-",
"serviceNetworkArn": "arn:aws:vpc-lattice:us-west-2:123456789012:servicenetwork/svn-1a2b3c4d",
"resolvedUser": "Unknown",
"authDeniedReason": "null",
"requestMethod": "GET",
"targetGroupArn": "arn:aws:vpc-lattice:us-west-2:123456789012:targetgroup/tg-1a2b3c4d",
"tlsVersion": "-",
"userAgent": "-",
"serverNameIndication": "-",
"destinationVpcId": "vpc-0abcdef1234567890",
"sourceIpPort": "178.0.181.150:80",
"targetIpPort": "131.31.44.176:80",
"serviceArn": "arn:aws:vpc-lattice:us-west-2:123456789012:service/svc-1a2b3c4d",
"sourceVpcId": "vpc-0abcdef1234567890",
"requestPath": "/billing",
"startTime": "2023-07-28T20:48:45Z",
"protocol": "HTTP/1.1",
"responseCode": 200,
"bytesReceived": 42,
"bytesSent": 42,
"duration": 375,
"requestToTargetDuration": 1,
"responseFromTargetDuration": 1,
"grpcResponseCode": 1
}
Résoudre les problèmes liés aux journaux d'accès
Cette section contient une explication des codes d'erreur HTTP que vous pouvez voir dans les journaux d'accès.
Code d’erreur | Causes possibles : |
---|---|
HTTP 400 : Demande erronée |
|
HTTP 403 : Accès interdit |
L'authentification a été configurée pour le service, mais la demande entrante n'est ni authentifiée ni autorisée. |
HTTP 404 : Service inexistant |
Vous essayez de vous connecter à un service qui n'existe pas ou qui n'est pas enregistré sur le réseau de service approprié. |
HTTP 500 : Erreur de serveur interne |
VPC Lattice a rencontré une erreur, telle qu'un échec de connexion aux cibles. |
HTTP 502 : Passerelle erronée |
VPC Lattice a rencontré une erreur. |