> ## Documentation Index
> Fetch the complete documentation index at: https://auth0-docs-event-stream-action-templates.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Sécuriser une interface de ligne de commande avec Auth0

> Comment utiliser Auth0 pour sécuriser une interface de ligne de commande

Il y a trois façons de sécuriser une interface de ligne de commande avec Auth0, selon un niveau de sécurité décroissant :

* [Flux d’autorisation d’appareil](#device-authorization-flow) lorsqu’un utilisateur n’arrive pas à ouvrir un navigateur
* [Flux d’autorisation des identifiants client](#client-credentials-grant-flow) pour les applications agissant seules, non attribuables à un utilisateur
* Le [mot de passe du propriétaire de la ressource](#resource-owner-password-grant-flow) ne sera accordé que lorsque vous tenterez d’authentifier le client de l’interface de ligne de commande, une occurrence plutôt rare. Dans tous les autres cas, il est déconseillé de procéder ainsi.

## Flux d’autorisation d’appareil

Au lieu d’authentifier directement les utilisateurs, les appareils à saisie limitée qui se connectent à l’internet demandent aux utilisateurs d’aller cliquer sur un lien sur leur ordinateur ou leur téléphone intelligent et d’y autoriser l’appareil. Cela permet d'améliorer l'expérience utilisateur pour les appareils qui ne disposent pas d'un moyen facile de saisir du texte. Pour ce faire, les applications des appareils utilisent le flux d’autorisation d’appareil (rédigé dans OAuth 2.0), dans lequel elles transmettent leur ID client pour lancer le processus d’autorisation et obtenir un jeton.

La manière la plus simple d’implémenter le Flux d’autorisation d’appareil consiste à suivre les étapes décrites dans [Appeler l’API avec le flux d’autorisation d’appareil](/docs/fr-ca/get-started/authentication-and-authorization-flow/device-authorization-flow/call-your-api-using-the-device-authorization-flow).

Pour en savoir plus sur le flux d’autorisation d’appareil dans <Tooltip href="/docs/fr-ca/glossary?term=oath2" tip="OAuth 2.0
Cadre d’applications d’autorisation qui définit les protocoles d’autorisation et les flux de production." cta="Voir le glossaire">OAuth 2.0</Tooltip>, vous pouvez lire le document [OAuth 2.0 Authorization Grant](https://tools.ietf.org/html/draft-ietf-oauth-device-flow-15) de l’Internet Engineering Task Force (IEFT). Vous pouvez aussi lire notre article [Flux d’autorisation d’appareil](/docs/fr-ca/get-started/authentication-and-authorization-flow/device-authorization-flow).

## Flux d’autorisation des identifiants client

Use the Client Credentials Grant (CCG) flow when users and downstream <Tooltip href="/docs/fr-ca/glossary?term=idp" tip="Fournisseur d’identité (IdP)
Service de stockage et de gestion des identités numériques." cta="Voir le glossaire">identity providers</Tooltip> aren’t involved, and you want to authenticate based on distinct machines or devices.

Si votre fournisseur d’identité prend en charge l’envoi d’identifiants, lisez notre article [Flux des identifiants client](/docs/fr-ca/get-started/authentication-and-authorization-flow/client-credentials-flow). Pour en savoir plus sur l’implémentation de ce flux, reportez-vous à [Appeler l’API à l’aide du flux des identifiants client](/docs/fr-ca/get-started/authentication-and-authorization-flow/client-credentials-flow/call-your-api-using-the-client-credentials-flow).

## Flux d’autorisation par mot de passe du propriétaire de la ressource

Nous ne recommandons pas d’utiliser le flux d’autorisation par mot de passe du propriétaire de la ressource (ROPG) avec les applications natives. Comme expliqué dans l’article de l’IEFT [RFC 8252 OAuth 2.0 for Native Apps](https://tools.ietf.org/html/rfc8252) , « Les demandes d’autorisation OAuth 2.0 des applications natives ne devraient être effectuées QUE par l’intermédiaire d’agents utilisateurs externes, principalement le navigateur de l’utilisateur ». Pour en savoir plus, voir [Agents d’utilisateurs intégrés RFC 8252](https://tools.ietf.org/html/rfc8252#section-8.12).

L’utilisation de l’autorisation par mot de passe du propriétaire de la ressource (ROPG) est moins sûre que les options basées sur la redirection décrites ci-dessus. ROPG ne concerne que des cas obsolètes. Dans le contexte des interfaces de ligne de commande, elle n’a de sens que pour des chaînes de connexion où vous devez prendre en charge des programmes obsolètes.

Si vous devez utiliser ROPG dans votre application native au lieu du flux de l’appareil comme nous le recommandons, vous pouvez alors utiliser notre [point de terminaison ROPG conforme à l’OIDC](/docs/fr-ca/api/authentication#resource-owner-password).
