- À partir d’iOS 26.2, les apps destinées aux utilisateurs au Japon peuvent utiliser des moteurs de navigateur autres que WebKit. Deux catégories sont autorisées : les applications de navigateur complètes et les apps utilisant un moteur de navigateur embarqué
- Apple fournit aux développeurs approuvés un accès à des technologies système permettant d’implémenter des moteurs de navigateur hautes performances, notamment la compilation JIT et la prise en charge multiprocessus
- En raison des risques de sécurité, Apple n’accorde ces autorisations qu’aux développeurs qui respectent des exigences strictes en matière de sécurité et de confidentialité et s’engagent à fournir des mises à jour de sécurité continues
- Les apps de navigateur comme les apps de navigation intégrée doivent satisfaire à des critères détaillés, notamment en matière de taux de réussite aux tests, sûreté mémoire, gestion des vulnérabilités et politique de blocage des cookies
- Cette mesure est considérée comme une évolution de politique visant à élargir le choix des moteurs de navigateur sur le marché japonais tout en maintenant la sécurité des utilisateurs
Vue d’ensemble de l’autorisation des moteurs de navigateur alternatifs dans iOS 26.2
- À partir d’iOS 26.2, l’utilisation de moteurs de navigateur autres que WebKit est autorisée pour les utilisateurs au Japon
- Deux types d’applications sont concernés :
- Applications de navigateur dédiées (offrant une expérience complète de navigation web)
- Apps de navigation intégrée fournies par l’administrateur du moteur de navigateur (utilisant un moteur embarqué)
- Apple accorde aux développeurs approuvés l’accès à des technologies système clés, notamment la compilation JIT et la prise en charge multiprocessus
- Les moteurs de navigateur étant exposés à des contenus malveillants et à des données utilisateur sensibles, Apple n’approuve que les développeurs qui remplissent des critères précis et respectent des exigences de sécurité continues
Web Browser Engine Entitlement (pour les applications de navigateur dédiées)
- Cette autorisation permet de développer des applications de navigateur utilisant un moteur alternatif
- Il faut examiner les conditions préalables puis soumettre une demande à Apple
- Apple fournit comme documentation technique BrowserEngineKit, BrowserEngineCore et le guide de configuration du navigateur par défaut
Conditions d’éligibilité
- L’app doit être distribuée exclusivement sur iOS au Japon et être fournie sous la forme d’un binaire distinct des autres apps utilisant le moteur fourni par le système
- Elle doit disposer du Default Browser Entitlement
- Exigences fonctionnelles :
- Réussir au moins 90 % des Web Platform Tests et 80 % de Test262
- Respecter les mêmes seuils lorsque le JIT est désactivé (par exemple en Lockdown Mode)
Exigences de sécurité
- Adoption d’un processus de développement sécurisé et surveillance des vulnérabilités de la chaîne d’approvisionnement
- Fourniture d’une URL de politique de divulgation des vulnérabilités et d’un canal de signalement tiers
- Obligation de mettre en place des mesures d’atténuation sous 30 jours en cas de vulnérabilité
- Exploitation d’une page publique des vulnérabilités corrigées
- Publication d’une politique sur les certificats racine et participation au CA/Browser Forum
- Prise en charge obligatoire des protocoles TLS les plus récents
Exigences de sécurité du programme
- Utilisation d’un langage sûr pour la mémoire ou de fonctionnalités de sûreté équivalentes
- Mise en œuvre de techniques d’atténuation récentes comme Pointer Authentication Codes (PAC) et Memory Integrity Enforcement (MIE)
- Isolation des processus, validation des IPC et priorité à la correction des vulnérabilités
- Interdiction d’utiliser des bibliothèques qui ne reçoivent plus de mises à jour de sécurité
Exigences de confidentialité
- Blocage par défaut des cookies tiers, avec activation uniquement après consentement de l’utilisateur
- Isolation du stockage par site et blocage des accès intersites
- Interdiction de synchroniser l’état entre applications, sauf autorisation explicite de l’utilisateur
- Interdiction de partager des identifiants d’appareil et obligation d’étiquetage App Privacy Report
- Les API d’accès aux PII nécessitent une action active et le consentement de l’utilisateur
Embedded Browser Engine Entitlement (pour la navigation intégrée)
- Permet d’embarquer un moteur de navigateur alternatif dans l’app pour afficher du contenu web
- La navigation intégrée est limitée à l’affichage de contenus accessibles depuis un navigateur web
- L’interface doit occuper la majeure partie de l’écran, inclure un bouton d’ouverture dans le navigateur par défaut et afficher le domaine/l’URL
Conditions d’éligibilité
- Le demandeur doit être un browser engine steward
- Une organisation qui assume directement la responsabilité opérationnelle et de sécurité du moteur
- Le moteur doit être distinct, avec une architecture indépendante et la prise en charge des Web API
Exigences applicatives
- Distribution exclusivement sur iOS au Japon, avec interdiction de détenir l’autorisation de navigateur par défaut
- Réussir au moins 90 % des Web Platform Tests et 80 % de Test262
- Respecter les mêmes seuils lorsque le JIT est désactivé
Exigences de sécurité et de programme
- Processus de développement sécurisé, politique de divulgation des vulnérabilités, réponse sous 30 jours et prise en charge de TLS identiques à celles des applications de navigateur dédiées
- Obligation d’utiliser un langage sûr pour la mémoire, d’appliquer des techniques modernes d’atténuation de sécurité et de prioriser la correction des vulnérabilités
- Interdiction d’utiliser des bibliothèques qui ne reçoivent plus de mises à jour de sécurité
Exigences de confidentialité
- Blocage des cookies tiers, isolation du stockage par site et interdiction de partager des identifiants d’appareil
- Étiquetage App Privacy Report et consentement de l’utilisateur requis pour l’accès aux PII
Exigences supplémentaires
- Lors de la soumission de l’app, il faut indiquer le nom et la version du moteur embarqué
- Après la publication d’une nouvelle version du moteur, une mise à jour de l’app doit être soumise dans les 15 jours
Documentation développeur et guide de sécurité
- Secure SDLC : développement axé sécurité recommandé, avec modélisation des menaces, audit de code et tests de fuzzing
- Memory Safety : utilisation recommandée de la sûreté mémoire native de Swift, de
std::span en C/C++ et de l’option -fbounds-safety
- Vulnerability Management : gestion des vulnérabilités publiques basée sur les identifiants CVE, avec déploiement rapide des correctifs
- Network Security : utilisation recommandée du Network framework de l’iOS SDK et de l’API SecTrust
- Prise en charge obligatoire de TLS 1.2 et 1.3, avec avertissement utilisateur en cas d’utilisation d’anciens protocoles
Documents et avenants associés
- Embedded Browser Engine Entitlement Addendum for Apps in Japan
- Web Browser Engine Entitlement Addendum for Apps in Japan
Aucun commentaire pour le moment.