View a markdown version of this page

Résolution des problèmes de distribution - Amazon CloudFront

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.

Résolution des problèmes de distribution

Utilisez les informations ici pour vous aider à diagnostiquer et à corriger les erreurs de certificat, les problèmes d'accès refusé ou d'autres problèmes courants que vous pourriez rencontrer lors de la configuration de votre site Web ou de votre application avec les distributions Amazon CloudFront .

CloudFront renvoie un Accès refusé error

Si vous utilisez un compartiment Amazon S3 comme origine de votre CloudFront distribution, un message d'erreur Access Denied (403) peut s'afficher dans les exemples suivants.

Vous avez indiqué un objet manquant dans l’origine d’Amazon S3

Vérifiez que l’objet demandé existe dans votre compartiment. Les noms des objets sont sensibles à la casse. La saisie d’un nom d’objet non valide peut renvoyer un code d’erreur Accès refusé.

Par exemple, si vous suivez le CloudFront didacticiel pour créer une distribution de base, vous créez un compartiment Amazon S3 en tant qu'origine et vous chargez un exemple de index.html fichier.

Dans votre navigateur web, si vous entrez https://d111111abcdef8.cloudfront.net/INDEX.HTML au lieu de https://d111111abcdef8.cloudfront.net/index.html, un message similaire est susceptible de s’afficher, car le fichier index.html dans le chemin de l’URL est sensible à la casse.

<Error> <Code>AccessDenied</Code> <Message>Access Denied</Message> <RequestId>22Q367AHT7Y1ABCD</RequestId> <HostId> ABCDE/Vg+7PSNa/d/IfFQ8Fb92TGQ0KH0ZwG5iEKbc6+e06DdMS1ZW+ryB9GFRIVtS66rSSy6So= </HostId> </Error>

Votre origine Amazon S3 ne dispose pas des autorisations IAM nécessaires

Vérifiez que vous avez sélectionné le bon compartiment Amazon S3 comme domaine et nom d’origine. L’origine (Amazon S3) doit disposer des autorisations appropriées.

Si vous ne spécifiez pas les autorisations appropriées, un message AccessDenied peut s’afficher à l’intention de vos utilisateurs.

Lorsque vous distribuez du contenu depuis Amazon S3 et que vous utilisez également AWS Key Management Service (AWS KMS) le chiffrement côté service (SSE-KMS), vous devez spécifier des autorisations IAM supplémentaires pour la clé KMS et le compartiment Amazon S3. Votre CloudFront distribution a besoin de ces autorisations pour utiliser la clé KMS, qui est utilisée pour le chiffrement du compartiment Amazon S3 d'origine.

Les configurations de la politique de compartiment Amazon S3 permettent à la CloudFront distribution de récupérer les objets chiffrés pour la diffusion de contenu.

Pour vérifier les autorisations de votre compartiment Amazon S3 et de votre clé KMS
  1. Vérifiez que la clé KMS que vous utilisez est la même que celle utilisée par votre compartiment Amazon S3 pour le chiffrement par défaut. Pour plus d'informations, consultez la section Spécifier le chiffrement côté serveur avec AWS KMS (SSE-KMS) dans le Guide de l'utilisateur d'Amazon Simple Storage Service.

  2. Vérifiez que les objets du compartiment sont chiffrés avec la même clé KMS. Vous pouvez sélectionner n’importe quel objet dans le compartiment Amazon S3 et vérifier les paramètres de chiffrement côté serveur pour vérifier l’ARN de la clé KMS.

  3. Modifiez la politique du compartiment Amazon S3 pour CloudFront autoriser l'appel de l'opération d'GetObjectAPI depuis le compartiment Amazon S3. Pour un exemple de stratégie de compartiment Amazon S3 utilisant un contrôle d’accès d’origine, consultez Accorder l' CloudFront autorisation d'accéder au compartiment S3.

  4. Modifiez la politique de clé KMS pour CloudFront autoriser l'exécution des actions vers EncryptDecrypt, etGenerateDataKey*. Pour vous aligner sur l'autorisation du moindre privilège, spécifiez un Condition élément de sorte que seule la CloudFront distribution spécifiée puisse effectuer les actions répertoriées. Vous pouvez personnaliser la politique en fonction de votre AWS KMS politique existante. Pour obtenir un exemple de stratégie de clé KMS, consultez SSE-KMS.

Si vous utilisez l’identité d’accès d’origine (OAI) au lieu de l’OAC, les autorisations accordées au compartiment Amazon S3 diffèrent légèrement, car vous accordez les autorisations à une identité plutôt qu’au Service AWS. Pour de plus amples informations, veuillez consulter Attribution à l’identité d’accès d’origine de l’autorisation de lire les fichiers du compartiment Amazon S3.

Si vous ne parvenez toujours pas à afficher vos fichiers dans votre distribution, consultez Je ne peux pas afficher les fichiers de ma distribution.

Vous utilisez des informations d’identification non valides ou vous ne disposez pas des autorisations nécessaires

Un message d'erreur Accès refusé peut apparaître si vous utilisez des AWS SCT informations d'identification incorrectes ou expirées (clé d'accès et clé secrète) ou si votre rôle ou utilisateur IAM n'a pas l'autorisation requise pour effectuer une action sur une CloudFront ressource. Pour plus d’informations sur les messages d’erreur d’accès refusé, consultez Résolution des problèmes liés aux messages d’erreur d’accès rejeté dans le Guide de l’utilisateur IAM.

Pour plus d'informations sur la façon dont IAM fonctionne avec CloudFront, consultezGestion des identités et des accès pour Amazon CloudFront.

CloudFront renvoie un InvalidViewerCertificate erreur lorsque j'essaie d'ajouter un autre nom de domaine

Si CloudFront un InvalidViewerCertificate message d'erreur s'affiche lorsque vous essayez d'ajouter un autre nom de domaine (CNAME) à votre distribution, consultez les informations suivantes pour vous aider à résoudre le problème. Cette erreur peut indiquer que l’un des problèmes suivants doit être résolu avant que vous puissiez correctement ajouter le nom de domaine alternatif.

Les erreurs suivantes sont répertoriées dans l'ordre dans lequel l' CloudFront autorisation d'ajouter un autre nom de domaine est vérifiée. Cela peut vous aider à résoudre les problèmes, car en fonction de l'erreur CloudFront renvoyée, vous pouvez déterminer quelles vérifications ont été effectuées avec succès.

Il n’y a aucun certificat associé à votre distribution.

Pour ajouter un nom de domaine alternatif (CNAME), vous devez attacher un certificat valide et approuvé à votre distribution. Consultez les exigences, obtenez un certificat valide qui répond à ces exigences, attachez celui-ci à votre distribution, puis réessayez. Pour plus d’informations, consultez Exigences relatives à l’utilisation de noms de domaines alternatifs.

Il y a un trop grand nombre de certificats dans la chaîne de certificats pour le certificat que vous avez attaché.

Vous pouvez uniquement posséder jusqu’à cinq certificats dans une chaîne de certificats. Réduisez le nombre de certificats dans la chaîne, puis réessayez.

La chaîne de certificats inclut un ou plusieurs certificats qui ne sont pas valides pour la date du jour.

La chaîne de certificats pour un certificat que vous avez ajouté a un ou plusieurs certificats qui ne sont pas valides, soit parce que le certificat n’est pas encore valide ou parce qu’il a expiré. Vérifiez les champs Not Valid Before (Non valide avant) et Not Valid After (Non valide après) dans les certificats de votre chaîne de certificats pour vous assurer que tous les certificats sont valides en fonction des dates que vous avez répertoriées.

Le certificat que vous avez attaché n’est pas signé par une autorité de certification (CA) approuvée.

Le certificat auquel vous attachez CloudFront pour vérifier un autre nom de domaine ne peut pas être un certificat auto-signé. Il doit être signé par une autorité de certification approuvée. Pour plus d’informations, consultez Exigences relatives à l’utilisation de noms de domaines alternatifs.

Le certificat que vous avez attaché n’est pas formaté correctement

Le nom de domaine et le format d’adresse IP qui sont inclus dans le certificat et le format du certificat lui-même, doivent respecter la norme pour les certificats.

Une erreur CloudFront interne s'est produite.

CloudFront a été bloqué par un problème interne et n'a pas pu effectuer de contrôles de validation pour les certificats. Dans ce scénario, CloudFront renvoie un code d'état HTTP 500 et indique qu'il existe un CloudFront problème interne lié à l'attachement du certificat. Attendez quelques minutes, puis réessayez pour ajouter le nom de domaine alternatif avec le certificat.

Le certificat que vous avez attaché ne couvre pas le nom de domaine alternatif que vous tentez d'ajouter.

Pour chaque nom de domaine alternatif que vous ajoutez, CloudFront vous devez joindre un SSL/TLS certificat valide provenant d'une autorité de certification (CA) fiable qui couvre le nom de domaine, afin de valider votre autorisation d'utilisation. Mettez à jour votre certificat pour inclure un nom de domaine qui couvre le CNAME que vous tentez d'ajouter. Pour plus d’informations et pour obtenir des exemples d’utilisation de noms de domaines avec caractères génériques, consultez Exigences relatives à l’utilisation de noms de domaines alternatifs.

CloudFront renvoie une erreur d'enregistrement DNS mal configurée lorsque j'essaie d'ajouter un nouveau CNAME

Lorsqu'une entrée DNS générique pointe vers une CloudFront distribution, si vous essayez d'ajouter un nouveau CNAME avec un nom plus spécifique, vous risquez de rencontrer l'erreur suivante :

One or more aliases specified for the distribution includes an incorrectly configured DNS record that points to another CloudFront distribution. You must update the DNS record to correct the problem.

Cette erreur se produit car l' CloudFront entrée DNS est renvoyée au CNAME et l'entrée DNS générique est renvoyée à une autre distribution.

Pour résoudre ce problème, créez d’abord une autre distribution, puis créez une entrée DNS pointant vers la nouvelle distribution. Enfin, ajoutez le CNAME plus spécifique. Pour plus d’informations sur l’ajout de CNAME, consultez Ajout d’un nom de domaine alternatif.

Je ne peux pas afficher les fichiers de ma distribution

Si vous ne pouvez pas afficher les fichiers de votre CloudFront distribution, consultez les rubriques suivantes pour découvrir certaines solutions courantes.

Êtes-vous inscrit à la fois à Amazon S3 CloudFront et à Amazon ?

Pour utiliser Amazon CloudFront avec une origine Amazon S3, vous devez vous inscrire à la fois à Amazon S3 CloudFront et à Amazon S3. Pour plus d'informations sur l'inscription à Amazon S3 CloudFront et à Amazon S3, consultezConfigurez votre Compte AWS.

Votre compartiment Amazon S3 et vos autorisations d’objet sont-elles définis correctement ?

Si vous utilisez CloudFront une source Amazon S3, les versions originales de votre contenu sont stockées dans un compartiment S3. Pour diffuser le contenu à vos spectateurs, nous vous recommandons CloudFront d'utiliser Origin Access Control (OAC) pour sécuriser l'accès au compartiment Amazon S3. Cela signifie que votre compartiment S3 n'est accessible que via CloudFront. L'OAC contrôle l'accès des spectateurs et la diffusion sécurisée via CloudFront. Pour plus d’informations sur l’OAC, consultez Restriction de l’accès à une origine Amazon S3.

Pour plus d’informations sur la gestion de l’accès à votre compartiment, consultez Blocage de l’accès public à votre stockage Amazon S3 dans le Guide de l’utilisateur Amazon S3.

Les propriétés d’objet et les propriétés de compartiment sont indépendantes. Vous devez accorder, de manière explicite, des privilèges à chaque objet dans Amazon S3. Les objets n’héritent pas des propriétés des compartiments et les propriétés d’objet doivent être définies indépendamment du compartiment.

Votre nom de domaine alternatif (CNAME) est-il configuré correctement ?

Si vous avez déjà un enregistrement CNAME pour votre nom de domaine, mettez-le à jour ou remplacez-le par un nouvel enregistrement qui pointe vers votre nom de domaine de distribution.

Veillez également à ce que votre archive CNAME dirige vers votre nom de domaine de distribution et non pas votre compartiment Amazon S3. Vous pouvez confirmer que l’archive CNAME dans votre système DNS dirige vers votre nom de domaine de distribution. À cette fin, utilisez un outil DNS tel que dig.

L’exemple suivant illustre une demande dig sur un nom de domaine appelé images.example.com et la partie appropriée de la réponse. Sous ANSWER SECTION, regardez la ligne qui contient CNAME. L'enregistrement CNAME de votre nom de domaine est configuré correctement si la valeur sur le côté droit de CNAME est le nom de domaine de votre CloudFront distribution. S’il s’agit de votre case de serveur d’origine Amazon S3 ou d’autre nom de domaine, alors l’archive CNAME est mal définie.

[prompt]> dig images.example.com ; <<> DiG 9.3.3rc2 <<> images.example.com ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15917 ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 2, ADDITIONAL: 0 ;; QUESTION SECTION: ;images.example.com. IN A ;; ANSWER SECTION: images.example.com. 10800 IN CNAME d111111abcdef8.cloudfront.net. ... ...

Pour plus d’informations sur les CNAME, consultez Utilisation d’URL personnalisées en ajoutant des noms de domaine alternatifs (CNAME).

Faites-vous référence à la bonne URL pour votre CloudFront distribution ?

Assurez-vous que l'URL à laquelle vous faites référence utilise le nom de domaine (ou CNAME) de votre CloudFront distribution, et non votre compartiment Amazon S3 ou votre origine personnalisée.

Avez-vous besoin d’aide pour résoudre un problème lié à une origine personnalisée ?

Si vous avez besoin AWS de vous aider à résoudre les problèmes liés à une origine personnalisée, nous devrons probablement inspecter les entrées X-Amz-Cf-Id d'en-tête de vos demandes. Si vous n’enregistrez pas déjà ces entrées, il se peut que vous pensiez à le faire à l’avenir. Pour de plus amples informations, veuillez consulter Utilisation d’Amazon EC2 (ou autre origine personnalisée). Pour obtenir plus d’aide, consultez le Centre de support AWS.

Message d'erreur : < Certificat : l'identifiant du certificat > est utilisé par CloudFront

Problème : vous essayez de supprimer un SSL/TLS certificat du magasin de certificats IAM et le message « Certificat : <certificate-id>is being used by » s'affiche CloudFront.

Solution : chaque CloudFront distribution doit être associée soit au CloudFront certificat par défaut, soit à un SSL/TLS certificat personnalisé. Avant de supprimer un SSL/TLS certificat, vous devez soit effectuer une rotation du certificat (remplacer le SSL/TLS certificat personnalisé actuel par un autre SSL/TLS certificat personnalisé), soit revenir à l'utilisation du SSL/TLS CloudFront certificat par défaut. Pour régler ce problème, effectuez les étapes de l’une des procédures suivantes :