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.
Le partage des ressources cross-origin (CORS) définit un moyen pour les applications Web clientes chargées dans un domaine particulier d’interagir avec les ressources d’un autre domaine. Le CORS vous permet de créer de riches applications web côté client avec Amazon S3 et d’autoriser de manière sélective un accès cross-origin à vos ressources Amazon S3.
Cette section fournit une présentation du CORS. Les sous-rubriques décrivent comment activer CORS à l'aide de la console Amazon S3 ou par programmation à l'aide de l'API REST Amazon S3 et du. AWS SDKs
Partage des ressources de plusieurs origines : scénarios de cas d’utilisation
Les exemples de scénarios suivants utilisent le partage CORS.
Scénario 1
Supposons que vous hébergiez un site Internet dans un compartiment Amazon S3 appelé website
, comme décrit dans Hébergement d’un site Web statique à l’aide d’Amazon S3. Les utilisateurs chargent le point de terminaison du site web :
http://website.s3-website.us-east-1.amazonaws.com
Vous souhaitez maintenant utiliser les pages Web stockées dans ce compartiment pour pouvoir effectuer des requêtes GET et PUT authentifiées JavaScript sur le même compartiment en utilisant le point de terminaison de l'API Amazon S3 pour le compartiment,. website.s3.us-east-1.amazonaws.com
Un navigateur bloque normalement l'autorisation JavaScript de ces demandes, mais avec CORS, vous pouvez configurer votre compartiment pour activer explicitement les demandes provenant de différentes origines. website.s3-website.us-east-1.amazonaws.com
Scénario 2
Supposons que vous souhaitez héberger une police web à partir de votre compartiment S3. Une fois encore, les navigateurs requièrent un contrôle CORS (aussi appelé contrôle en amont) pour le chargement des polices web. Vous configurez le compartiment qui héberge la police web pour permettre à toute origine d’effectuer ces demandes.
Comment Amazon S3 évalue la configuration CORS sur un compartiment ?
Lorsque Amazon S3 reçoit une demande en amont d’un navigateur, il évalue la configuration CORS du compartiment et utilise la première règle CORSRule
qui correspond à la demande entrante du navigateur pour permettre une demande cross-origin. Pour qu’une règle corresponde, les conditions suivantes doivent être remplies :
-
L’en-tête
Origin
d’une demande CORS adressée à votre compartiment doit correspondre aux origines de l’élémentAllowedOrigins
de votre configuration CORS. -
Les méthodes HTTP spécifiées dans
Access-Control-Request-Method
dans une demande CORS adressée à votre compartiment doivent correspondre à la ou aux méthodes répertoriées dans l’élémentAllowedMethods
de votre configuration CORS. -
Les en-têtes répertoriés dans l’en-tête
Access-Control-Request-Headers
d’une demande de contrôle en amont doivent correspondre aux en-têtes de l’élémentAllowedHeaders
de votre configuration CORS.
Note
Les politiques ACLs et continuent de s'appliquer lorsque vous activez CORS sur votre compartiment.
Comment le point d’accès Object Lambda prend en charge le CORS
Quand S3 Object Lambda reçoit une demande d'un navigateur ou que la demande inclut un en-tête Origin
, S3 Object Lambda ajoute toujours un champ d'en-tête "AllowedOrigins":"*"
.
Pour plus d’informations sur l’utilisation du CORS, consultez les rubriques suivantes.