> ## 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.

# Gestion des méthodes d’authentification sur iOS

> Affichez une interface utilisateur plein écran permettant aux utilisateurs d’inscrire, de consulter et de supprimer des facteurs MFA, des clés d’accès et des codes de récupération au moyen de l’API My Account d’Auth0 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 SDK Universal Components pour iOS comprend le composant `MyAccountAuthMethodsView`, une vue SwiftUI qui gère tous les flux d’inscription, de vérification, d’affichage et de suppression à l’aide de l’[API My Account](/docs/fr-ca/manage-users/my-account-api).

Il utilise les fonctionnalités de [gestion des méthodes d’authentification](/docs/fr-ca/manage-users/my-account-api#manage-authentication-methods) de l’API My Account pour afficher une interface utilisateur complète permettant de gérer les méthodes d’authentification d’un utilisateur.

Avec le composant `MyAccountAuthMethodsView`, vous n’avez pas à gérer la navigation, à effectuer des requêtes vers des endpoints ni à gérer le state.

<Frame>
  <img src="https://mintcdn.com/translations/lC_NOnQ2Wbrs3KdZ/docs/images/universal-components/my-account/ios/my-account-auth-methods-view.png?fit=max&auto=format&n=lC_NOnQ2Wbrs3KdZ&q=85&s=dc99cb358380c8dc8838a68941ee5969" alt="Composant MyAccountAuthMethodsView affichant les méthodes de connexion et de vérification" style={{maxWidth: "300px", display: "block", margin: "0 auto"}} width="568" height="919" data-path="docs/images/universal-components/my-account/ios/my-account-auth-methods-view.png" />
</Frame>

<div id="setup-requirements">
  ## Prérequis de configuration
</div>

Avant d’afficher le composant `MyAccountAuthMethodsView`, suivez [Créer une interface de sécurité de compte en libre-service](/docs/fr-ca/get-started/universal-components/ios/components/my-account-overview) pour installer le SDK, configurer votre tenant Auth0 et initialiser le SDK avec un fournisseur de jetons.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Le composant `MyAccountAuthMethodsView` récupère sa configuration, son fournisseur de jetons et ses paramètres de clés d’accès à partir du SDK initialisé.
</Callout>

<div id="supported-factors">
  ## Facteurs pris en charge
</div>

Le composant prend en charge toutes les méthodes d’authentification configurées avec l’API My Account. L’écran de chaque facteur hérite du thème actif du composant. Pour en savoir plus, consultez [Personnaliser le style et les thèmes](/docs/fr-ca/get-started/universal-components/ios/ios-theming).

| **Facteur**                                                                                                | **Ce que le composant affiche**                                                                                                            | **Notes sur le SDK**                                                                                                                                                                                                                       |
| ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [Email OTP](/docs/fr-ca/secure/multi-factor-authentication/configure-mfa-email)                            | Saisie de l’adresse courriel → vérification par OTP à 6 chiffres                                                                           | Le remplissage automatique des OTP de la plateforme (iOS QuickType) renseigne automatiquement le champ OTP.                                                                                                                                |
| [SMS OTP](/docs/fr-ca/secure/multi-factor-authentication/configure-sms-notifications-for-mfa)              | Sélecteur d’indicatif de pays + saisie du numéro de téléphone → vérification par OTP à 6 chiffres                                          | Le remplissage automatique avec le clavier système fonctionne normalement.                                                                                                                                                                 |
| [TOTP (application d’authentification)](/docs/fr-ca/secure/multi-factor-authentication/configure-otp)      | Code QR avec clé de saisie manuelle → vérification par OTP à 6 chiffres                                                                    | Affiche le payload `otpauth://` standard. Aucun logo d’image de marque personnalisé n’est intégré au code QR.                                                                                                                              |
| [Notifications poussées](/docs/fr-ca/secure/multi-factor-authentication/enable-push-notifications-for-mfa) | Code QR à balayer avec [Auth0 Guardian](/docs/fr-ca/secure/multi-factor-authentication/auth0-guardian) → état « en attente d’approbation » | Les utilisateurs finaux doivent utiliser l’application publique Auth0 Guardian. Les clients d’entreprise disposant d’une version personnalisée du Guardian SDK doivent fournir leur propre lien d’installation à l’extérieur du composant. |
| [Clés d’accès](/docs/fr-ca/get-started/universal-components/ios/components/factors/passkeys)               | Écran d’information → invite biométrique du système d’exploitation → entrée enregistrée dans la liste                                      | Nécessite les domaines associés Apple (`iOS 16.6+`). Consultez la page dédiée pour configurer la plateforme.                                                                                                                               |
| [Codes de récupération](/docs/fr-ca/secure/multi-factor-authentication/configure-recovery-codes-for-mfa)   | Liste de codes affichée une seule fois, avec une action de copie et une confirmation « J’ai enregistré mes codes »                         | Les codes sont affichés à l’utilisateur et ne sont jamais renvoyés à l’appelant. L’action de copie dans le presse-papiers utilise l’API de presse-papiers standard de la plateforme.                                                       |

<div id="get-started">
  ## Pour commencer
</div>

Ajoutez le composant `MyAccountAuthMethodsView` n’importe où dans votre hiérarchie SwiftUI, généralement accessible par un lien de navigation dans les paramètres.

```swift SettingsView.swift wrap lines theme={null}
import SwiftUI
import Auth0UniversalComponents

struct SettingsView: View {
    var body: some View {
        NavigationStack {
            List {
                NavigationLink(destination: MyAccountAuthMethodsView()) {
                    Label("Authentication Methods", systemImage: "lock.shield")
                }
            }
            .navigationTitle("Account Settings")
        }
    }
}
```

La vue Swift ne nécessite aucun paramètre d’initialisation. Pour personnaliser son comportement, utilisez les modificateurs de vue SwiftUI et les valeurs d’environnement.

<div id="parameters">
  ## Paramètres
</div>

Le composant `MyAccountAuthMethodsView` accepte les valeurs de modificateur et d’environnement suivantes :

| **Valeurs de modificateur / d’environnement** | **Type**                  | **Objectif**                                                                                                                                                                                                                 |
| --------------------------------------------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `.auth0Theme(_:)`                             | `Auth0Theme`              | Remplace les jetons de conception — couleurs, typographie, espacement, rayons, tailles. Pour en savoir plus, consultez [Personnaliser le style et les thèmes](/docs/fr-ca/get-started/universal-components/ios/ios-theming). |
| `.embeddedInNavigationStack()`                | —                         | Indique que la vue est intégrée à un `NavigationStack` hôte afin que le SDK ajoute des éléments à votre pile plutôt que de créer la sienne.                                                                                  |
| `\.hostNavigationPath`                        | `Binding<NavigationPath>` | Liaison d’environnement utilisée par le SDK pour ajouter des destinations à la pile de navigation hôte. Obligatoire lorsque vous appelez `.embeddedInNavigationStack()`.                                                     |

<div id="customize">
  ## Personnaliser
</div>

La personnalisation du thème s’applique à l’ensemble du composant; les écrans de chaque facteur héritent du thème actif.

Pour en savoir plus sur le catalogue complet de jetons et les modèles pour le mode sombre, consultez [Personnaliser le style et les thèmes](/docs/fr-ca/get-started/universal-components/ios/ios-theming).

<div id="embed-in-a-host-navigationstack">
  ## Intégrer à une NavigationStack hôte
</div>

Par défaut, le composant `MyAccountAuthMethodsView` gère sa propre `NavigationStack`.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Si votre application gère déjà une pile de navigation, l’imbrication d’une deuxième pile perturbe le fonctionnement du bouton Retour et des gestes de balayage pour revenir en arrière. Intégrez plutôt le composant `MyAccountAuthMethodsView` à votre pile.
</Callout>

```swift wrap lines theme={null}
NavigationStack(path: $path) {
    List {
        NavigationLink("Authentication methods", value: "auth-methods")
    }
    .navigationDestination(for: String.self) { value in
        if value == "auth-methods" {
            MyAccountAuthMethodsView()
                .embeddedInNavigationStack()
        }
    }
}
.environment(\.hostNavigationPath, $path)
```

L’utilisation du mode intégré exige deux éléments :

* Ajoutez le modificateur `.embeddedInNavigationStack()` au composant `MyAccountAuthMethodsView` afin d’éviter la création d’une pile interne.

* Ajoutez le modificateur `\.hostNavigationPath` au `NavigationStack` externe pour indiquer au SDK à quelle liaison de chemin ajouter un élément.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Le SDK expose également une classe d’aide `Router` pour les applications qui souhaitent disposer d’un contrôleur de navigation typé pour leurs propres routes.

  Elle n’est pas nécessaire à la gestion de la navigation interne du SDK. Utilisez-la uniquement si vous souhaitez appliquer le même modèle aux écrans de votre application.
</Callout>

<div id="localization">
  ## Localisation
</div>

Universal Components pour iOS ne proposent pas de chaînes de caractères localisées. Le texte destiné aux utilisateurs est en anglais.

Si la localisation constitue un obstacle à votre intégration, veuillez soumettre une demande de fonctionnalité dans le dépôt [ui-components-ios](https://github.com/auth0/ui-components-ios/issues).

<div id="limitations">
  ## Limites
</div>

* **Aucun composant de facteur autonome sur iOS**. Chaque facteur s’affiche dans le composant gestion des méthodes d’authentification. Aucune API publique ne permet d’inscrire, de vérifier ou de supprimer un seul facteur depuis une autre partie de votre application.
* **Aucun composant autonome pour lister ou supprimer des facteurs**. Le SDK ne fournit pas de composants publics permettant de lister les facteurs inscrits ou de les supprimer en dehors de ce composant. Utilisez le composant gestion des méthodes d’authentification pour une expérience de gestion complète.

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

<CardGroup cols={2}>
  <Card title="Créer une interface de sécurité de compte en libre-service" icon="key" href="/docs/fr-ca/get-started/universal-components/ios/components/my-account-overview">
    Initialisez le SDK et reliez le fournisseur de jetons à votre tenant Auth0.
  </Card>

  <Card title="Personnalisez les styles et les thèmes" icon="palette" href="/docs/fr-ca/get-started/universal-components/ios/ios-theming">
    Remplacez les jetons de couleur, de typographie, d’espacement, de rayon et de taille à l’aide du système de jetons de conception d’Auth0.
  </Card>
</CardGroup>
