Aller au contenu principal

ggshield auth login

Description

Authentifiez-vous auprès d'une instance GitGuardian.

ggshield auth login [OPTIONS]

Une authentification réussie aboutit à un token d'accès personnel. Ce token est stocké dans votre configuration et utilisé pour authentifier vos futures requêtes.

La méthode d'authentification par défaut est web. ggshield lance un navigateur web pour vous authentifier auprès de votre instance GitGuardian, puis génère automatiquement un token en votre nom.

Sur une machine sans interface graphique (session SSH, conteneur, shell CI), utilisez --method oob à la place : ggshield affiche l'URL d'autorisation, vous l'ouvrez sur n'importe quel appareil, vous vous connectez et collez le code affiché par le dashboard.

Vous pouvez également utiliser --method token pour vous authentifier avec un token déjà existant. Le scope minimum requis pour le token est scan.

Par défaut, le token créé aura le scope scan. Utilisez l'option --scopes pour accorder au token des scopes supplémentaires. Vous pouvez trouver la liste des scopes disponibles dans la documentation de l'API GitGuardian.

Si un token d'accès personnel valide est déjà configuré, cette commande affiche simplement un message de succès indiquant que ggshield est déjà prêt à être utilisé.

Options

  • --method [token|web|oob] : Méthode d'authentification. web ouvre un navigateur et écoute sur localhost le callback OAuth. oob (out-of-band) affiche l'URL d'autorisation et demande le code affiché par le dashboard — utile sur les machines sans interface graphique (sessions SSH, conteneurs, shells CI). token ignore OAuth et lit un token préexistant.

    Par défaut : web.

  • --instance URL : URL de l'instance auprès de laquelle s'authentifier.

  • --scopes SCOPES : Liste séparée par des espaces de scopes supplémentaires à demander en plus du scope scan par défaut.

  • --sso-url URL : URL de votre page de connexion SSO pour forcer le flux d'authentification via le SSO de votre workspace.

  • --token-name TEXT : Nom du nouveau token.

  • --lifetime DAYS : Nombre de jours avant l'expiration du token. 0 signifie que le token n'expire jamais. [x>=0]

Cette commande prend en charge toutes les options globales de ggshield.

Exemples

# start interactive web-based flow
$ ggshield auth login

# force the authentication flow through a SSO
$ ggshield auth login --sso-url https://dashboard.gitguardian.com/auth/sso/d0c192e4-0bbe-4250-ae4d-30XXXXXXXXXX

# specify the name of the personal access token about to be provisioned
$ ggshield auth login --token-name mytoken

# authenticate with an already existing token, ggshield will prompt you to enter the token
$ ggshield auth login --method=token
Enter your GitGuardian API token: <type your token and press enter>

# authenticate against a self-hosted GitGuardian instance
$ ggshield auth login --instance https://dashboard.gitguardian.mycorp.local