> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Clés d’accès sur iOS

> Découvrez le comportement propre au SDK, les autorisations côté application et les options de personnalisation du facteur de clé d’accès affiché dans le composant de gestion des méthodes d’authentification sur iOS.

export const ReleaseStageNotice = ({feature, stage, plans, contact, terms}) => {
  const stageTextMap = {
    "beta": "bêta",
    "ea": "Accès anticipé"
  };
  const stageText = stageTextMap[stage] || "une phase de lancement du produit";
  const prsLink = "/docs/troubleshoot/product-lifecycle/product-release-stages";
  const linkify = (text, url) => {
    return <a href={url} target="_blank" rel="noreferrer" class="link">{text}</a>;
  };
  const includeDetails = (plans, contact, terms) => {
    const hasDetails = terms || plans || contact;
    if (!hasDetails) return null;
    return <span data-as="p">
            {plans && <>Cette fonctionnalité est offerte avec les forfaits {linkify(`${plans}`, "https://auth0.com/pricing")}. </>}
            {contact && "Pour y participer, communiquez avec " + contact + ". "}
            {terms && <>En utilisant cette fonctionnalité, vous acceptez les conditions applicables de l’essai gratuit énoncées dans le {linkify("Master Subscription Agreement", "https://www.okta.com/legal")} d’Okta.</>}
        </span>;
  };
  return <Warning>
            <span data-as="p">
                <strong>La fonctionnalité {feature} est en {linkify(stageText, prsLink)}.</strong>
            </span>

            {includeDetails(plans, contact, terms)}
        </Warning>;
};

<ReleaseStageNotice feature="Auth0 Universal Components" stage="beta" terms="true" contact="Auth0 Support" />

Le composant [`MyAccountAuthMethodsView`](/docs/fr-ca/get-started/universal-components/ios/components/auth-methods-management) peut afficher le flux d’enrôlement de [clé d’accès](/docs/fr-ca/authenticate/database-connections/passkeys) d’Auth0.

Le flux d’enrôlement de clés d’accès affiche un écran d’information, un échange d’enregistrement WebAuthn avec l’authentificateur de plateforme et l’entrée du facteur inscrit dans la liste des authentificateurs.

Contrairement aux autres facteurs, les clés d’accès nécessitent des autorisations de plateforme côté application que le SDK Universal Components pour iOS ne peut pas configurer.

<Frame>
  <img src="https://mintcdn.com/translations/lC_NOnQ2Wbrs3KdZ/docs/images/universal-components/my-account/ios/passkey-enrollment.png?fit=max&auto=format&n=lC_NOnQ2Wbrs3KdZ&q=85&s=b1b4528ae09e5f4896e41afc899056de" alt="Écran d’enrôlement de clé d’accès présentant du contenu informatif et le bouton Créer une clé d’accès" style={{maxWidth: "300px", display: "block", margin: "0 auto"}} width="568" height="915" data-path="docs/images/universal-components/my-account/ios/passkey-enrollment.png" />
</Frame>

<div id="prerequisites">
  ## Prérequis
</div>

Pour activer la prise en charge des clés d’accès dans le SDK Universal Components pour iOS :

* **Configurez un domaine personnalisé pour votre tenant Auth0**. Les clés d’accès nécessitent un [domaine personnalisé](/docs/fr-ca/customize/custom-domains), qui héberge le fichier [Apple App Site Association (AASA)](https://developer.apple.com/documentation/xcode/supporting-associated-domains) liant les identifiants de clé d’accès à votre application.

* **Activez les clés d’accès dans votre connexion de base de données Auth0**. Pour savoir comment activer les clés d’accès dans votre tenant Auth0, consultez [Configurer les clés d’accès](/docs/fr-ca/authenticate/database-connections/passkeys/configure-passkey-policy#configure-passkeys).

* **Enregistrez votre ID d’équipe Apple et votre ID de bundle dans votre application Auth0**. Pour en savoir plus, consultez [Native Passkeys for Mobile Applications](/docs/fr-ca/authenticate/database-connections/passkeys/native-passkeys-for-mobile-applications#configure-auth0-dashboard).

* **Installez et configurez Universal Components pour iOS**. Pour installer Universal Components, configurer votre tenant Auth0 et initialiser le SDK, consultez [Créer une interface libre-service de sécurité des comptes](/docs/fr-ca/get-started/universal-components/ios/components/my-account-overview).

* **Vérifiez la version du système d’exploitation**. Les clés d’accès sont prises en charge sur les appareils équipés d’**iOS 16.6+**, de **macOS 13.5+** ou de **visionOS 1.0+**.

<div id="platform-setup">
  ## Configuration de la plateforme
</div>

<div id="add-the-associated-domain-in-xcode">
  ### Ajouter le domaine associé dans Xcode
</div>

Après avoir enregistré votre ID d’équipe Apple et votre ID de bundle dans les **Device Settings** de votre application Auth0, Auth0 fournit le fichier AASA à partir de votre domaine personnalisé. Ajoutez votre domaine personnalisé Auth0 à l’application :

1. Ouvrez [**Xcode**](https://developer.apple.com/documentation/xcode).

2. Sélectionnez **Signing & Capabilities** de votre cible.

3. Ajoutez une **Capability**, puis sélectionnez **Associated Domains**.

4. Saisissez votre domaine personnalisé Auth0 :

   ```text theme={null}
   webcredentials:YOUR_AUTH0_DOMAIN
   ```

5. Vérifiez que **Signing & Capabilities → Team** correspond à l’ID d’équipe Apple enregistré dans les **Device Settings** de votre application Auth0 et que le **Bundle Identifier** de la cible correspond exactement à l’ID de bundle enregistré. iOS effectue une comparaison sensible à la casse, octet par octet — par exemple, `com.example.OAuth2` n’est pas identique à `com.example.oauth2`.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  **Pendant le développement**, le CDN d’Apple peut conserver en cache des fichiers AASA obsolètes pendant plusieurs heures après la modification des **Device Settings**.

  Pour récupérer directement le fichier AASA à partir de votre tenant pendant le développement, ajoutez `?mode=developer` au droit (par exemple, `webcredentials:YOUR_AUTH0_DOMAIN?mode=developer`) et activez **Settings → Developer → Associated Domains Development** sur l’appareil.

  Effectuez vos tests sur un appareil physique, car le simulateur iOS ne respecte pas toujours de façon fiable la configuration des domaines associés. Retirez le suffixe `?mode=developer` avant de livrer une version de production.
</Callout>

<div id="sdk-limitations">
  ## Limites du SDK
</div>

* **Les clés d’accès ne peuvent être enrôlées qu’à partir du composant `MyAccountAuthMethodsView`**. Aucune API SwiftUI publique ne permet de déclencher l’enrôlement autonome d’une clé d’accès ailleurs dans votre application. Les invites post-login proposant d’« enregistrer une clé d’accès » ne sont pas prises en charge. Vous pouvez suivre [ui-components-ios](https://github.com/auth0/ui-components-ios/issues) pour les mises à jour.

* **La suppression d’une clé d’accès dans le composant ne la supprime pas du magasin d’identifiants du système d’exploitation**. La clé d’accès inscrite est dissociée du compte Auth0, mais l’identifiant privé demeure dans le trousseau iCloud jusqu’à ce que l’utilisateur le supprime du gestionnaire d’identifiants du système d’exploitation.

* **Le mode de transmission de l’attestation n’est pas exposé**. Le SDK ne permet pas de sélectionner la politique d’attestation (`none` / `indirect` / `direct`) ni d’énumérer les modes de transport des authentificateurs. Il utilise la politique WebAuthn configurée du tenant Auth0 [WebAuthn](/docs/fr-ca/secure/multi-factor-authentication/webauthn-as-mfa#webauthn-as-multi-factor-authentication).

<div id="learn-more">
  ## En savoir plus
</div>

<CardGroup cols={2}>
  <Card title="Gestion des méthodes d’authentification" icon="shield" href="/docs/fr-ca/get-started/universal-components/ios/components/auth-methods-management">
    Consultez la référence du composant `MyAccountAuthMethodsView` et la liste complète des facteurs pris en charge.
  </Card>

  <Card title="Créer une interface libre-service de sécurité des comptes" icon="key" href="/docs/fr-ca/get-started/universal-components/ios/components/my-account-overview">
    Initialisez le SDK et associez le fournisseur de token à votre tenant Auth0.
  </Card>
</CardGroup>
