Autorisations CORS requises - Amazon SageMaker

Autorisations CORS requises

Plus tôt en 2020, les navigateurs largement utilisés comme Chrome et Firefox ont changé leur comportement par défaut pour la rotation d'images en fonction de métadonnées d'image, que l'on appelle les données EXIF. Auparavant, les images s'affichaient toujours dans les navigateurs exactement de la façon dont elles sont stockées sur le disque, c'est-à-dire généralement sans rotation. Après la modification, les images tournent désormais en fonction d'un élément de métadonnées d'image appelé valeur d'orientation. Cela impacte l'ensemble de la communauté du machine learning (ML). Par exemple, si l'orientation EXIF n'est pas prise en compte, les applications d'annotation d'images peuvent afficher des images dans des orientations inattendues et entraîner des étiquettes incorrectes.

À partir de Chrome 89, AWS ne peut plus empêcher automatiquement la rotation des images, car le groupe de normes Web W3C a décrété que la possibilité de contrôler la rotation des images violait la politique d'origine identique du Web. Par conséquent, pour garantir que les employés humains annotent vos images source dans une orientation prévisible lorsque vous soumettez des requêtes de création d'une tâche d'étiquetage, vous devez ajouter une stratégie d'en-tête CORS aux compartiments Amazon S3 qui contiennent vos images source.

Important

Si vous n'ajoutez pas de configuration CORS aux compartiments Amazon S3 contenant vos données source, les tâches d'étiquetage pour ces objets de données source échoueront.

Si vous créez une tâche via la console Ground Truth, CORS est activé par défaut. Si toutes vos données source ne sont pas situées dans le même compartiment Amazon S3 que votre fichier manifeste source, vous devez ajouter une configuration CORS à tous les compartiments Amazon S3 contenant des données source en utilisant les instructions suivantes.

Si vous utilisez l'API CreateLabelingJob pour créer une tâche d'étiquetage Ground Truth, vous pouvez ajouter une stratégie CORS à un compartiment Amazon S3 qui contient des données source dans la console S3. Pour définir les en-têtes CORS requis sur le compartiment Amazon S3 qui contiennent vos images source dans la console Amazon S3, suivez les instructions détaillées dans Comment ajouter le partage des ressources interdomaines avec le partage CORS ?. Utilisez le code de configuration CORS suivant pour les compartiments qui hébergent vos images. Si vous utilisez la console Amazon S3 pour ajouter la stratégie à votre compartiment, vous devez utiliser le format JSON.

Important

Si vous créez une tâche d'étiquetage de nuage de points 3D ou de trame vidéo, vous devez ajouter des règles supplémentaires à votre configuration CORS. Pour en savoir plus, veuillez consulter Autorisations requises pour les tâches d'étiquetage de nuage de points 3D et Exigences d'autorisation de tâche de trame vidéo, respectivement.

JSON

[{ "AllowedHeaders": [], "AllowedMethods": ["GET"], "AllowedOrigins": ["*"], "ExposeHeaders": ["Access-Control-Allow-Origin"] }]

xml

<CORSConfiguration> <CORSRule> <AllowedOrigin>*</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> <ExposeHeader>Access-Control-Allow-Origin</ExposeHeader> </CORSRule> </CORSConfiguration>

Le fichier GIF suivant présente les instructions contenues dans la documentation Amazon S3 pour ajouter une stratégie d'en-tête CORS à l'aide de la console Amazon S3. Pour obtenir des instructions, veuillez consulter la rubrique Utilisation de la console Amazon S3 à la page de documentation Comment ajouter le partage des ressources interdomaines avec le partage CORS ? dans le Guide de l'utilisateur Amazon Simple Storage Service.