Gérer les autorisations entre l'API Cloud Healthcare et d'autres produits Google Cloud

L'API Cloud Healthcare ne dispose pas d'un accès automatique aux autres ressources Google Cloud de votre projet, telles que les buckets Cloud Storage et les ensembles de données BigQuery. Lorsque vous accédez à ces ressources, l'API Cloud Healthcare utilise agent de service appelé agent de service Cloud Healthcare.

Pour effectuer des opérations comme notifier des modifications dans sujets Cloud Pub/Sub, importer des données à partir de buckets Cloud Storage, exporter des données vers des ensembles de données BigQuery, etc., vous devez d'abord accorder au compte de service les autorisations Cloud IAM (Cloud Identity and Access Management) nécessaires pour accéder aux ressources en dehors de l'API Cloud Healthcare. Cette page décrit les autorisations requises pour diverses opérations et explique comment les accorder.

Pour en savoir plus sur l'utilisation de Cloud IAM pour configurer des autorisations dans l'API Cloud Healthcare, consultez la page Contrôle des accès.

Agent de service Cloud Healthcare

Compte de service Agent de service Cloud Healthcare est créé automatiquement après l'activation de l'API Cloud Healthcare. Son nom de membre est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com. Pour trouver le PROJECT_NUMBER de votre projet Google Cloud, consultez la page Identifier des projets.

Vous pouvez afficher des informations détaillées sur le compte de service Agent de service Cloud Healthcare, telles que les rôles qui lui ont été attribués, sur la page Identity and Access Management (Gestion de l'identité et des accès) de la console Google Cloud.

Pour en savoir plus sur l'agent de service Cloud Healthcare et son interaction avec les rôles et les autorisations Cloud IAM (Cloud Identity and Access Management), consultez la page Contrôle des accès.

Autorisations CMEK de l'ensemble de données

Vous pouvez utiliser une clé de chiffrement gérée par le client (CMEK) lorsque vous créez un ensemble de données de l'API Cloud Healthcare. Pour que le paramètre Chiffrer et déchiffrer des objets de compte de service agent de service Cloud Healthcare à l'aide de la clé CMEK, accordez au compte de service Chiffreur/Déchiffreur de CryptoKeys (roles/cloudkms.cryptoKeyEncrypterDecrypter) rôle de ressource.

Console

  1. Dans la console Google Cloud, accédez à la page IAM.

    Accéder à IAM

  2. Cochez la case Inclure les attributions de rôles fournies par Google.

  3. Assurez-vous que l'onglet Afficher par comptes principaux est sélectionné. Recherchez la ligne contenant le compte de service Agent de service Cloud Healthcare, puis cliquez sur Modifier le compte principal sur cette ligne. Le volet Modifier les autorisations s'affiche.

  4. Cliquez sur Ajouter un autre rôle.

  5. Dans le menu déroulant Sélectionner un rôle, recherchez Chiffreur/Déchiffreur de clés cryptographiques, puis cliquez dessus.

  6. Cliquez sur Enregistrer.

Autorisations Cloud Pub/Sub pour les datastores DICOM, FHIR et HL7v2.

Les modifications apportées aux datastores DICOM, FHIR et HL7v2 peuvent être envoyées à un sujet Cloud Pub/Sub. Pour en savoir plus, consultez Utiliser Cloud Pub/Sub pour les notifications

Les méthodes disponibles dans ces datastores nécessitent des autorisations supplémentaires sur le compte de service Agent de service Cloud Healthcare permettant de publier des modifications dans un sujet Cloud Pub/Sub.

Utilisez la console Google Cloud ou la gcloud CLI pour ajouter pubsub.publisher au compte de service de votre projet:

Console

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Dans la colonne Héritage correspondant au rôle, cliquez sur l'icône en forme de crayon. Le volet Modifier les autorisations s'affiche.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez le rôle Éditeur Cloud Pub/Sub.
  5. Sélectionnez le rôle, puis cliquez sur Enregistrer. Le rôle pubsub.publisher est ajouté au compte de service.

gcloud

Pour ajouter les autorisations de compte de service, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver les informations PROJECT_ID et PROJECT_NUMBER, consultez la section Identifier des projets.

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/pubsub.publisher

Configurer des autorisations Pub/Sub entre les projets

Pour publier des notifications Pub/Sub sur un sujet dans un autre projet, attribuez au compte de service Agent de service Cloud Healthcare le rôle pubsub.publisher sur le sujet. Pour en savoir plus, consultez les pages Contrôler l'accès via la console Google Cloud et Contrôler l'accès via l'API IAM.

Pour voir un exemple de publication de notifications Pub/Sub entre des projets, consultez la section Exemple de cas d'utilisation : communication entre projets.

Autorisations Cloud Storage pour les datastores DICOM

Les méthodes projects.locations.datasets.dicomStores.import et projects.locations.datasets.dicomStores.export nécessitent des autorisations supplémentaires sur le compte de service Agent de service Cloud Healthcare pour importer et exporter des données depuis et vers Cloud Storage.

Importer des données à partir de Cloud Storage

Vous pouvez utiliser la console Google Cloud ou gcloud CLI pour ajouter le rôle storage.objectViewer requis au compte de service de votre projet.

Console

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Dans la colonne Héritage correspondant au rôle, cliquez sur l'icône en forme de crayon. Le volet Modifier les autorisations s'affiche.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez le rôle Lecteur des objets Storage.
  5. Sélectionnez le rôle, puis cliquez sur Enregistrer. Le rôle storage.objectViewer est ajouté au compte de service.

gcloud

Pour ajouter les autorisations de compte de service, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver les informations PROJECT_ID et PROJECT_NUMBER, consultez la section Identifier des projets.
gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/storage.objectViewer 

Exporter des données vers Cloud Storage

Vous pouvez utiliser la console Google Cloud ou gcloud CLI pour ajouter le rôle storage.objectAdmin requis au compte de service de votre projet :

Console

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Dans la colonne Héritage correspondant au rôle, cliquez sur l'icône en forme de crayon. Le volet Modifier les autorisations s'affiche.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez le rôle Administrateur des objets Storage.
  5. Sélectionnez le rôle, puis cliquez sur Enregistrer. Le rôle storage.objectAdmin est ajouté au compte de service.

gcloud

Pour ajouter les autorisations de compte de service, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver les informations PROJECT_ID et PROJECT_NUMBER, consultez la section Identifier des projets.

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/storage.objectAdmin

Autorisations BigQuery pour les datastores DICOM

La méthode projects.locations.datasets.dicomStores.export nécessite des autorisations supplémentaires sur le compte de service Agent de service Cloud Healthcare pour exporter des métadonnées DICOM vers BigQuery. Vous devez également accorder l'accès WRITER pour l'ensemble de données BigQuery au compte de service Agent de service Cloud Healthcare.

Accorder des autorisations au compte de service "Agent de service Cloud Healthcare"

Vous pouvez utiliser la console Google Cloud ou la gcloud CLI pour ajouter les Les rôles bigquery.dataEditor et bigquery.jobUser au service de votre projet de service.

Console

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Dans la colonne Héritage correspondant au rôle, cliquez sur l'icône en forme de crayon. Le volet Modifier les autorisations s'affiche.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez les rôles Éditeur de données BigQuery et Utilisateur de tâche BigQuery.
  5. Sélectionnez chaque rôle, puis cliquez sur Enregistrer. Les rôles bigquery.dataEditor et bigquery.jobUser sont ajoutés au compte de service.

gcloud

Pour ajouter les autorisations de compte de service, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver les informations PROJECT_ID et PROJECT_NUMBER, consultez la section Identifier des projets.

  1. Attribuez le rôle roles/bigquery.dataEditor :

    Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID de votre projet Google Cloud
    • PROJECT_NUMBER : numéro de votre projet Google Cloud

    Exécutez la commande suivante :

    Linux, macOS ou Cloud Shell

    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
        --role=roles/bigquery.dataEditor

    Windows (PowerShell)

    gcloud projects add-iam-policy-binding PROJECT_ID `
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com `
        --role=roles/bigquery.dataEditor

    Windows (cmd.exe)

    gcloud projects add-iam-policy-binding PROJECT_ID ^
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com ^
        --role=roles/bigquery.dataEditor

    Vous devriez obtenir un résultat semblable à celui-ci :

    Updated IAM policy for project [PROJECT_ID].
    bindings:
    ...
    - members:
      - serviceAccount:service-NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
      role: roles/bigquery.dataEditor
    ...
    etag: ETAG
    version: VERSION
    

  2. Attribuez le rôle roles/bigquery.jobUser :

    Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID de votre projet Google Cloud
    • PROJECT_NUMBER : numéro de votre projet Google Cloud

    Exécutez la commande suivante :

    Linux, macOS ou Cloud Shell

    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
        --role=roles/bigquery.jobUser

    Windows (PowerShell)

    gcloud projects add-iam-policy-binding PROJECT_ID `
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com `
        --role=roles/bigquery.jobUser

    Windows (cmd.exe)

    gcloud projects add-iam-policy-binding PROJECT_ID ^
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com ^
        --role=roles/bigquery.jobUser

    Vous devriez obtenir un résultat semblable à celui-ci :

    Updated IAM policy for project [PROJECT_ID].
    bindings:
    ...
    - members:
      - serviceAccount:service-NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
      role: roles/bigquery.jobUser
    ...
    etag: ETAG
    version: VERSION
    

Accorder l'accès WRITER à l'ensemble de données BigQuery

Si vous avez ajouté les rôles bigquery.dataEditor et bigquery.jobUser au compte de service de votre projet, vous disposez d'un accès WRITER pour tous les ensembles de données BigQuery. Toutefois, si vous n'avez pas ajouté ces rôles et que vous avez besoin d'un accès WRITER à un seul ensemble de données BigQuery, vous pouvez n'accorder l'accès WRITER qu'à cet ensemble de données. Pour autoriser WRITER à accéder à un ensemble de données BigQuery, procédez comme suit :
  1. Accédez à la section Contrôler l'accès à un ensemble de données.
  2. À l'aide de l'une des méthodes disponibles, accordez à l'adresse e-mail de l'agent de service Cloud Healthcare l'accès WRITER à l'ensemble de données BigQuery. (Recherchez l'adresse e-mail se terminant par @gcp-sa-healthcare.iam.gserviceaccount.com.)

Par exemple, si l'adresse e-mail de votre agent de service Cloud Healthcare est service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com et que vous utilisez l'interface utilisateur Web de BigQuery, procédez comme suit :

  1. Suivez les instructions de la console.
  2. Dans le champ Ajouter des comptes principaux, saisissez service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com et sélectionnez le rôle bigquery.dataEditor.

Exporter des métadonnées DICOM vers des projets Google Cloud

Pour exporter des métadonnées DICOM d'un datastore DICOM d'un projet vers une table BigQuery d'un autre projet, vous devez ajouter le compte de service Agent de service Cloud Healthcare du projet source au projet de destination, puis accorder au compte de service les rôles bigquery.dataEditor et bigquery.jobUser dans le projet de destination.

Pour trouver le compte de service Agent de service Cloud Healthcare du projet source, procédez comme suit :

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud Console, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com. Notez cette adresse dans le projet source, car vous l'utiliserez lors des étapes suivantes.

Ajoutez le compte de service Agent de service Cloud Healthcare du projet source au projet de destination et accordez-lui les autorisations BigQuery nécessaires en procédant comme suit :

Console

  1. Ouvrez la page IAM du projet de destination dans Google Cloud Console.
  2. Cliquez sur Ajouter.
  3. Dans le champ Nouveaux membres, saisissez l'adresse du compte de service Agent de service Cloud Healthcare du projet source.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez les rôles Éditeur de données BigQuery et Utilisateur de tâche BigQuery.
  5. Sélectionnez le rôle, puis cliquez sur Enregistrer. Le compte de service Agent de service Cloud Healthcare du projet source dispose désormais des rôles bigquery.dataEditor et bigquery.jobUser sur le projet de destination.

gcloud

Pour ajouter le compte de service Agent de service Cloud Healthcare du projet source au projet de destination et accorder au compte de service les autorisations BigQuery nécessaires, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver l'ID et le numéro de projet de vos projets source et de destination, consultez la section Identifier des projets.

gcloud projects add-iam-policy-binding DESTINATION_PROJECT_ID \
    --member=serviceAccount:service-SOURCE_PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/bigquery.dataEditor
gcloud projects add-iam-policy-binding DESTINATION_PROJECT_ID \
    --member=serviceAccount:service-SOURCE_PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/bigquery.jobUser

Suivez les étapes décrites dans la section Accorder l'accès WRITER à l'ensemble de données BigQuery pour permettre au projet source d'écrire dans l'ensemble de données de destination.

Autorisations Cloud Storage pour les datastores FHIR

Les sections suivantes décrivent les méthodes FHIR qui nécessitent des des autorisations de lecture ou d'écriture sur l'agent de service Cloud Healthcare Cloud Storage.

Importer des ressources FHIR depuis Cloud Storage

projects.locations.datasets.fhirStores.import nécessite les autorisations suivantes sur l'agent de service Cloud Healthcare compte de service:

  • storage.objects.get
  • storage.objects.list

Ces autorisations sont incluses dans le rôle storage.objectViewer prédéfini.

Vous pouvez également ajouter les autorisations à un rôle personnalisé, ou être inclus dans d'autres rôles de base.

Vous pouvez utiliser la console Google Cloud ou gcloud CLI pour ajouter le rôle storage.objectViewer requis au compte de service de votre projet.

Console

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Dans la colonne Héritage correspondant au rôle, cliquez sur l'icône en forme de crayon. Le volet Modifier les autorisations s'affiche.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez le rôle Lecteur des objets Storage.
  5. Sélectionnez le rôle, puis cliquez sur Enregistrer. Le rôle storage.objectViewer est ajouté au compte de service.

gcloud

Pour ajouter les autorisations de compte de service, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver les informations PROJECT_ID et PROJECT_NUMBER, consultez la section Identifier des projets.
gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/storage.objectViewer 

Exporter des ressources FHIR vers Cloud Storage

Pour utiliser la méthode projects.locations.datasets.fhirStores.export, vous devez disposer des autorisations suivantes sur le compte de service Agent de service Cloud Healthcare :

  • storage.objects.create
  • storage.objects.delete
  • storage.objects.list

Ces autorisations sont incluses dans le rôle storage.objectAdmin prédéfini.

Vous pouvez également ajouter les autorisations à un rôle personnalisé, ou être inclus dans d'autres rôles de base.

Pour accorder le rôle storage.objectAdmin au compte de service, procédez comme suit :

Console

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Dans la colonne Héritage correspondant au rôle, cliquez sur l'icône en forme de crayon. Le volet Modifier les autorisations s'affiche.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez le rôle Créateur d'objet Storage.
  5. Sélectionnez le rôle, puis cliquez sur Enregistrer. Le rôle storage.objectAdmin est ajouté au compte de service.

gcloud

Pour ajouter les autorisations de compte de service, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver les informations PROJECT_ID et PROJECT_NUMBER, consultez la section Identifier des projets.

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/storage.objectAdmin

Lire des fichiers de filtre à partir de Cloud Storage

projects.locations.datasets.fhirStores.rollback nécessite les autorisations suivantes sur l'agent de service Cloud Healthcare compte de service pour lire les fichiers de filtre depuis Cloud Storage:

  • storage.objects.get
  • storage.objects.list

Ces autorisations sont incluses dans le rôle storage.objectViewer prédéfini.

Vous pouvez également ajouter les autorisations à un rôle personnalisé, ou elles peuvent être incluses dans d'autres rôles de base.

Pour attribuer le rôle storage.objectViewer au compte de service, procédez comme suit :

Écrire des fichiers de sortie dans Cloud Storage

La méthode projects.locations.datasets.fhirStores.rollback nécessite les autorisations suivantes sur le compte de service Agent de service Cloud Healthcare pour écrire des fichiers de sortie dans Cloud Storage :

  • storage.objects.create
  • storage.objects.delete
  • storage.objects.get
  • storage.objects.list

Ces autorisations sont incluses dans le rôle storage.objectAdmin prédéfini.

Vous pouvez également ajouter les autorisations à un rôle personnalisé, ou elles peuvent être incluses dans d'autres rôles de base.

Pour attribuer le rôle storage.objectAdmin au compte de service, procédez comme suit : procédez comme suit:

Autorisations BigQuery pour les datastores FHIR

La méthode projects.locations.datasets.fhirStores.export nécessite des autorisations supplémentaires sur le compte de service Agent de service Cloud Healthcare pour exporter des ressources FHIR vers BigQuery. Vous devez également accorder l'accès WRITER pour l'ensemble de données BigQuery au compte de service Agent de service Cloud Healthcare.

Accorder des autorisations au compte de service "Agent de service Cloud Healthcare"

Console

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Dans la colonne Héritage correspondant au rôle, cliquez sur l'icône en forme de crayon. Le volet Modifier les autorisations s'affiche.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez les rôles Éditeur de données BigQuery et Utilisateur de tâche BigQuery.
  5. Sélectionnez chaque rôle, puis cliquez sur Enregistrer. Les rôles bigquery.dataEditor et bigquery.jobUser sont ajoutés au compte de service.

gcloud

Pour ajouter les autorisations de compte de service, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver les informations PROJECT_ID et PROJECT_NUMBER, consultez la section Identifier des projets.

  1. Attribuez le rôle roles/bigquery.dataEditor :

    Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID de votre projet Google Cloud
    • PROJECT_NUMBER : numéro de votre projet Google Cloud

    Exécutez la commande suivante :

    Linux, macOS ou Cloud Shell

    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
        --role=roles/bigquery.dataEditor

    Windows (PowerShell)

    gcloud projects add-iam-policy-binding PROJECT_ID `
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com `
        --role=roles/bigquery.dataEditor

    Windows (cmd.exe)

    gcloud projects add-iam-policy-binding PROJECT_ID ^
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com ^
        --role=roles/bigquery.dataEditor

    Vous devriez obtenir un résultat semblable à celui-ci :

    Updated IAM policy for project [PROJECT_ID].
    bindings:
    ...
    - members:
      - serviceAccount:service-NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
      role: roles/bigquery.dataEditor
    ...
    etag: ETAG
    version: VERSION
    

  2. Attribuez le rôle roles/bigquery.jobUser :

    Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID de votre projet Google Cloud
    • PROJECT_NUMBER : numéro de votre projet Google Cloud

    Exécutez la commande suivante :

    Linux, macOS ou Cloud Shell

    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
        --role=roles/bigquery.jobUser

    Windows (PowerShell)

    gcloud projects add-iam-policy-binding PROJECT_ID `
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com `
        --role=roles/bigquery.jobUser

    Windows (cmd.exe)

    gcloud projects add-iam-policy-binding PROJECT_ID ^
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com ^
        --role=roles/bigquery.jobUser

    Vous devriez obtenir un résultat semblable à celui-ci :

    Updated IAM policy for project [PROJECT_ID].
    bindings:
    ...
    - members:
      - serviceAccount:service-NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
      role: roles/bigquery.jobUser
    ...
    etag: ETAG
    version: VERSION
    

Accorder l'accès WRITER à l'ensemble de données BigQuery

Si vous avez ajouté les rôles bigquery.dataEditor et bigquery.jobUser au compte de service de votre projet, vous disposez d'un accès WRITER pour tous les ensembles de données BigQuery. Toutefois, si vous n'avez pas ajouté ces rôles et que vous avez besoin d'un accès WRITER à un seul ensemble de données BigQuery, vous pouvez n'accorder l'accès WRITER qu'à cet ensemble de données. Pour autoriser WRITER à accéder à un ensemble de données BigQuery, procédez comme suit :
  1. Accédez à la section Contrôler l'accès à un ensemble de données.
  2. À l'aide de l'une des méthodes disponibles, accordez à l'adresse e-mail de l'agent de service Cloud Healthcare l'accès WRITER à l'ensemble de données BigQuery. (Recherchez l'adresse e-mail se terminant par @gcp-sa-healthcare.iam.gserviceaccount.com.)

Par exemple, si l'adresse e-mail de votre agent de service Cloud Healthcare est service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com et que vous utilisez l'interface utilisateur Web de BigQuery, procédez comme suit :

  1. Suivez les instructions de la console.
  2. Dans le champ Ajouter des comptes principaux, saisissez service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com et sélectionnez le rôle bigquery.dataEditor.

Autorisations Cloud Storage pour les datastores HL7v2

Les méthodes projects.locations.datasets.hl7V2Stores.import et projects.locations.datasets.hl7V2Stores.export nécessitent des autorisations supplémentaires sur le compte de service Agent de service Cloud Healthcare pour importer et exporter des messages HL7v2 depuis et vers Cloud Storage.

Déterminez les autorisations requises par le compte de service en fonction des actions effectuées par l'application :

  • Si l'application importe des messages HL7v2 depuis Cloud Storage vers un magasin HL7v2, le compte de service nécessite les autorisations storage.objects.get et storage.objects.list, incluses dans le rôle storage.objectViewer.
  • Si l'application exporte des messages HL7v2 depuis un magasin HL7v2 vers Cloud Storage, le compte de service nécessite les autorisations storage.objects.create, storage.objects.delete et storage.objects.list, incluses dans le rôle storage.objectCreator.

Importer des messages HL7v2 à partir de Cloud Storage

Vous pouvez utiliser la console Google Cloud ou gcloud CLI pour ajouter le rôle storage.objectViewer requis au compte de service de votre projet.

Console

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Dans la colonne Héritage correspondant au rôle, cliquez sur l'icône en forme de crayon. Le volet Modifier les autorisations s'affiche.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez le rôle Lecteur des objets Storage.
  5. Sélectionnez le rôle, puis cliquez sur Enregistrer. Le rôle storage.objectViewer est ajouté au compte de service.

gcloud

Pour ajouter les autorisations de compte de service, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver les informations PROJECT_ID et PROJECT_NUMBER, consultez la section Identifier des projets.
gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/storage.objectViewer 

Exporter des messages HL7v2 vers Cloud Storage

Vous pouvez utiliser la console Google Cloud ou gcloud CLI pour ajouter le rôle storage.objectCreator requis au compte de service de votre projet :

Console

  1. Assurez-vous d'avoir activé l'API Cloud Healthcare.
  2. Sur la page IAM de la console Google Cloud, vérifiez que le rôle Agent de service Healthcare apparaît dans la colonne Rôle du compte de service Agent de service Cloud Healthcare. L'identifiant de compte de service est service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Dans la colonne Héritage correspondant au rôle, cliquez sur l'icône en forme de crayon. Le volet Modifier les autorisations s'affiche.
  4. Cliquez sur Ajouter un autre rôle, puis recherchez le rôle Créateur d'objet Storage.
  5. Sélectionnez le rôle, puis cliquez sur Enregistrer. Le rôle storage.objectCreator est ajouté au compte de service.

gcloud

Pour ajouter les autorisations de compte de service, exécutez la commande gcloud projects add-iam-policy-binding. Pour trouver les informations PROJECT_ID et PROJECT_NUMBER, consultez la section Identifier des projets.

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/storage.objectCreator