Travailler avec App Transport Security (ATS)

Dans cette rubrique, vous apprendrez comment utiliser App Transport Security.

Aperçu

Avec la sortie d'iOS 9, Apple a introduit une nouvelle fonctionnalité appelée Sécurité du transport des applications (ATS) qui applique des connexions sécurisées entre une application et des services Web. Dans un avenir proche, toutes les applications de l'App Store devront avoir activé ATS, à moins que vous ne fournissiez une justification raisonnable des exceptions ATS, dans le cadre du processus d'examen des applications.

Les restrictions ATS s'appliquent aux applications qui ciblent iOS 9.0 et versions ultérieures. Les applications existantes dans l'App Store ne seront pas affectées, mais vous devrez appliquer des restrictions ATS lorsque vous publierez de nouvelles applications ou mettez à jour vos applications existantes.

L'écosystème Brightcove prend en charge les restrictions ATS. Dans la plupart des cas, vous devez créer vos applications avec ATS activé. Si vous avez besoin de vous connecter à des URL non sécurisées, vous pouvez soumettre vos exceptions ATS ainsi qu'une justification à l'examen de l'App Store d'Apple.

Choisissez l'une des options suivantes :

En dernier recours, vous pouvez désactiver les exigences ATS. Gardez à l'esprit que cette option va bientôt disparaître.

Création d'applications avec ATS activé

Si vous utilisez des connexions sécurisées via HTTPS entre votre application et les services Web, vous pouvez activer App Transport Security pour votre application.

Pour créer vos applications avec ATS activé, procédez comme suit :

  1. Activez votre CDN pour une communication sécurisée.
    • Les clients de Video Cloud (que vous utilisiez le CDN maison ou un CDN nommé) doivent contacter leurs responsables de compte Brightcove pour s'assurer que les comptes sont configurés pour fournir via HTTPS.

    • Pour ceux qui utilisent des ressources distantes, vous devrez peut-être configurer votre CDN de manière appropriée.

  2. Utilisez une communication sécurisée pour diffuser votre contenu multimédia. Cela inclut les vidéos, les publicités, les légendes, les images d'affiches, les vignettes et d'autres connexions API tierces.

    • Clients de Video Cloud : Utilisez l'API Playback pour récupérer le protocole sécurisé pour chacun de vos actifs.

    • Clients de Brightcove Player : Assurez-vous que votre contenu multimédia est diffusé via HTTPS.

Utilisation des exceptions ATS

Si vous devez utiliser des connexions non sécurisées entre votre application et les services Web, vous pouvez essayer d'utiliser les exceptions ATS. Gardez à l'esprit que la raison des exigences ATS est de garantir aux utilisateurs un bon niveau de sécurité lors de l'utilisation de votre application. Assurez-vous donc que votre application ne peut pas utiliser de connexions sécurisées avant de creuser dans les exceptions ATS.

Il existe des clés spécifiques que vous pouvez utiliser pour contourner les exigences ATS. Ces exceptions déclencheront un examen supplémentaire de l'App Store et nécessiteront que vous fournissiez une justification raisonnable. Pour plus de détails, consultez le Examen de l'App Store pour ATS document.

Notez que vous pourrez peut-être obtenir une justification pour une exception pour un contenu déjà crypté (c'est-à-dire FairPlay), mais gardez à l'esprit qu'il est préférable d'utiliser HTTPS lorsque cela est possible.

Désactivation des exigences ATS

Lors de la création d'applications qui ciblent le SDK iOS 9 ou version ultérieure, vous pouvez choisir de désactiver ATS. Suivez ces étapes pour désactiver les exigences ATS dans votre application :

  1. Dans Xcode, faites un clic droit sur le Info.plist fichier et ouvrez-le en tant que Code source.

    Code source info.plist
    Code source info.plist
  2. Copiez le code suivant :

    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
  3. Dans le Info.plist dossier, avant la clôture </dict> tag, collez le code ci-dessus.

    Autoriser les charges arbitraires
    Autoriser les charges arbitraires
  4. Dans Xcode, lorsque vous ouvrez le Info.plist fichier en tant que Liste des propriétés , vous devriez maintenant voir cette entrée dans le dictionnaire plist.

    ATS désactivé
    ATS désactivé

La désactivation d'ATS ne modifie pas les connexions HTTPS existantes. Cela empêche simplement iOS d'appliquer des exigences de sécurité supplémentaires sur votre communication http.

Ressources additionnelles