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 fournies ici pour vous aider à diagnostiquer et à corriger les erreurs de certificat, les problèmes de refus d'accès ou les 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 une Access Denied erreur
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.
Table des matières
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 comme origine et vous chargez un exemple de index.html fichier.
Dans votre navigateur web, si vous entrez https://d111111abcdef8.cloudfront.net/ au lieu de INDEX.HTMLhttps://d111111abcdef8.cloudfront.net/, un message similaire est susceptible de s’afficher, car le fichier index.htmlindex.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
-
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 Spécification du chiffrement côté serveur avec les AWS KMS (SSE-KMS) dans le Guide de l’utilisateur Amazon Simple Storage Service.
-
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.
-
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. -
Modifiez la politique des clés KMS pour accorder l' CloudFront autorisation d'effectuer les actions à
EncryptDecrypt, etGenerateDataKey*. Pour vous aligner sur l'autorisation du moindre privilège, spécifiez unConditionélément afin 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 s'afficher 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 ne dispose pas de 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 le fonctionnement d'IAM CloudFront, consultezIdentity and Access Management pour Amazon CloudFront.
CloudFront renvoie une 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 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 savoir 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 que 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é en raison d'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 lors de 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 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
Lorsque vous avez une entrée DNS générique pointant 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 parce que CloudFront le DNS est interrogé par rapport au CNAME et que l'entrée DNS générique renvoie à 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 la procédure d'ajout CNAMEs, consultezAjout d’un nom de domaine alternatif.
Je ne peux pas afficher les fichiers de ma distribution
Si vous ne parvenez pas à afficher les fichiers de votre CloudFront distribution, consultez les rubriques suivantes pour découvrir certaines solutions courantes.
Vous êtes-vous inscrit à la fois à Amazon S3 CloudFront et à Amazon S3 ?
Pour utiliser Amazon CloudFront avec une origine Amazon S3, vous devez vous inscrire séparément à Amazon S3 CloudFront et à Amazon S3. Pour plus d'informations sur l'inscription à Amazon S3 CloudFront et sur Amazon S3, consultezConfigurez votre Compte AWS.
Votre compartiment Amazon S3 et vos autorisations d’objet sont-elles définis correctement ?
Si vous l'utilisez CloudFront avec une origine 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. OAC contrôle l'accès des spectateurs et sécurise la diffusion 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 correctement configuré 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 CNAMEs, voirUtilisez la personnalisation URLs en ajoutant des noms de domaine alternatifs (CNAMEs).
Référencez-vous l'URL correcte 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 d'aide AWS pour résoudre un problème d'origine personnalisé, 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 Utiliser Amazon EC2 (ou une autre origine personnalisée). Pour obtenir plus d’aide, consultez le Centre de support AWS
Message d'erreur : Certificat : <certificate-id>est utilisé par CloudFront
Problème : vous essayez de supprimer un certificat SSL/TLS du magasin de certificats IAM et le message « Certificat : <certificate-id>est utilisé par » s'affiche. CloudFront
Solution : Chaque CloudFront distribution doit être associée au CloudFront certificat par défaut ou à un SSL/TLS certificate. Before you can delete an SSL/TLS certificate, you must either rotate the certificate (replace the current custom SSL/TLS certificate with another custom SSL/TLS certificate) or revert from using a custom SSL/TLS certificat personnalisé pour utiliser le CloudFront certificat par défaut. Pour régler ce problème, effectuez les étapes de l’une des procédures suivantes :