Gérer les demandes de modification avec des workflows de gouvernance

Les workflows de gouvernance dans Knowledge Catalog vous permettent de suivre, d'évaluer et d'auditer les demandes de modification, telles que les demandes d'accès aux produits de données, tout au long de leur cycle de vie. En tant que demandeur, approbateur ou administrateur de workflow, vous pouvez modifier les demandes en attente, approuver ou refuser l'accès pour automatiser le provisionnement, et surveiller les journaux d'approbation pour vérifier la conformité.

Avant de commencer

Pour utiliser les workflows de gouvernance, assurez-vous d'avoir activé les API requises et que les approbateurs et les administrateurs disposent des rôles et autorisations IAM (Identity and Access Management) nécessaires.

Activez l'API Dataplex si ce n'est pas déjà fait.

Rôles requis pour activer les API

Pour activer des API, vous devez disposer de l'autorisation serviceusage.services.enable. Si vous avez créé le projet, vous disposez probablement déjà de cette autorisation via le rôle Propriétaire (roles/owner). Sinon, vous pouvez l'obtenir via le rôle Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin). Découvrez comment attribuer des rôles.

Activer l'API

Rôles requis

Pour obtenir les autorisations nécessaires pour utiliser les workflows de gouvernance, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet :

Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Pour en savoir plus, consultez Rôles IAM Knowledge Catalog.

Gérer les demandes en tant que demandeur

En tant que demandeur, vous lancez des demandes de modification, par exemple pour demander l'accès à des produits de données. Après avoir envoyé une demande, vous pouvez suivre sa progression, afficher ses détails, modifier les détails des demandes en attente à l'état NEW ou supprimer les demandes avant qu'un approbateur ne les traite.

Afficher les requêtes créées

Pour lister toutes les demandes que vous avez créées, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Workflows de gouvernance de Knowledge Catalog.

    Accéder à "Workflows de gouvernance"

  2. Cliquez sur l'onglet Mes demandes pour afficher la liste de toutes vos demandes passées et en attente.

REST

Afficher les requêtes créées

Pour obtenir la liste des demandes que vous avez créées :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région où se trouve la ressource (par exemple, us-central1).
  • USER_EMAIL : votre adresse e-mail.

Méthode HTTP et URL :

GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/changeRequests?filter=author=USER_EMAIL

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "changeRequests": [
    {
      "name": "projects/PROJECT_ID/locations/LOCATION/changeRequests/sample-change-request-1",
      "uid": "123e4567-e89b-12d3-a456-426614174000",
      "createTime": "2026-07-20T10:00:00Z",
      "updateTime": "2026-07-20T10:00:00Z",
      "justification": "Proposing a new glossary term definition for business accuracy.",
      "author": "USER_EMAIL",
      "state": "NEW",
      "resource": "projects/PROJECT_ID/locations/LOCATION/glossaries/sample-glossary",
      "createGlossaryTerm": {
        "parent": "projects/PROJECT_ID/locations/LOCATION/glossaries/sample-glossary",
        "termId": "sample-term-id",
        "term": {
          "displayName": "Sample term name",
          "description": "Sample term description",
          "parent": "projects/PROJECT_ID/locations/LOCATION/glossaries/sample-glossary"
        }
      }
    }
  ]
}

Afficher une requête spécifique

Pour afficher une demande spécifique :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région où se trouve la ressource (par exemple, us-central1).
  • CHANGE_REQUEST_ID : ID de la requête.

Méthode HTTP et URL :

GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests/CHANGE_REQUEST_ID

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "name": "projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests/CHANGE_REQUEST_ID",
  "uid": "123e4567-e89b-12d3-a456-426614174000",
  "createTime": "2026-07-20T10:00:00Z",
  "updateTime": "2026-07-20T10:00:00Z",
  "justification": "Proposing a new glossary term definition for business accuracy.",
  "author": "user@example.com",
  "state": "NEW",
  "resource": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary",
  "createGlossaryTerm": {
    "parent": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary",
    "termId": "sample-term-id",
    "term": {
      "displayName": "Sample term name",
      "description": "Sample term description",
      "parent": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary"
    }
  }
}

Modifier une demande

Vous pouvez modifier les détails d'une demande en attente existante à l'état NEW. Par exemple, vous pouvez modifier la justification fournie dans la demande.

REST

Pour modifier une requête, envoyez une requête PATCH contenant le champ modifié :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région où se trouve la ressource (par exemple, us-central1).
  • CHANGE_REQUEST_ID : identifiant unique de la demande de modification.
  • NEW_JUSTIFICATION : justification mise à jour de la demande de modification.

Méthode HTTP et URL :

PATCH https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests/CHANGE_REQUEST_ID?updateMask=justification

Corps JSON de la requête :

{
  "justification": "NEW_JUSTIFICATION"
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir un code d'état indiquant le succès de l'opération (2xx), ainsi qu'une réponse vide.

Supprimer une demande

Vous ne pouvez supprimer que les requêtes dont l'état est NEW. Pour supprimer une demande, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Workflows de gouvernance de Knowledge Catalog.

    Accéder à "Workflows de gouvernance"

  2. Cliquez sur l'onglet Mes demandes.

  3. Repérez la ligne contenant votre requête cible. Si nécessaire, appliquez un filtre pour isoler l'entrée.

  4. Cliquez sur Actions, puis sur Supprimer.

REST

Pour supprimer une requête, envoyez une requête DELETE incluant l'ID de la requête :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région où se trouve la ressource (par exemple, us-central1).
  • CHANGE_REQUEST_ID : ID de la requête que vous souhaitez supprimer.

Méthode HTTP et URL :

DELETE https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests/CHANGE_REQUEST_ID

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir un code d'état indiquant le succès de l'opération (2xx), ainsi qu'une réponse vide.

Gérer les demandes en tant qu'approbateur

En tant qu'approbateur, vous examinez, évaluez et traitez les demandes de gouvernance en attente envoyées pour vos ressources de données. Lorsque vous approuvez ou refusez une demande, le système traite automatiquement la décision et envoie une notification par e-mail au demandeur, contenant les détails de la décision et votre justification.

Répertorier les demandes en attente

Pour lister les demandes en attente d'examen, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Workflows de gouvernance de Knowledge Catalog.

    Accéder à "Workflows de gouvernance"

  2. Cliquez sur l'onglet Approbations en attente pour afficher les demandes en attente d'examen. Vous pouvez filtrer les demandes par type de ressource, type de demande ou date.

REST

Pour lister les demandes d'accès en attente d'examen dans un projet et un emplacement spécifiques, envoyez une requête GET :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région où se trouve la ressource. Exemple :us-central1

Méthode HTTP et URL :

GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "changeRequests": [
    {
      "name": "projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests/sample-change-request-1",
      "uid": "123e4567-e89b-12d3-a456-426614174000",
      "createTime": "2026-07-20T10:00:00Z",
      "updateTime": "2026-07-20T10:00:00Z",
      "justification": "Proposing a new glossary term definition for business accuracy.",
      "author": "user@example.com",
      "state": "NEW",
      "resource": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary",
      "createGlossaryTerm": {
        "parent": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary",
        "termId": "sample-term-id",
        "term": {
          "displayName": "Sample term name",
          "description": "Sample term description",
          "parent": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary"
        }
      }
    }
  ]
}

Approuver une demande

Pour approuver une demande, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Workflows de gouvernance de Knowledge Catalog.

    Accéder à "Workflows de gouvernance"

  2. Cliquez sur l'onglet Approbations en attente.

  3. Localisez la ligne contenant la demande que vous souhaitez approuver.

  4. Cliquez sur Actions, puis sur Approuver.

REST

Pour approuver une demande, envoyez une requête POST à la méthode personnalisée :approve :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région où se trouve la ressource (par exemple, us-central1).
  • CHANGE_REQUEST_ID : identifiant unique de la demande de modification que vous souhaitez approuver.

Méthode HTTP et URL :

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests/CHANGE_REQUEST_ID:approve

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir un code d'état indiquant le succès de l'opération (2xx), ainsi qu'une réponse vide.

Une fois la demande traitée, son état est automatiquement mis à jour et l'entrée est déplacée vers l'onglet Journal d'approbation.

Refuser une demande

Pour refuser une demande, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Workflows de gouvernance de Knowledge Catalog.

    Accéder à "Workflows de gouvernance"

  2. Cliquez sur l'onglet Approbations en attente.

  3. Localisez la ligne contenant la demande que vous souhaitez refuser.

  4. Cliquez sur Actions, puis sur Refuser.

  5. Dans la boîte de dialogue, saisissez une justification pour le refus.

  6. Cliquez sur Refuser pour confirmer.

REST

Pour refuser une demande, envoyez une requête POST à la méthode personnalisée :reject, accompagnée d'une charge utile de justification :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région où se trouve la ressource (par exemple, us-central1).
  • CHANGE_REQUEST_ID : identifiant unique de la demande de modification que vous souhaitez refuser.
  • REJECTION_REASON : justification du refus.

Méthode HTTP et URL :

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests/CHANGE_REQUEST_ID:reject

Corps JSON de la requête :

{
  "comment": "REJECTION_REASON"
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir un code d'état indiquant le succès de l'opération (2xx), ainsi qu'une réponse vide.

En fournissant un commentaire de refus clair, vous aidez les demandeurs à comprendre la décision et à affiner leurs justifications d'accès avant de renvoyer la demande.

Gérer les demandes en tant qu'administrateur de workflow

En tant qu'administrateur de workflow, vous supervisez toutes les demandes de gouvernance dans votre organisation, surveillez l'historique des approbations et assurez la conformité. Vous pouvez lister toutes les requêtes actives et historiques, suivre les pistes d'audit pour tous les états de requête (NEW, APPROVED, REJECTED, DELETED) et supprimer n'importe quelle requête, quel que soit son état actuel.

Afficher toutes les demandes

Pour lister toutes les requêtes d'un projet et d'un emplacement spécifiques, procédez comme suit :

REST

Pour lister toutes les demandes d'accès dans un projet et un emplacement spécifiques, envoyez une requête GET :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région où se trouve la ressource. Exemple :us-central1

Méthode HTTP et URL :

GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "changeRequests": [
    {
      "name": "projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests/sample-change-request-1",
      "uid": "123e4567-e89b-12d3-a456-426614174000",
      "createTime": "2026-07-20T10:00:00Z",
      "updateTime": "2026-07-20T10:00:00Z",
      "justification": "Proposing a new glossary term definition for business accuracy.",
      "author": "user@example.com",
      "state": "NEW",
      "resource": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary",
      "createGlossaryTerm": {
        "parent": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary",
        "termId": "sample-term-id",
        "term": {
          "displayName": "Sample term name",
          "description": "Sample term description",
          "parent": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary"
        }
      }
    }
  ]
}

Suivre l'historique des approbations

Le journal d'approbation offre une visibilité d'audit de bout en bout pour les demandes d'accès aux produits de données, ce qui permet aux administrateurs et aux équipes de conformité de suivre les modifications et les accès dans tous les états.

Console

  1. Dans la console Google Cloud , accédez à la page Workflows de gouvernance.

    Accéder à "Workflows de gouvernance"

  2. Accédez à l'onglet Journal des approbations pour consulter les approbations et les refus, ainsi que l'historique des pistes d'audit.

REST

Pour lister toutes les requêtes d'un projet spécifique, envoyez une requête GET :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région où se trouve la ressource. Exemple :us-central1

Méthode HTTP et URL :

GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "changeRequests": [
    {
      "name": "projects/PROJECT_ID/locations/TARGET_LOCATION/changeRequests/sample-change-request-1",
      "uid": "123e4567-e89b-12d3-a456-426614174000",
      "createTime": "2026-07-20T10:00:00Z",
      "updateTime": "2026-07-20T10:00:00Z",
      "justification": "Proposing a new glossary term definition for business accuracy.",
      "author": "user@example.com",
      "state": "NEW",
      "resource": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary",
      "createGlossaryTerm": {
        "parent": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary",
        "termId": "sample-term-id",
        "term": {
          "displayName": "Sample term name",
          "description": "Sample term description",
          "parent": "projects/PROJECT_ID/locations/TARGET_LOCATION/glossaries/sample-glossary"
        }
      }
    }
  ]
}

Étapes suivantes