LDAP

Le connecteur LDAP vous permet de configurer un serveur LDAP générique.

Versions compatibles

Ce connecteur est compatible avec les versions 2 et 3 de LDAP.

Avant de commencer

Avant d'utiliser le connecteur LDAP, effectuez les tâches suivantes :

  • Dans votre projet Google Cloud :
    • Assurez-vous que la connectivité réseau est configurée. Pour en savoir plus sur les schémas de réseau, consultez Connectivité réseau.
    • Attribuez le rôle IAM roles/connectors.admin à l'utilisateur qui configure le connecteur.
    • Attribuez les rôles IAM suivants au compte de service que vous souhaitez utiliser pour le connecteur :
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

      Un compte de service est un type spécial de compte Google destiné à représenter un utilisateur non humain qui doit s'authentifier et obtenir les autorisations permettant d'accéder aux données des API Google. Si vous ne possédez pas de compte de service, vous devez en créer un. Pour en savoir plus, consultez Créer un compte de service.

    • Activez les services suivants :
      • secretmanager.googleapis.com (API Secret Manager)
      • connectors.googleapis.com (API Connectors)

      Pour savoir comment activer des services, consultez Activer des services.

    Si ces services ou autorisations n'ont pas encore été activés pour votre projet, vous êtes invité à les activer au moment de configurer le connecteur.

Configurer le connecteur

Une connexion est propre à une source de données. Cela signifie que si vous disposez de nombreuses sources de données, vous devez créer une connexion distincte pour chacune d'elles. Pour créer une connexion, procédez comme suit :

  1. Dans la console Cloud, accédez à la page Connecteurs d'intégration > Connexions, puis sélectionnez ou créez un projet Google Cloud.

    Accéder à la page "Connexions"

  2. Cliquez sur + CRÉER pour ouvrir la page Créer une connexion.
  3. Dans la section Emplacement, choisissez l'emplacement de la connexion.
    1. Région : sélectionnez un emplacement dans la liste déroulante.

      Pour obtenir la liste de toutes les régions disponibles, consultez Emplacements.

    2. Cliquez sur SUIVANT.
  4. Dans la section Détails de connexion, procédez comme suit :
    1. Connecteur : sélectionnez LDAP dans la liste déroulante des connecteurs disponibles.
    2. Version du connecteur : sélectionnez la version du connecteur dans la liste déroulante des versions disponibles.
    3. Dans le champ Nom de connexion, indiquez le nom de l'instance de connexion.

      Les noms de connexion doivent répondre aux critères suivants :

      • Ils peuvent contenir des lettres, des chiffres ou des traits d'union.
      • Les lettres doivent être en minuscules.
      • Ils doivent commencer par une lettre et se terminer par une lettre ou un chiffre.
      • Ils ne peuvent pas dépasser 49 caractères.
    4. (Facultatif) Saisissez une description de l'instance de connexion.
    5. (Facultatif) Activez Cloud Logging, puis sélectionnez un niveau de journalisation. Par défaut, le niveau de journalisation est défini sur Error.
    6. Compte de service : sélectionnez un compte de service disposant des rôles requis.
    7. (Facultatif) Configurez les paramètres des nœuds de connexion :

      • Nombre minimal de nœuds : saisissez le nombre minimal de nœuds de connexion.
      • Nombre maximal de nœuds : saisissez le nombre maximal de nœuds de connexion.

      Un nœud est une unité (ou instance répliquée) de connexion qui traite des transactions. Pour traiter davantage de transactions pour une connexion, vous devez disposer de plus de nœuds. À l'inverse, moins de nœuds sont nécessaires si une connexion traite moins de transactions. Pour comprendre comment les nœuds affectent la tarification de votre connecteur, consultez Tarifs des nœuds de connexion. Si vous ne saisissez aucune valeur, le nombre minimal de nœuds est défini par défaut sur 2 (pour améliorer la disponibilité) et le nombre maximal de nœuds sur 50.

    8. DN de base : partie de base du nom distinctif, utilisée pour limiter les résultats à des sous-arborescences spécifiques.
    9. Mécanisme d'authentification : mécanisme d'authentification à utiliser lors de la connexion au serveur LDAP.
    10. Suivre les références : indique si vous souhaitez suivre les références LDAP renvoyées par le serveur LDAP.
    11. GUID convivial : indique s'il faut renvoyer les valeurs d'attributs GUID dans un format lisible.
    12. SID convivial : indique s'il faut renvoyer des valeurs d'attributs SID dans un format lisible.
    13. Version LDAP : version LDAP utilisée pour se connecter au serveur et communiquer avec lui.
    14. Niveau d'accès : limite la recherche à l'ensemble de la sous-arborescence (BaseDN et tous ses descendants), à un seul niveau (BaseDN et ses descendants directs) ou à l'objet de base (BaseDN uniquement).
    15. (Facultatif) Cliquez sur + AJOUTER UNE ÉTIQUETTE pour ajouter une étiquette à la connexion sous la forme d'une paire clé/valeur.
    16. Cliquez sur SUIVANT.
  5. Dans la section Destinations, saisissez des informations sur l'hôte distant (système backend) auquel vous souhaitez vous connecter.
    1. Type de destination : sélectionnez un type de destination.
      • Pour spécifier le nom d'hôte ou l'adresse IP de la destination, sélectionnez Adresse de l'hôte, puis saisissez l'adresse dans le champ Hôte 1.
      • Pour établir une connexion privée, sélectionnez Rattachement de point de terminaison, puis choisissez le rattachement requis dans la liste Rattachement de point de terminaison.

      Si vous souhaitez établir une connexion publique à vos systèmes backend avec une sécurité supplémentaire, vous pouvez envisager de configurer des adresses IP sortantes statiques pour vos connexions, puis de configurer vos règles de pare-feu pour ajouter à la liste d'autorisation uniquement les adresses IP statiques spécifiques.

      Pour saisir d'autres destinations, cliquez sur + AJOUTER UNE DESTINATION.

    2. Cliquez sur SUIVANT.
  6. Dans la section Authentification, saisissez les informations d'authentification.
    1. Sélectionnez un type d'authentification, puis saisissez les informations appropriées.

      Le type d'authentification suivant est compatible avec la connexion LDAP :

      • Nom d'utilisateur et mot de passe
    2. Pour savoir comment configurer ce type d'authentification, consultez Configurer l'authentification.

    3. Cliquez sur SUIVANT.
  7. Vérifier : vérifiez vos informations de connexion et d'authentification.
  8. Cliquez sur Créer.

Configurer l'authentification

Le connecteur LDAP est compatible avec le type d'authentification de base. Si votre destination ou votre instance LDAP est hébergée sur une VM ou sur un réseau privé, créez un rattachement de point de terminaison. Pour en savoir plus sur l'installation et la configuration de LDAP, consultez Installation de LDAP.

  • Nom d'utilisateur et mot de passe
    • Nom d'utilisateur : nom d'utilisateur pour le connecteur
    • Mot de passe : secret Secret Manager contenant le mot de passe associé au connecteur

Type de connexion avec authentification de base

Le tableau suivant présente des exemples de valeurs de configuration pour le type de connexion avec authentification de base.
Nom du champ Détails
Région us-central1
Connecteur LDAP
Version du connecteur 1
Nom de connexion google-ldap-basicauth-conn
Compte de service SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
DN de base CN=Users,DC=NAME,DC=com
Mécanisme d'authentification SIMPLE
Version LDAP 3
Niveau d'accès WHOLESUBTREE
Niveau de verbosité 5
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Nom d'utilisateur NOM_UTILISATEUR
Mot de passe MOT DE PASSE
Version du secret 1

Entités, opérations et actions

Tous les connecteurs Integration Connectors fournissent une couche d'abstraction pour les objets de l'application connectée. Vous ne pouvez accéder aux objets d'une application que par le biais de cette abstraction. L'abstraction vous est présentée en tant qu'entités, opérations et actions.

  • Entité : une entité peut être considérée comme un objet ou un ensemble de propriétés dans l'application ou le service connectés. La définition d'une entité diffère d'un connecteur à l'autre. Par exemple, dans un connecteur de base de données, les tables sont les entités, alors que dans un connecteur de serveur de fichiers, ce sont les dossiers, et dans un connecteur de système de messagerie, ce sont les files d'attente.

    Toutefois, il est possible qu'un connecteur n'accepte ou ne possède aucune entité. Dans ce cas, la liste Entities est vide.

  • Opération : une opération est l'activité que vous pouvez effectuer sur une entité. Voici les opérations possibles :

    Lorsque vous sélectionnez une entité dans la liste proposée, cela génère une liste d'opérations disponibles pour l'entité. Pour obtenir une description détaillée des opérations, consultez les opérations d'entité de la tâche "Connecteurs". Cependant, si un connecteur n'accepte pas l'une des opérations d'entité, cette opération non compatible ne figure pas dans la liste Operations.

  • Action : une action est une fonction de première classe mise à la disposition de l'intégration par le biais de l'interface du connecteur. Une action vous permet de modifier une ou plusieurs entités, et varie d'un connecteur à l'autre. Normalement, une action comporte des paramètres d'entrée et un paramètre de sortie. Toutefois, il est possible qu'un connecteur n'accepte aucune action, auquel cas la liste Actions est vide.

Actions

Cette section liste toutes les actions compatibles avec le connecteur LDAP.

Action MoveToDN

Cette action déplace des objets d'un DN (nom distinctif) vers un autre.

Paramètres d'entrée de l'action MoveToDN

Nom du paramètre Type de données Obligatoire Description
DN Chaîne Oui DN actuel de l'objet à déplacer sur le serveur LDAP. Par exemple : CN=Google Cloud,OU=Bangalore,OU=India,OU=Domain_Users,DC=test-ldap,DC=com.
NewParentDN Chaîne Oui Nouveau DN parent de l'objet. Par exemple : OU=Mysore,OU=India,OU=Domain_Users,DC=test-ldap,DC=com.

Paramètres de sortie de l'action DownloadFile

Cette action renvoie l'état 200 (OK) avec un corps de réponse indiquant les résultats.

Pour savoir comment configurer l'action MoveToDN, consultez Exemples d'actions.

Action GetAttributes

Cette action récupère tous les noms et valeurs d'attributs d'un DN.

Paramètres d'entrée de l'action GetAttributes

Nom du paramètre Type de données Obligatoire Description
DN Chaîne Oui Nom distinctif de l'objet LDAP souhaité. Si aucune valeur n'est spécifiée, le BaseDN de la chaîne de connexion est utilisé.

Paramètres de sortie de l'action GetAttributes

Cette action renvoie l'état 200 (OK) avec un corps de réponse indiquant les résultats.

Pour savoir comment configurer l'action GetAttributes, consultez Exemples d'actions.

Action AddMembersToGroup

Cette action ajoute des utilisateurs à un groupe.

Paramètres d'entrée de l'action GetAttributes

Nom du paramètre Type de données Obligatoire Description
GroupId Chaîne Oui ID du groupe auquel vous souhaitez ajouter les utilisateurs.
UserDNs Chaîne Oui Agrégat UserDNs ou table temporaire contenant le DN des utilisateurs à ajouter au groupe. La valeur doit correspondre au DN de l'enregistrement utilisateur.

Paramètres de sortie de l'action AddMembersToGroup

Cette action renvoie l'état 200 (OK) avec un corps de réponse indiquant les résultats.

Pour savoir comment configurer l'action AddMembersToGroup, consultez Exemples d'actions.

Exemples d'actions

Cette section explique comment effectuer certaines actions dans ce connecteur.

Exemple : Déplacer un objet d'un DN vers un autre

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action MoveToDN, puis cliquez sur OK.
  3. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value :
    {
    "DN": "CN=Google Cloud,OU=Bangalore,OU=India,OU=Domain_Users,DC=test-ldap,DC=com",
    "NewParentDN": "OU=Mysore,OU=India,OU=Domain_Users,DC=test-ldap,DC=com"
    }
      
  4. Cet exemple déplace un objet d'un DN vers un autre. Si l'action aboutit, le paramètre de réponse connectorOutputPayload de la tâche "Connecteurs" aura une valeur semblable à la suivante :

    [{
    "Success": null,
    "result": "[ok]",
    "modified": "true",
    "rss:title": "The movement was successful.",
    "resultcode": "0"
    }]

Exemple : Récupérer les attributs d'un DN

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action GetAttributes, puis cliquez sur OK.
  3. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value :
    {
    "DN": "CN=Bangalore user,OU=Bangalore,OU=India,OU=Domain_Users,DC=test-ldap,DC=com"
    }
  4. Cet exemple récupère l'attribut du DN spécifié. Si l'action aboutit, le paramètre de réponse connectorOutputPayload de la tâche "Connecteurs" aura une valeur semblable à la suivante :

    [{
        "AttributeName": "_op",
        "AttributeValue": "ldapadoGetAttributes"
      }, {
        "AttributeName": "usncreated",
        "AttributeValue": "36006"
      }, {
        "AttributeName": "countrycode",
        "AttributeValue": "0"
      }, {
        "AttributeName": "badpwdcount",
        "AttributeValue": "0"
      }, {
        "AttributeName": "dn",
        "AttributeValue": ""
      }, {
        "AttributeName": "dn",
        "AttributeValue": "CN=Bangalore user,OU=Bangalore,OU=India,OU=Domain_Users,DC=test-ldap,DC=com"
      }, {
        "AttributeName": "whenchanged",
        "AttributeValue": "20230913125155.0Z"
      }, {
        "AttributeName": "objectclass",
        "AttributeValue": "top"
      }, {
        "AttributeName": "objectclass",
        "AttributeValue": "person"
      }, {
        "AttributeName": "objectclass",
        "AttributeValue": "organizationalPerson"
      }, {
        "AttributeName": "objectclass",
        "AttributeValue": "user"
      }, {
        "AttributeName": "primarygroupid",
        "AttributeValue": "513"
      }, {
        "AttributeName": "givenname",
        "AttributeValue": "Bangalore"
      }, {
        "AttributeName": "dscorepropagationdata",
        "AttributeValue": "16010101000001.0Z"
      }, {
        "AttributeName": "sn",
        "AttributeValue": "user"
      }, {
        "AttributeName": "useraccountcontrol",
        "AttributeValue": "512"
      }, {
        "AttributeName": "cn",
        "AttributeValue": "Bangalore user"
      }, {
        "AttributeName": "codepage",
        "AttributeValue": "0"
      }, {
        "AttributeName": "accountexpires",
        "AttributeValue": "9223372036854775807"
      }, {
        "AttributeName": "userprincipalname",
        "AttributeValue": "user-1@test-l
      }]  
      

Exemple : Ajouter des utilisateurs à un groupe

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action AddMembersToGroup, puis cliquez sur OK.
  3. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value :
    {
    "GroupId": "1|CN=Cert Publishers,CN=Users,DC=test-ldap,DC=com",
    "UserDNs": "[{\"DN\":\"CN=Google AI,CN=Users,DC=test-ldap,DC=com;CN=Guest,CN=Users,DC=test-ldap,DC=com\"}]"
    }
  4. Cet exemple ajoute un DN utilisateur au groupe dont l'ID est 1|CN=Cert Publishers,CN=Users,DC=test-ldap,DC=com. Si l'action aboutit, le paramètre de réponse connectorOutputPayload de la tâche "Connecteurs" aura une valeur semblable à la suivante :

    [{
      "Success": "True"
      }]

Exemples d'opérations d'entité

Exemple : Lister des utilisateurs

Cet exemple liste tous les utilisateurs de l'entité User.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez User dans la liste Entity.
  3. Sélectionnez l'opération LIST, puis cliquez sur OK.
  4. Vous pouvez également filtrer l'ensemble de résultats. Pour filtrer l'ensemble de résultats, dans la section Entrée de la tâche de la tâche Connecteurs, vous pouvez définir filterClause selon vos besoins.

    Par exemple, si vous définissez la clause de filtre sur Id='1|CN=admin,CN=Users,DC=test-ldap,DC=com', vous n'affichez que les enregistrements dont l'ID correspond à ce critère.

Exemple : Récupérer un enregistrement utilisateur

Cet exemple récupère les détails d'un utilisateur à partir de l'entité User.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez User dans la liste Entity.
  3. Sélectionnez l'opération GET, puis cliquez sur OK.
  4. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur EntityId, puis saisissez 1|CN=admin,CN=Users,DC=test-ldap,DC=com dans le champ Valeur par défaut.

    Ici, 1|CN=admin,CN=Users,DC=test-ldap,DC=com est l'une des valeurs de clé primaire de l'entité User.

Exemple : Créer un enregistrement utilisateur

Cet exemple crée un enregistrement utilisateur dans l'entité User.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez User dans la liste Entity.
  3. Sélectionnez l'opération Create, puis cliquez sur OK.
  4. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value :
    {
    "RDN": "CN=MPATAI",
    "ObjectClass": "top;person;organizationalPerson;user"
    }

    Si l'intégration aboutit, le champ connectorOutputPayload de la tâche "Connecteurs" aura une valeur semblable à la suivante :

     {
    "Id": "1|CN=MPATAI,CN=Users,DC=test-ldap,DC=com"
    }

Exemple : Mettre à jour une demande

Cet exemple met à jour l'enregistrement utilisateur spécifié dans l'entité User.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez User dans la liste Entity.
  3. Sélectionnez l'opération Update, puis cliquez sur OK.
  4. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value :
    {
            "PostalCode": "560040"
          }
          
  5. Cliquez sur entityId, puis saisissez 1|CN=admin,CN=Users,DC=test-ldap,DC=com dans le champ Valeur par défaut.

    Sinon, au lieu de spécifier entityId, vous pouvez définir filterClause sur 1|CN=admin,CN=Users,DC=test-ldap,DC=com.

    Si l'intégration aboutit, le champ connectorOutputPayload de la tâche "Connecteurs" aura une valeur semblable à la suivante :

    {
    "Id": "1|CN=admin,CN=Users,DC=test-ldap,DC=com"
    }
          

Exemple : Supprimer un enregistrement utilisateur

Cet exemple supprime un enregistrement utilisateur de l'entité User.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez User dans la liste Entity.
  3. Sélectionnez l'opération Delete, puis cliquez sur OK.
  4. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez 1|CN=admin,CN=Users,DC=test-ldap,DC=com dans le champ Valeur par défaut.
  5. Si l'entité User comporte des clés primaires composites, vous pouvez définir filterClause au lieu de spécifier entityId. Exemple : Id='1|CN=admin,CN=Users,DC=test-ldap,DC=com' and DN='CN=admin,CN=Users,DC=test-ldap,DC=com'

Créer des connexions à l'aide de Terraform

Vous pouvez utiliser la ressource Terraform pour créer une connexion.

Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez Commandes Terraform de base.

Pour afficher un exemple de modèle Terraform permettant de créer une connexion, consultez Exemple de modèle.

Lorsque vous créez cette connexion à l'aide de Terraform, vous devez définir les variables suivantes dans votre fichier de configuration Terraform :

Nom du paramètre Type de données Obligatoire Description
base_dn CHAÎNE Oui Partie de base du nom distinctif, utilisée pour limiter les résultats à des sous-arborescences spécifiques.
auth_mechanism ENUM Oui Mécanisme d'authentification à utiliser lors de la connexion au serveur LDAP. Valeurs acceptées : SIMPLE, DIGESTMD5 et NEGOTIATE.
follow_referrals BOOLÉEN Non Indique si vous souhaitez suivre les références LDAP renvoyées par le serveur LDAP.
friendly_guid BOOLÉEN Non Indique si les valeurs d'attribut GUID doivent être renvoyées dans un format lisible.
friendly_sid BOOLÉEN Non Indique s'il faut renvoyer des valeurs d'attributs SID dans un format lisible.
ldapversion ENUM Oui Version LDAP utilisée pour se connecter au serveur et communiquer avec lui. Valeurs acceptées : 2 et 3.
scope ENUM Oui Limite la recherche à l'ensemble de la sous-arborescence (BaseDN et tous ses descendants), à un seul niveau (BaseDN et ses descendants directs) ou à l'objet de base (BaseDN uniquement). Valeurs acceptées : WHOLESUBTREE, SINGLELEVEL et BASEOBJECT.

Utiliser la connexion LDAP dans une intégration

Une fois la connexion créée, elle devient disponible dans Apigee Integration et Application Integration. Vous pouvez utiliser la connexion dans une intégration au moyen de la tâche "Connecteurs".

  • Pour savoir comment créer et utiliser la tâche "Connecteurs" dans Apigee Integration, consultez Tâche "Connecteurs".
  • Pour savoir comment créer et utiliser la tâche "Connecteurs" dans Application Integration, consultez Tâche "Connecteurs".

Demander de l'aide à la communauté Google Cloud

Vous pouvez publier vos questions et discuter de ce connecteur sur les forums Cloud de la communauté Google Cloud.

Étapes suivantes