View in English

  • Global Nav Open Menu Global Nav Close Menu
  • Apple Developer
Search
Cancel
  • Apple Developer
  • News
  • Discover
  • Design
  • Develop
  • Distribute
  • Support
  • Account
Only search within “”

Quick Links

5 Quick Links

Vidéos

Ouvrir le menu Fermer le menu
  • Collections
  • Sujets
  • Toutes les vidéos
  • À propos

Plus de vidéos

  • À propos
  • Résumé
  • Transcription
  • Code
  • Intégrez la confidentialité dans votre processus de développement

    Apprenez à intégrer la confidentialité dans vos apps, depuis la planification jusqu'au déploiement. Nous aborderons des moyens concrets pour intégrer la confidentialité à chaque étape du cycle de développement, en mettant l'accent sur la minimisation des données, le traitement sur l'appareil, ainsi que la transparence et le contrôle. Vous découvrirez comment utiliser les outils et frameworks d'Apple pour protéger les données des utilisateurs et créer une expérience respectueuse de la vie privée sur les apps.

    Chapitres

    • 0:00 - Introduction
    • 0:38 - La confidentialité selon Apple
    • 3:47 - Planification
    • 7:13 - Conception
    • 9:27 - Développement : Interface utilisateur
    • 12:48 - Développement : Client-serveur
    • 18:20 - Développement : Ressources locales
    • 20:46 - Test
    • 22:28 - Déploiement

    Ressources

    • AdAttributionKit
    • Configuring app groups
    • Explore the Human Interface Guidelines for privacy
    • Privacy manifest files
    • Swift Homomorphic Encryption
      • Vidéo HD
      • Vidéo SD

    Vidéos connexes

    WWDC25

    • Nouveautés dans AdAttributionKit

    WWDC24

    • Bring your machine learning and AI models to Apple silicon
    • Deploy machine learning and AI models on-device with Core ML
    • Meet AdAttributionKit
    • What’s new in privacy

    WWDC23

    • Embed the Photos Picker in your app
    • Get started with privacy manifests

    WWDC22

    • Create your Privacy Nutrition Label
    • Replace CAPTCHAs with Private Access Tokens

    WWDC21

    • Meet the Location Button
    • Mitigate fraud with App Attest and DeviceCheck
    • What's new in CloudKit
  • Rechercher dans cette vidéo…

    Bonjour, je m’appelle Joey Tyson et je suis ingénieur en protection de la vie privée chez Apple. Lorsque vous concevez des apps qui s’appuient sur des données personnelles, l’importance de ces données rend indispensable l’intégration de la confidentialité dans votre processus de développement. Chez Apple, le respect de la vie privée est bien plus qu’un simple mot à la mode. Chaque personne mérite que ses données soient traitées avec soin et respect. Je vais passer en revue les phases clés de la création d’une app et partager des moyens pratiques d’insuffler de la confidentialité à chaque étape. Tout d’abord, examinons ce que j’entends par « vie privée ». Lors d’une conférence en 2010, Steve Jobs a décrit la vie privée comme le fait que les gens savent à quoi ils consentent, dans un langage clair et répété. En d’autres termes, les utilisateurs comprennent et font confiance à votre gestion de leurs données. Il y a un alignement entre ce qu’ils souhaitent et ce que vous faites dans la pratique. Steve s’est également montré optimiste quant à la capacité des utilisateurs à faire les bons choix concernant leurs données si cette compréhension est bien établie.

    Il a noté que certains veulent partager plus de données que d’autres. Chacun apporte son contexte particulier à de tels choix, et personne d’autre ne peut se permettre d’en décider. L’une des meilleures façons de rester cohérent avec l’intention des gens est simplement de leur demander. Trois concepts clés ressortent systématiquement de toute définition de la vie privée. Tout d’abord, la protection de la vie privée concerne les personnes, la façon dont elles interagissent avec la technologie et son impact sur elles. Plus précisément, il s’agit de l’impact du traitement des données sur les personnes : ce que vous faites de ce que vous savez sur les utilisateurs de votre app. Enfin, pour décider quoi faire, vous devez tenir compte du contexte de ces informations, en particulier des attentes et des préférences des personnes qu’elles décrivent. La protection de la vie privée consiste à respecter ce contexte lorsqu’on vous confie les données de quelqu’un. Connaître des informations sur des personnes vous permet de créer des expériences passionnantes et personnalisées pour elles. Toutefois, un usage ou un partage inattendu de ces informations dans de nouveaux contextes, peut avoir un impact important sur leur vie. Votre app doit fonctionner comme l’attendent ou le choisissent les utilisateurs, y compris dans l’utilisation de leurs données. Tim Cook a expliqué que l’approche d’Apple en matière de confidentialité implique de collecter le moins possible de vos données, puis de les traiter avec réflexion et respect. Il a souligné que nous ne nous demandions pas simplement ce que nous pouvons faire, mais ce que nous devrions faire dans le meilleur intérêt de nos utilisateurs. Cette vision éclaire les piliers d’Apple sur les données : minimisation, traitement sur l’appareil, transparence, contrôle et sécurité. Je vais rendre cela plus concret en appliquant une approche axée sur le respect de la vie privée au développement d’apps. Les plates-formes Apple intègrent de nombreuses technologies pour garantir la confidentialité dans votre app. Je vais partager avec vous des outils sur l’intégration de la confidentialité dans votre processus de développement.

    Quel que soit votre modèle de cycle de développement logiciel, il couvre probablement ces cinq phases simplifiées. planification, conception, développement, tests et déploiement. Je vais aborder chacune de ces étapes et détailler comment y assurer la confidentialité. Je vous présenterai les outils disponibles sur les plates-formes Apple pour atteindre vos objectifs de confidentialité, ainsi que certaines exigences.

    Démarrons avec la planification. À cette étape, vous définissez le fil conducteur de la confidentialité de votre app. Pour garantir une confidentialité optimale et respecter l’intention de l’utilisateur, il faut intégrer la confidentialité dès le début du développement. Comme pour la sécurité ou la localisation, la confidentialité est beaucoup plus difficile à introduire par la suite. Chez Apple, nous définissons d’abord des garanties de confidentialité : des engagements sur ce que les utilisateurs peuvent attendre de nos produits en matière de confidentialité.

    Ces descriptions de produit ne se contentent pas d’indiquer les exigences techniques de vos objectifs de confidentialité, elles peuvent vous aider à communiquer ces objectifs aux personnes qui utilisent votre app.

    Chez Apple, nous utilisons les piliers de la confidentialité cités précédemment pour orienter l’élaboration de nos garanties de confidentialité. Pour illustrer ce processus, supposons que je développe l’app Pal About, qui permet de trouver des points d’intérêt proches et d’en partager des photos avec des amis.

    La minimisation des données consiste à n’utiliser que les données dont vous avez besoin pour maximiser votre alignement avec les attentes des utilisateurs. Cela renforce l’efficacité et la confiance. Lors de la collecte de données pour l’analyse, réfléchissez bien aux problèmes à résoudre ou aux questions à traiter, et assurez-vous que la collecte est adaptée à ces cas d’utilisation. Pour mon app, une garantie sera : « Nous ne conservons que des données d’utilisation agrégées ». La minimisation des données implique aussi des valeurs par défaut strictes, pour offrir des expériences basées sur le moins d’hypothèses possible concernant les choix de confidentialité des utilisateurs. Je peux assurer aux utilisateurs que « lorsque vous recherchez des lieux proches, votre emplacement actuel n’est pas stocké par défaut ». J’ai mentionné plus tôt que la vie privée implique le contexte des informations de quelqu’un. Le traitement sur l’appareil est un moyen essentiel de respecter ce contexte. Chaque fois que des données passent d’un contexte à un autre, par exemple, de l’appareil à un serveur ou entre deux apps différentes, réfléchissez à la nécessité de ce flux et à la manière dont il affecte la vie privée de vos utilisateurs. Pour en revenir à Pal About, je pourrais écrire : « Les lieux de rencontre suggérés ne sont générés que localement à l’aide de données sur l’appareil. » Après avoir fixé des valeurs par défaut strictes et conservé le contexte, définissez clairement les attentes concernant l’utilisation des données et proposez des options de personnalisation. Lorsque vous donnez des options de partage de données au-delà des valeurs par défaut, assurez-vous que ces choix offrent une valeur claire en retour. Lors de la création de fonctionnalités avec l’IA, informez les utilisateurs de son utilisation et donnez-leur les moyens de contrôler les flux de données, par exemple, en choisissant si leurs données servent à entraîner des modèles. Pour garantir la confidentialité de mon app, je peux décider que « les photos que vous chargez ne sont utilisées pour entraîner des modèles génératifs que si vous choisissez d’améliorer les fonctionnalités d’intelligence ». Enfin, les protections de sécurité permettent de contrôler les flux de données et d’éviter tout risque. Cela signifie que, autant que possible, la confidentialité doit être renforcée par des contrôles techniques. Autrement dit, des systèmes garantissant nativement la confidentialité, même si d’autres éléments ne fonctionnent pas comme prévu. Pour mon app, je peux écrire : « Nous ne pouvons pas lire les messages envoyés à vos amis », et concrétiser cet objectif avec un chiffrement de bout en bout. Passons maintenant à la conception : ou comment vos utilisateurs vont interagir avec votre produit. Un bon design permet de communiquer et d’informer vos utilisateurs sans que cela paraisse contraignant. Si les utilisateurs font confiance dans l’utilisation de leurs données par une app, ils s’y engagent volontiers et partagent plus facilement leurs infos. Voici quelques principes de conception généraux pour instaurer cette confiance. Définissez les attentes de manière proactive. Les utilisateurs ne doivent jamais être surpris par ce qu’une app collecte ou utilise comme données. Par exemple, les apps Apple présentent un résumé de confidentialité au premier lancement, avec des liens vers plus d’informations. Les flux d’intégration peuvent aussi aider les utilisateurs à comprendre l’usage des données dans votre app.

    En plus d’informer les utilisateurs en amont, indiquez clairement tout changement éventuel. Les utilisateurs doivent comprendre tout changement de flux de données affectant leur vie privée ou leur comportement. Par exemple, nous affichons une animation iOS lors de chaque appel à Siri, ainsi que l’indicateur système en haut de l’écran quand le microphone est activé.

    Les choix concernant les données doivent être significatifs et contextuels. Chaque option doit soit amener une différence concrète dans le comportement des apps, soit inclure une explication claire de son impact. Synchronisez ces choix pour qu’ils apparaissent au moment le plus pertinent, et déterminez le niveau de granularité adapté à votre public. Par exemple, si Pal About sur macOS propose le streaming depuis des appareils multimédias, la connexion au réseau local ne s’établira que si l’utilisateur active cette fonctionnalité. Cela explique clairement la nécessité de ces connexions réseau et l’affichage d’une invite d’activation.

    Pour plus d’infos sur la conception respectueuse de la vie privée, consultez les « Directives d’interface humaine » de la documentation Apple Developer. Après avoir planifié et conçu pour protéger la vie privée, il est temps d’écrire un peu de code. De nombreux outils et technologies peuvent vous aider à atteindre vos objectifs de confidentialité. Dans cette section, je vais illustrer quelques exemples d’utilisation de ces outils lors du développement de votre app.

    Je vais expliquer comment simplifier les choix de confidentialité dans l’interface de votre app. Accéder à des ressources comme le calendrier ou la position implique de partager des données sensibles selon le contexte. Les plates-formes Apple ne partagent ces données que conformément à l’intention de l’utilisateur. L’accès étendu étant le plus impactant pour la confidentialité, il déclenche généralement une demande d’autorisation explicite, comme pour la photothèque. Si quelqu’un ne veut partager que quelques photos, autoriser l’accès à l’ensemble de la bibliothèque pourrait révéler beaucoup plus d’informations qu’il ne le souhaite. « Limiter l’accès » permet à quelqu’un de choisir uniquement certaines photos à la place. Vous pouvez fluidifier l’expérience en demandant uniquement les données nécessaires grâce à des outils adaptés. Étant donné que les gens choisissent ce qu’ils veulent partager via ces flux, leurs interactions signalent implicitement l’intention et ils ne reçoivent pas d’invites supplémentaires. Dans mon app, je veux permettre de charger des photos, mais je n’ai pas besoin d’accéder à toute la bibliothèque de l’utilisateur. Je peux utiliser un PhotosPicker pour éviter complètement l’invite de la photothèque. Comme le système exécute le sélecteur séparément, l’app ne reçoit que les photos réellement choisies par l’utilisateur et aucune demande d’autorisation n’apparaît. Vous pouvez intégrer le sélecteur dans la UI de votre app et personnaliser son apparence. Il permet même aux utilisateurs de choisir des photos masquées. Des versions du sélecteur sont disponibles sur d’autres plates-formes, notamment macOS et visionOS. Regardez « Embed the Photos Picker in your app » de la WWDC23 pour plus d’informations. Apple propose aussi des éléments d’interface sécurisés qui facilitent l’accès aux données. Revenons à mon app, supposons que je souhaite faciliter la recherche de lieux proches. Ajouter un bouton de localisation permet à l’utilisateur de partager sa position actuelle d’un simple geste. Le système vérifie que le bouton a été activé par l’utilisateur, garantissant ainsi que le partage de la position correspond à son intention. Vous pouvez adapter l’apparence de ce bouton pour mieux l’intégrer à la UI de votre app.

    La première fois qu’une personne touche un bouton de localisation dans votre app, elle reçoit un message confirmant son intention et une explication de sa fonction. L’indicateur de localisation s’affiche en haut de l’écran, comme il le ferait lorsque la localisation est partagée via d’autres API. Après avoir choisi « OK », les prochains touchés n’afficheront plus d’invite et la localisation actuelle sera partagée automatiquement. Regardez « Meet the Location Button » de la WWDC21 pour plus de détails.

    Ce ne sont là que deux exemples d’outils permettant de réduire la charge cognitive de l’interface utilisateur de confidentialité. D’autres incluent : un sélecteur hors processus pour les contacts, le bouton UIPasteControl et des flux rationalisés pour la configuration des accessoires matériels. Avant d’utiliser une API large, vérifiez s’il existe une option pour accéder uniquement aux données nécessaires. Bien sûr, dans certains cas, des demandes d’autorisation peuvent encore être nécessaires. Pour qu’elles soient pertinentes et contextuelles, déclenchez ces actions à des moments où l’utilisateur s’attend à une demande. Évitez d’afficher ces choix dès le premier lancement de votre app, et rédigez des messages explicites qui justifient clairement l’apparition de chaque invite. Je vais maintenant examiner certaines technologies de confidentialité qui opèrent en arrière-plan lors des interactions client-serveur. J’expliquerai comment utiliser les ressources serveur sans exposer de données sensibles, puis comment réduire le besoin de données identifiables lors de scénarios typiques de collectes de données. La Protection avancée des données des plates-formes Apple active le chiffrement de bout en bout pour la plupart des données stockées dans iCloud. Avec CloudKit, vous pouvez activer le chiffrement de bout en bout des données de votre app dans CloudKit lorsque l’utilisateur active la Protection avancée des données. Cela est possible sans modification de votre infrastructure ni clés de chiffrement supplémentaires. Tout d’abord, utilisez des types de données chiffrés pour tous les champs de votre schéma CloudKit. Cela inclut les champs CKAsset par défaut. Pour la plupart des types de données dans CloudKit, il existe une variante chiffrée, telle que EncryptedString.

    Vous pouvez utiliser l’API encryptedValues pour récupérer ou stocker des données dans vos enregistrements CloudKit. Toutes les opérations de chiffrement et de déchiffrement sont gérées par cette API. Notez que CloudKit ne prend pas en charge les index sur les champs chiffrés. Ne les incluez donc pas dans vos prédicats ou descripteurs de tri lorsque vous récupérez des enregistrements avec CKQuery et CKQueryOperation. Regardez « What’s new in CloudKit » de la WWDC21 pour plus d’informations. Une autre technique de chiffrement utilisée chez Apple est le chiffrement homomorphe. Au lieu de calculer sur des données brutes, cela permet de travailler sur des données chiffrées et d’obtenir le même résultat lors du déchiffrement. À aucun moment du calcul, les données ne sont déchiffrées. En combinant des opérations informatiques simples telles que l’addition, le chiffrement homomorphe permet l’utilisation de technologies plus avancées, telles qu’une PIR, une requête d’information privée. À l’aide de PIR, vous pouvez rechercher des données sur un serveur sans jamais déchiffrer requête ni résultat côté serveur. Avec PIR, l’appareil envoie une charge utile chiffrée de la requête au serveur, puis le serveur utilise le chiffrement homomorphe pour calculer un résultat chiffré. N’oubliez pas que le calcul lui-même est chiffré, de sorte que le serveur n’a pas accès au résultat en texte clair pendant la durée de vie de la requête. Enfin, le serveur renvoie le résultat chiffré à l’appareil pour qu’il le déchiffre et le traite localement. Dans Pal About, j’utilise PIR pour obtenir des infos sur les lieux de rencontre sans que le serveur puisse suivre l’historique de recherche d’un utilisateur. Connaître les lieux explorés peut nuire à la sécurité de certains utilisateurs. Utiliser ou non PIR dans mon app devient donc une décision clé pour la confidentialité. PIR est déjà intégré dans des fonctionnalités Apple et des apps populaires développées par des experts comme vous. Pour en savoir plus sur l’implémentation de PIR, consultez la bibliothèque et les applications Swift Homomorphic Encryption sur GitHub. Deux cas courants semblant nécessiter des données identifiables sont la lutte contre la fraude et la diffusion des publicités. Je vais vous montrer des fonctionnalités Apple qui vous aident à atteindre vos objectifs tout en limitant la collecte de données comme l’identifiant ou l’adresse IP. Les jetons d’accès personnel permettent de vérifier la légitimité des appareils sans identifier les utilisateurs, aidant ainsi à lutter contre la fraude. Les appareils reçoivent des jetons anonymes après leur validation, et vous pouvez les vérifier sans informations d’identité supplémentaires. Regardez « Replace CAPTCHAs with Private Access Tokens » de la WWDC22 pour plus de détails. Vous devrez peut-être empêcher des actions frauduleuses spécifiques à votre app, telles que la tentative d’utiliser plusieurs fois une promotion. DeviceCheck est une API qui vous permet d’associer jusqu’à deux informations à un appareil donné sans avoir à suivre les identifiants des appareils. Ces états sont gérés par Apple et persistent après la réinstallation ou les transferts d’appareils. Regardez « Mitigate fraud with App Attest and DeviceCheck » de la WWDC21 pour en savoir plus sur la façon de les configurer et de les récupérer. Pour les performances publicitaires, AdAttributionKit est un outil puissant qui mesure les campagnes publicitaires tout en préservant le caractère privé des données. Il vous permet d’attribuer les installations et les réengagements d’app à une campagne particulière via un signal de postback signé provenant de l’appareil de l’utilisateur. AdAttributionKit peut également aider à réduire les invites. L’appel des API AdAttributionKit ne nécessite pas d’afficher App Tracking Transparency. Pour les apps d’éditeurs, ajoutez les identifiants des réseaux publicitaires à votre Info.plist, puis affichez les annonces signées par ces réseaux. Pour plus de détails sur le fonctionnement d’AdAttributionKit et de ses signaux de postback, regardez « Meet AdAttributionKit » de la WWDC24. Pour les apps avec de la publicité, vous devrez enregistrer les évènements de conversion au sein de votre app, ainsi que tout réengagement pertinent. Vous pouvez spécifier un point de terminaison pour obtenir une copie des signaux de postback. Toutes les API pertinentes pour ces mises à jour se trouvent dans la section AdAttributionKit de la documentation Apple Developer, et la vidéo « What’s new in AdAttributionKit » détaille les nouvelles fonctionnalités d’iOS 26. Voici quelques conseils pour gérer les ressources locales tout en préservant la confidentialité, notamment avec les modèles d’IA embarqués, les frameworks groupés et les processus d’app.

    Je vais d’abord montrer la puissance de Core ML à exécuter, entraîner ou affiner des modèles de machine learning directement sur l’appareil. Cela fonctionne pour une gamme de modèles open source et de modèles que vous créez sur mesure avec Create ML. Avec des techniques d’optimisation et de compression, vous pouvez faire tourner de grands modèles de langage sans serveur. Regardez « Deploy machine learning and AI models on-device with Core ML » ou « Bring your machine learning and AI models to Apple silicon », de la WWDC24, pour vos premiers pas avec Core ML. Les conteneurs de groupes d’apps vous permettent de partager des données entre les apps que vous créez, mais ils contribuent également à protéger les données. Sous macOS, les autres apps ne peuvent accéder au conteneur de groupe qu’avec l’autorisation de l’utilisateur. Pour utiliser ces conteneurs, enregistrez un identifiant de groupe d’apps dans le portail de développement sous Certificates, Identifiers & Profiles. Vous devrez alors adopter le droit correspondant dans votre app et lui faire demander le répertoire du conteneur chaque fois que vous avez besoin de stocker des données utilisateur.

    Pour plus d’informations, regardez « What’s new in privacy » de la WWDC24, ou reportez-vous à « Configuring app groups » dans la documentation Apple Developer. Toujours sur macOS, notez que tous les processus d’app doivent être arrêtés lorsqu’une personne quitte l’app. Si vous chargez des processus à l’aide de fork, exec ou POSIX spawn, terminez ces processus à fermeture de l’app. macOS Tahoe détectera heuristiquement si ces processus persistent, puis affichera à l’utilisateur une invite pour confirmer leur intention. Notez que les utilisateurs auront alors la possibilité de mettre fin aux processus eux-mêmes. Rappelez-vous : vous êtes responsable de tout le code de votre app, y compris les SDK tiers. Avant de soumettre votre app, certains SDK exigent un manifeste de confidentialité décrivant les données collectées et les raisons liées aux API utilisées. Pour plus d’informations, consultez la section « Privacy manifest files » dans la documentation Apple Developer. Apprenez-en davantage en regardant la vidéo « Get started with privacy manifest » de la WWDC23. Ces technologies illustrent comment la protection de la vie privée s’intègre au développement. Maintenant, je vais passer à la phase suivante, les tests. La confidentialité fait même partie de cette étape. Comme pour détecter les erreurs ou les régressions de performances, il est important de créer des tests pour vérifier que votre app respecte les garanties de confidentialité. Chez Apple, nous utilisons un modèle pyramidal de tests : des tests simples forment la base pour des tests plus larges, reflétant mieux l’expérience réelle des utilisateurs. Les tests unitaires vérifient des éléments individuels du code, comme des fonctions. Pour plus de confidentialité, ils peuvent valider la logique d’app prenant en charge les contrôles de confidentialité. Les tests d’intégration ciblent des sous-systèmes ou des groupes de classes pour s’assurer qu’ils fonctionnent correctement ensemble. Dans un contexte de confidentialité, ils garantissent que les flux de données entre les systèmes fonctionnent comme prévu. Les tests d’UI vérifient que votre app fonctionne comme prévu en observant les comportements des utilisateurs. Cela inclut des scénarios courants d’intégration ou de modification des paramètres de confidentialité. Avec My Pal About, mes photos restaient privées, et l’entraînement AI ne débutait qu’avec le consentement des utilisateurs pour améliorer l’intelligence. Je rédigerai donc un test de UI pour vérifier que la modification du réglage d’acceptation met toujours à jour les flux de données concernés. Apple propose de nombreux outils pour tester plus efficacement les fonctionnalités de confidentialité. Par exemple, depuis iOS 15.2, activez le Rapport de confidentialité dans Réglages pour vérifier rapidement l’accès aux données, capteurs et réseau de votre app et vous assurer qu’ils correspondent aux attentes des utilisateurs. Couvrons maintenant le déploiement, le processus qui consiste à mettre votre app à la disposition du public. Après avoir beaucoup œuvré pour préserver la confidentialité de vos fonctionnalités, il est temps de partager votre travail. Lorsque vous créez du contenu pour promouvoir votre app, mettre en avant vos garanties de confidentialité peut susciter l’intérêt et distinguer votre app.

    Le déploiement sur l’App Store inclut des étapes obligatoires informant les utilisateurs sur le contenu de votre app. Les étiquettes de confidentialité permettent à l’App Store d’informer les utilisateurs sur les pratiques des apps en matière de confidentialité. L’étiquette indique brièvement quelles données votre app envoie hors de l’appareil et leur utilisation. Configurez votre étiquette de confidentialité dans la section App Privacy de l’App Store Connect. Consultez la section « App privacy details on the App Store » dans la documentation Apple Developer pour connaître les définitions précises des types de données et termes comme « suivi ». Lors de l’archivage d’un build dans Xcode, sélectionnez « Generate Privacy Report » pour obtenir un rapport agrégé des usages déclarés dans les fichiers manifestes de confidentialité. Votre étiquette de confidentialité doit inclure toutes les utilisations possibles des données, même lorsque les utilisateurs ne consentent pas à les fournir dans l’app. Consultez la documentation Apple Developer pour connaître certaines exceptions, telles que certains flux de commentaires et de rapports. Vous pouvez mettre à jour votre étiquette de confidentialité à tout moment, même sans mettre à jour l’app. Regardez la vidéo « Create your Privacy Nutrition Label » de la WWDC22 pour plus d’infos.

    En plus de votre étiquette de confidentialité, assurez-vous que les autres exigences de confidentialité liées au déploiement ont été respectées. Votre app doit avoir un engagement de confidentialité clair. Les manifestes de confidentialité de votre app et de tous les SDK tiers doivent être inclus dans Xcode. De plus, des chaînes d’objet sont requises pour toute demande d’autorisation d’accès aux ressources de l’appareil. Vous pouvez ajouter un lien « Choix en matière de confidentialité » sur votre fiche App Store, afin que les utilisateurs puissent en savoir plus sur la gestion de leurs données et accéder à des options pour les consulter, les supprimer ou les mettre à jour. Planification, conception, développement, tests et déploiement. À chaque étape du processus, l’intégration de la confidentialité contribue à offrir la meilleure expérience possible aux personnes qui utilisent votre app. Il est maintenant temps d’appliquer ces idées à votre processus. Commencez par définir des garanties de confidentialité claires pour votre app. Utilisez les principes de conception pour sensibiliser les utilisateurs à l’utilisation et aux choix des données. Appuyez vos objectifs de confidentialité sur des bases techniques solides. Assurez-vous de respecter les garanties de confidentialité grâce aux tests. Préparez des étiquettes de confidentialité claires afin de partager votre approche de la confidentialité. J’ai souvent évoqué la minimisation des données, mais jamais, je ne minimiserai mes remerciements pour votre engagement envers la confidentialité. Merci.

    • 10:29 - Create an inline Photos picker

      // Create an inline Photos picker
                      
      // Define the app's Photos picker
      PhotosPicker(
          selection: $viewModel.selection,
          matching: .images,
          preferredItemEncoding: .current,
          photoLibrary: .shared()
      ) {
          Text("Select Photos")
      }
                      
      // Configure a half-height Photos picker
      .photosPickerStyle(.inline)
      .ignoresSafeArea()
      .frame(height: 340)
    • 11:33 - Display the Location Button

      // Display the Location Button
      
      LocationButton(LocationButton.Title.currentLocation) {
          // Start updating location when user taps the button.
          // Location button doesn't require the additional
          // step of calling 'requestWhenInUseAuthorization()'.
          manager.startUpdatingLocation()
      }.foregroundColor(Color.white)
          .cornerRadius(27)
          .frame(width: 210, height: 54)
          .padding(.bottom, 30)
    • 13:48 - Encrypting data in CloudKit

      myRecord.encryptedValues["encryptedStringField"] = "Sensitive value"
      
      let decryptedString = myRecord.encryptedValues["encryptedStringField"] as? String
    • 0:00 - Introduction
    • Découvrez pourquoi la confidentialité des données est cruciale dans le développement d'applications, et comment l'intégrer à l'ensemble de votre processus de création. Cette vidéo présente des moyens concrets pour intégrer la confidentialité à chaque étape du cycle de développement.

    • 0:38 - La confidentialité selon Apple
    • Apple considère la confidentialité comme une communication claire et répétée sur la gestion des données, permettant aux utilisateurs de faire des choix éclairés selon leurs attentes. Apple prend en compte le contexte, un élément essentiel lorsqu'on gère les données personnelles des utilisateurs. Les piliers de la confidentialité d'Apple incluent la minimisation des données, le traitement sur l'appareil, la transparence, le contrôle et la sécurité.

    • 3:47 - Planification
    • Une confidentialité efficace commence par une planification rigoureuse. Intégrer la confidentialité dès le début du développement est essentiel, car elle est plus difficile à implémenter après coup. Lors de la planification, Apple définit des engagements de confidentialité : des déclarations générales précisant ce que les utilisateurs peuvent attendre concernant leurs données. Ces engagements s'appuient sur des principes comme la minimisation des données (n'utiliser que ce qui est nécessaire) et des paramètres par défaut respectueux de la vie privée. Les apps doivent expliquer clairement l'usage des données, proposer des options de personnalisation et assurer que les partages supplémentaires apportent une valeur explicite. Des protections comme le chiffrement de bout en bout sont essentielles pour atteindre les objectifs de confidentialité et limiter les risques liés à la circulation des données.

    • 7:13 - Conception
    • Un bon design d'application passe par une communication transparente et une sensibilisation à la collecte et l'usage des données. Cela favorise la confiance des utilisateurs. Les principaux principes de conception sont les suivants : - Établir les attentes dès l'accueil, via des flux de démarrage et des résumés de confidentialité - Rendre les changements d'état visibles et compréhensibles - Proposer des choix de données pertinents et adaptés à l'action en cours Appliquer ces principes permet de concevoir des apps intuitives et respectueuses de la vie privée.

    • 9:27 - Développement : Interface utilisateur
    • Les plateformes Apple limitent le partage des données à ce qui est strictement nécessaire. Utilisez les API Apple conçues pour préserver la confidentialité dans vos apps. Par exemple, utilisez PhotosPicker pour sélectionner des photos sans accès global à la photothèque, et le bouton de localisation pour partager la position avec un seul toucher du doigt. Ces outils simplifient l'expérience et incarnent les autorisations de façon implicite.

    • 12:48 - Développement : Client-serveur
    • Apple fournit plusieurs outils et méthodes pour renforcer la confidentialité dans les apps : - CloudKit : chiffrement de bout en bout des données sur iCloud (protection avancée activée) - Chiffrement homomorphe : calculs sur des données chiffrées - Jetons d'accès personnel : validation des requêtes des appareils légitimes - DeviceCheck : prévention des comportements frauduleux - AdAttributionKit : mesure des campagnes publicitaires sans déclencher les invites dédiées à la transparence du suivi des apps

    • 18:20 - Développement : Ressources locales
    • Utilisez Core ML pour exécuter et entraîner efficacement vos modèles ML directement sur l'appareil. Utilisez les conteneurs de groupes d'apps pour partager les données entre apps en toute sécurité. Évitez les autorisations inutiles en garantissant la fermeture complète des processus lors de la fermeture de l'app.

    • 20:46 - Test
    • Les tests sont indispensables pour garantir que l'app respecte ses engagements en matière de confidentialité. Apple applique un modèle pyramidal de tests unitaires, d'intégration et d'interface utilisateur pour valider les contrôles de confidentialité, les flux de données et les comportements visibles par les utilisateurs. Utilisez le Rapport de Confidentialité de l'App pour examiner l'accès aux données et l'activité réseau afin de vérifier leur cohérence avec les attentes des utilisateurs.

    • 22:28 - Déploiement
    • La phase de déploiement implique de communiquer l'approche confidentialité de votre app et de respecter les exigences de l'App Store. Les étiquettes de confidentialité, configurées dans App Store Connect, résument les types de données transmises et leurs usages. D'autres critères essentiels incluent : une politique de confidentialité claire, des manifestes de confidentialité, des chaînes d'explication pour les demandes d'autorisation, et un lien optionnel « Choix de Confidentialité » pour aider les utilisateurs à gérer leurs données.

Developer Footer

  • Vidéos
  • WWDC25
  • Intégrez la confidentialité dans votre processus de développement
  • Open Menu Close Menu
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    Open Menu Close Menu
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • Icon Composer
    • SF Symbols
    Open Menu Close Menu
    • Accessibility
    • Accessories
    • App Store
    • Audio & Video
    • Augmented Reality
    • Business
    • Design
    • Distribution
    • Education
    • Fonts
    • Games
    • Health & Fitness
    • In-App Purchase
    • Localization
    • Maps & Location
    • Machine Learning & AI
    • Open Source
    • Security
    • Safari & Web
    Open Menu Close Menu
    • Documentation
    • Sample Code
    • Tutorials
    • Downloads
    • Forums
    • Videos
    Open Menu Close Menu
    • Support Articles
    • Contact Us
    • Bug Reporting
    • System Status
    Open Menu Close Menu
    • Apple Developer
    • App Store Connect
    • Certificates, IDs, & Profiles
    • Feedback Assistant
    Open Menu Close Menu
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program
    • News Partner Program
    • Video Partner Program
    • Security Bounty Program
    • Security Research Device Program
    Open Menu Close Menu
    • Meet with Apple
    • Apple Developer Centers
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Academies
    • WWDC
    Get the Apple Developer app.
    Copyright © 2025 Apple Inc. All rights reserved.
    Terms of Use Privacy Policy Agreements and Guidelines