Aller au contenu principal

Configurer SCIM

System for Cross-domain Identity Management (SCIM) vous permet de gérer les utilisateurs et les équipes GitGuardian directement depuis votre fournisseur d'identité (IdP). En fonction des changements dans votre IdP, SCIM crée, met à jour, désactive et supprime automatiquement les utilisateurs, et crée/gère les équipes à partir des groupes IdP.

info

SCIM prend en charge le provisionnement/déprovisionnement des utilisateurs et des équipes pour Okta, Microsoft Entra ID et JumpCloud.

Prérequis​

Fonctionnalités SCIM​

GitGuardian prend en charge :

  • La gestion du cycle de vie complet des utilisateurs : provisionner, activer, désactiver et supprimer en fonction de votre IdP.
  • Le provisionnement et la gestion des équipes à partir des groupes IdP.

Préparer la configuration de SCIM​

Générer un token d'API dans GitGuardian​

Avant de configurer SCIM dans Okta, vous devez créer un token de compte de service dans GitGuardian :

  1. Dans votre dashboard GitGuardian, naviguez vers API > Service accounts.

  2. Cliquez sur Create service account.

  3. Saisissez un nom (par exemple, « IdP SCIM ») et sélectionnez les permissions suivantes :

    • members:write
    • teams:write
  4. Cliquez sur Create et copiez le token généré. Il sera utilisé dans les étapes de configuration de l'IdP.

    GitGuardian service account token

Activer SCIM dans GitGuardian​

  1. Naviguez vers Settings > Authentication dans votre workspace GitGuardian.
  2. Sous SCIM, activez l'option pour activer l'intégration SCIM. gitguardian scim enable
  3. Suivez les instructions de la section Set up SCIM in your IdP.

Une fois SCIM activé, vos utilisateurs peuvent être synchronisés avec votre IdP, et le déprovisionnement des utilisateurs peut se faire automatiquement.

Membres non liés

Il se peut que vous voyiez un message indiquant que certains utilisateurs ne sont pas liés à votre IdP. Ces utilisateurs ne seront pas gérés par SCIM.

  • Passez en revue la liste des membres : Vérifiez les utilisateurs non liés.
  • Désactivez si nécessaire : Désactivez manuellement les utilisateurs qui ne devraient pas avoir accès.

Cela se produit généralement pour les utilisateurs ajoutés avant l'activation de SCIM ou non assignés dans votre IdP. SCIM ne gère que les utilisateurs liés.

Configurer SCIM dans votre IdP​

Pour configurer SCIM, vous devrez fournir l'endpoint SCIM et configurer les paramètres SCIM correspondants dans votre IdP. Voici un aperçu de haut niveau pour les IdP courants :

Suivez les étapes spécifiques à votre IdP pour activer l'intégration SCIM. La plupart des IdP fournissent une option pour configurer SCIM via leur API ou les paramètres de leur dashboard. Vous devrez fournir :

  • Endpoint SCIM GitGuardian : https://api.gitguardian.com/v1/scim/v2 (ou https://gitguardian.mycorp.local/exposed/v1/scim/v2 pour le Self-Hosted)
  • Token d'API : Utilisez un token de service account GitGuardian avec les permissions members:write et teams:write.

La page de configuration SCIM de chaque IdP comportera des instructions spécifiques. Reportez-vous à la documentation de votre IdP pour plus de détails sur la façon de saisir l'endpoint SCIM et de configurer les identifiants d'API.

Utilisateurs de Keycloak

Le plugin scim-for-keycloak présente un bug qui provoque une confusion avec la valeur externalId, utilisée pour effectuer des requêtes SCIM vers GitGuardian, il ne fonctionnera donc pas avec notre intégration SCIM. Pour plus de détails, consultez le problème ici.

Procédures de configuration​

Okta​

Vous pouvez configurer SCIM en utilisant soit l'application GitGuardian de l'Okta Integration Network (recommandé), soit une application SAML personnalisée.

Note importante

Si des utilisateurs sont assignés à l'application Okta avant l'activation de SCIM, ils ne seront pas désactivés dans GitGuardian lorsqu'ils seront ultérieurement désassignés. Pour garantir une désactivation correcte :

  1. Dupliquez le groupe Okta d'origine (mêmes membres).
  2. Assignez le groupe dupliqué à l'application.
  3. Désassignez le groupe d'origine de l'application.

Application Okta OIN​

Si vous avez installé l'application GitGuardian depuis l'Okta Integration Network, le provisionnement SCIM est intégré et vérifié par Okta.

Fonctionnalités prises en charge​
  • Créer des utilisateurs : Provisionner de nouveaux utilisateurs d'Okta vers GitGuardian
  • Mettre à jour les attributs des utilisateurs : Synchroniser les modifications de profil des utilisateurs depuis Okta
  • Désactiver les utilisateurs : Désactiver les utilisateurs lorsqu'ils sont désassignés ou désactivés dans Okta
  • Importer des utilisateurs : Importer les utilisateurs GitGuardian existants dans Okta
  • Pousser des groupes : Synchroniser les groupes Okta en tant qu'équipes GitGuardian
Étapes de configuration​
  1. Dans Okta, naviguez vers votre application GitGuardian et allez dans l'onglet Provisioning.

  2. Sous Settings > Integration, vous verrez que l'intégration de provisionnement est développée par le partenaire GitGuardian.

    okta app provisioning tab

  3. Cliquez sur Configure API Integration.

  4. Cochez la case Enable API integration.

  5. Saisissez vos identifiants SCIM GitGuardian :

    • API Token : Collez le token de compte de service généré ci-dessus.
    • Import Groups : Cochez cette option si vous souhaitez synchroniser les groupes en tant qu'équipes.
  6. Cliquez sur Test API Credentials pour vérifier la connexion. Vous devriez voir « GitGuardian SCIM was verified successfully! ».

    okta app api integration

  7. Cliquez sur Save.

  8. Allez dans Settings > To App et activez Create Users, Update User Attributes et Deactivate Users.

    attention

    Assurez-vous de désactiver Set password when creating new users (activé par défaut).

    okta app provisioning to app

  9. Cliquez sur Save.

  10. Allez dans l'onglet Assignments pour assigner des utilisateurs.

  11. Allez dans l'onglet Push Groups pour synchroniser les groupes Okta en tant qu'équipes GitGuardian.

SCIM personnalisé Okta​

Si vous utilisez une application SAML personnalisée, suivez ces étapes pour activer SCIM :

  1. Dans Okta, naviguez vers les paramètres General de votre application GitGuardian et cochez la case Enable SCIM provisioning. okta scim enable

  2. Dans les paramètres Provisioning de votre application Okta, configurez ce qui suit :

    • Définissez le SCIM Connector Base URL sur : https://api.gitguardian.com/v1/scim/v2 (ou https://gitguardian.mycorp.local/exposed/v1/scim/v2 pour le Self-Hosted).
    • Utilisez email comme champ d'identifiant unique pour les utilisateurs. Le champ du nom d'utilisateur doit être un e-mail.
    • Activez les paramètres Push New Users, Push Profile Updates et Push Groups.
    • Sélectionnez HTTP Header pour le mode d'authentification et ajoutez le token de compte de service dans l'en-tête HTTP Authorization. okta scim connection
  3. Cochez les options Create Users, Update User Attributes et Deactivate Users sous les paramètres Provisioning to app. okta scim provisioning

  4. Enfin, dans Assignments, assignez les utilisateurs. Dans Push Groups, assignez les groupes que vous souhaitez synchroniser avec GitGuardian.

Microsoft Entra ID​

note importante

Lorsqu'un utilisateur est désassigné de l'application GitGuardian dans Entra ID, aucune requête de désactivation n'est envoyée. Pour désactiver, l'utilisateur doit être désactivé dans Entra ID.

Étapes de configuration​

  1. Dans Microsoft Entra ID (anciennement Azure Active Directory), naviguez vers la section Enterprise Applications.

  2. Sélectionnez votre application GitGuardian, puis allez dans Provisioning et définissez le Provisioning Mode sur Automatic.

  3. Saisissez les identifiants suivants :

    • Secret Token : Collez le token de compte de service généré ci-dessus.
    • Tenant URL : https://api.gitguardian.com/v1/scim/v2/?aadOptscim062020 (ou https://gitguardian.mycorp.local/exposed/v1/scim/v2/?aadOptscim062020 pour le Self-Hosted).
    attention

    Par défaut, Entra ID n'est pas conforme au standard SCIM 2.0, et la suppression des utilisateurs des équipes ne fonctionne pas. Le flag aadOptscim062020 dans le Tenant URL rend Entra ID conforme à celui-ci. Consultez la documentation de Microsoft.

  4. Dans la section Attribute Mappings sous Provision Microsoft Entra ID Users, configurez les mappages suivants pour correspondre aux exigences SCIM de GitGuardian :

    • Target Object Actions : Définissez les actions sur Create, Update et Delete pour l'objet cible.
    • Attribute Mappings :
      • userName : Mappez-le sur userPrincipalName
      • active : Mappez-le sur Switch([IsSoftDeleted], , "False", "True", "True", "False")
      • name.givenName : Mappez-le sur givenName
      • name.familyName : Mappez-le sur surname
      • externalId : Mappez-le sur mail ms intra scim attribute
  5. Dans la section Attribute Mappings sous Provision Microsoft Entra ID Groups, configurez les mappages suivants pour correspondre aux exigences SCIM de GitGuardian :

    • Target Object Actions : Définissez les actions sur Create, Update et Delete pour l'objet cible.
    • Attribute Mappings :
      • displayName : Mappez-le sur displayName
      • externalId : Mappez-le sur objectId
      • members : Mappez-le sur members ms intra scim attribute
  6. Enregistrez le mappage et synchronisez les utilisateurs et les équipes.

JumpCloud SCIM​

note importante

L'ajout automatique des utilisateurs à l'équipe All-incidents ne fonctionne pas avec JumpCloud SCIM. Pour inclure des utilisateurs dans cette équipe, vous devrez créer un groupe JumpCloud nommé « All-incidents team » et assigner les utilisateurs à ce groupe dans JumpCloud.

Configurer les paramètres SCIM de JumpCloud​

  1. Activez le toggle SCIM dans la page Authentication de GitGuardian.
  2. Ouvrez l'application SSO pour GitGuardian dans JumpCloud
  3. Sélectionnez l'onglet Identity Management.
  4. Vérifiez que l'API Type « SCIM API » est défini.
  5. Vérifiez que la méthode d'authentification est définie sur « Bearer Token »
  6. Copiez la valeur du SCIM Service Provider Endpoint dans le champ Base URL de JumpCloud.
  7. Placez le Service Account Token que vous avez généré ci-dessus dans le champ Token Key de JumpCloud.
  8. Placez un e-mail testable dans le champ Test User Email.
  9. Supprimez TOUS les mappages d'attributs d'export par défaut, et remplacez-les par les suivants
    Attribut JumpCloudAttribut SCIMType
    emailuserNameDirect
    emailexternalIdDirect
    firstnamename.givenNameDirect
    lastnamename.familyNameDirect
  10. Enregistrez et synchronisez les mappages.
  11. Cliquez sur « Test »
  12. Cliquez sur « Apply » pour activer SCIM.

Paramètres SCIM​

Une fois SCIM activé, des paramètres supplémentaires sont disponibles sur votre page des paramètres d'authentification pour contrôler le comportement des membres provisionnés via SCIM.

Permission d'appartenance à une équipe par défaut​

Ce paramètre contrôle le niveau de permission des incidents attribué aux membres synchronisés via SCIM lorsqu'ils sont ajoutés à une équipe. Les options disponibles sont :

  • Can view : Les membres peuvent voir les incidents assignés à leur équipe.
  • Can edit : Les membres peuvent voir et modifier les incidents assignés à leur équipe.

Par défaut, ce paramètre est défini sur Can edit. Vous pouvez le modifier à tout moment depuis la page des paramètres d'authentification.

Activer les notifications pour les opérations SCIM​

Lorsqu'il est activé, GitGuardian envoie des notifications chaque fois que des mises à jour SCIM affectent des utilisateurs ou des équipes dans votre workspace. Cela inclut des événements tels que :

  • Le provisionnement ou la désactivation d'utilisateurs
  • La création, la mise à jour ou la suppression d'équipes
  • Les changements d'appartenance

Ce paramètre est désactivé par défaut. Activez-le si vous souhaitez que les membres restent informés des changements liés à SCIM.

FAQ​

Puis-je utiliser SCIM pour provisionner des équipes ?

Oui, SCIM prend en charge le provisionnement des équipes pour Okta, Microsoft Entra ID et JumpCloud. Les équipes sont automatiquement créées et gérées dans votre workspace lorsque des groupes sont ajoutés ou mis à jour dans votre IdP. Assurez-vous que votre token de compte de service dispose des permissions teams:write.

Comment lier GitGuardian à mon IdP pour SCIM ?

Vous devrez configurer SCIM dans votre IdP en saisissant l'endpoint SCIM et le token d'API fournis. Chaque IdP a son propre processus pour lier les intégrations SCIM. Suivez les instructions de configuration pertinentes pour votre IdP.

GitGuardian prend-il en charge le provisionnement Just-In-Time (JIT) avec SCIM ?

SCIM prend désormais en charge le provisionnement, l'activation, la désactivation et la suppression des utilisateurs. Le provisionnement JIT via SSO est également disponible, tandis que SCIM vous donne plus de contrôle sur le cycle de vie des utilisateurs pour le provisionnement, l'activation, la désactivation et la suppression.