Berechtigungen zwischen der Cloud Healthcare API und anderen Google Cloud-Produkten verwalten

Die Cloud Healthcare API hat keinen automatischen Zugriff auf andere Google Cloud-Ressourcen in Ihrem Projekt, z. B. Cloud Storage-Buckets und BigQuery-Datasets. Beim Zugriff auf diese Ressourcen verwendet die Cloud Healthcare API einen Dienst-Agenten namens Cloud Healthcare Service Agent.

Zur Durchführung von Vorgänge wie das Benachrichtigen von Pub/Sub-Themen über Änderungen, das Importieren von Daten aus Cloud Storage-Buckets, das Exportieren von Daten in BigQuery-Datasets usw. müssen Sie dem Dienstkonto zuerst die für den Zugriff auf die Identitäts- und Zugriffsverwaltung (IAM) erforderlichen Berechtigungen für den Zugriff auf Ressourcen außerhalb der Cloud Healthcare API. Auf dieser Seite wird beschrieben, welche Berechtigungen für verschiedene Vorgänge erforderlich sind und wie sie erteilt werden.

Weitere Informationen zum Konfigurieren von Berechtigungen innerhalb der Cloud Healthcare API finden Sie unter Zugriffssteuerung.

Der Cloud Healthcare-Dienst-Agent

Das Dienstkonto Cloud Healthcare-Dienst-Agent wird automatisch erstellt, nachdem Sie die Cloud Healthcare API aktiviert haben. Der Mitgliedsname lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com. Informationen zum PROJECT_NUMBER für Ihr Google Cloud-Projekt finden Sie unter Projekte identifizieren.

Ausführliche Informationen zum Dienstkonto des Cloud Healthcare-Dienst-Agents, z. B. die ihm zugewiesenen Rollen, finden Sie auf der Seite Identitäts- und Zugriffsverwaltung in der Google Cloud Console.

Weitere Informationen zum Cloud Healthcare-Dienst-Agent und zu dessen Interaktion mit Rollen und Berechtigungen von Identity and Access Management (IAM) finden Sie unter Zugriffssteuerung.

Dataset-CMEK-Berechtigungen

Sie können einen vom Kunden verwalteten Verschlüsselungsschlüssel (Customer-Managed Encryption Key, CMEK) verwenden, wenn Sie einen Cloud Healthcare API-Datensatz erstellen. Damit das Dienstkonto des Cloud Healthcare-Dienst-Agents Objekte mit dem CMEK-Schlüssel verschlüsseln und entschlüsseln kann, weisen Sie dem Dienstkonto die Rolle CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter) zu.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite IAM.

    IAM aufrufen

  2. Klicken Sie auf das Kästchen Von Google bereitgestellte Rollenzuweisungen einschließen.

  3. Achten Sie darauf, dass der Tab Nach Hauptkonten filtern ausgewählt ist. Suchen Sie die Zeile mit dem Dienstkonto Cloud Healthcare-Dienst-Agent und klicken Sie in dieser Zeile auf Hauptkonto bearbeiten. Der Bereich Berechtigungen bearbeiten wird angezeigt.

  4. Klicken Sie auf Weitere Rolle hinzufügen.

  5. Wählen Sie im Drop-down-Menü Rolle auswählen die Option CryptoKey-Verschlüsseler/Entschlüsseler aus.

  6. Klicken Sie auf Speichern.

Pub/Sub-Berechtigungen werden von DICOM, FHIR und HL7v2 gespeichert.

Änderungen in DICOM-, FHIR- und HL7v2-Speichern können an ein Pub/Sub-Thema gesendet werden. Weitere Informationen finden Sie unter Cloud Pub/Sub für Benachrichtigungen verwenden.

Die Methoden in diesen Speichern benötigen zusätzliche Berechtigungen für das Dienstkonto Cloud Healthcare-Dienst-Agent, um Änderungen an einem Pub/Sub-Thema zu veröffentlichen.

Verwenden Sie die Google Cloud Console oder die gcloud CLI, um dem Dienstkonto Ihres Projekts die Rolle pubsub.publisher hinzuzufügen:

Console

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare Service Agent angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Pub/Sub-Publisher.
  5. Wählen Sie die Rolle aus und klicken Sie auf Speichern. Die Rolle pubsub.publisher wird dem Dienstkonto hinzugefügt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um die Dienstkontoberechtigungen hinzuzufügen. Wie Sie die PROJECT_ID und PROJECT_NUMBER finden, erfahren Sie unter Projekte identifizieren.

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

Pub/Sub-Berechtigungen zwischen Projekten konfigurieren

Wenn Sie Pub/Sub-Benachrichtigungen in einem anderen Projekt veröffentlichen möchten, weisen Sie dem Dienstkonto Cloud Healthcare Service Agent die Rolle pubsub.publisher für das Thema zu. Weitere Informationen finden Sie unter Zugriff über die Google Cloud Console steuern und Zugriff über die IAM API steuern.

Ein Beispiel für das Veröffentlichen von Pub/Sub-Benachrichtigungen zwischen Projekten finden Sie unter Beispielanwendungsfall: Projektübergreifende Kommunikation.

Cloud Storage DICOM-Speicher-Berechtigungen

Die Methoden projects.locations.datasets.dicomStores.import und projects.locations.datasets.dicomStores.export erfordern zusätzliche Berechtigungen für das Dienstkonto Cloud Healthcare-Dienst-Agent, um Daten aus Cloud Storage zu importieren und sie dahin zu exportieren.

Daten aus Cloud Storage importieren

Sie können die Google Cloud Console oder die gcloud CLI verwenden, um dem Dienstkonto Ihres Projekts die erforderliche storage.objectViewer-Rolle hinzuzufügen.

Console

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare-Dienst-Agents angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Betrachter.
  5. Wählen Sie die Rolle aus und klicken Sie auf Speichern. Die Rolle storage.objectViewer wird dann dem Dienstkonto hinzugefügt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um die Dienstkontoberechtigungen hinzuzufügen. Wie Sie die PROJECT_ID und PROJECT_NUMBER finden, erfahren Sie unter Projekte identifizieren.
gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/storage.objectViewer 

Daten in Cloud Storage exportieren

Sie können die Google Cloud Console oder die gloud CLI verwenden, um dem Dienstkonto Ihres Projekts die erforderliche storage.objectAdmin-Rolle hinzuzufügen.

Console

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare-Dienst-Agents angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Administrator.
  5. Wählen Sie die Rolle aus und klicken Sie auf Speichern. Die Rolle storage.objectAdmin wird dann dem Dienstkonto hinzugefügt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um die Dienstkontoberechtigungen hinzuzufügen. Wie Sie die PROJECT_ID und PROJECT_NUMBER finden, erfahren Sie unter Projekte identifizieren.

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

BigQuery-Berechtigungen für DICOM-Speicher

Die Methode projects.locations.datasets.dicomStores.export erfordert zusätzliche Berechtigungen für das Dienstkonto Cloud Healthcare-Dienst-Agent, um DICOM-Metadaten nach BigQuery zu exportieren. Sie müssen dem Dienstkonto des Cloud Healthcare-Dienst-Agents außerdem WRITER-Zugriff auf das BigQuery-Dataset gewähren.

Berechtigungen für das Dienstkonto des Cloud Healthcare-Dienst-Agents erteilen

Sie können die Google Cloud Console oder die gcloud CLI verwenden, um dem Dienstkonto Ihres Projekts die erforderlichen Rollen bigquery.dataEditor und bigquery.jobUser hinzuzufügen.

Console

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare-Dienst-Agents angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach den Rollen BigQuery-Datenbearbeiter und BigQuery-Jobnutzer.
  5. Wählen Sie die einzelnen Rollen aus und klicken Sie auf Speichern. Die Rollen bigquery.dataEditor und bigquery.jobUser werden dem Dienstkonto hinzugefügt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um die Dienstkontoberechtigungen hinzuzufügen. Wie Sie die PROJECT_ID und PROJECT_NUMBER finden, erfahren Sie unter Projekte identifizieren.

  1. Weisen Sie die Rolle roles/bigquery.dataEditor zu:

    Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

    • PROJECT_ID ist die ID Ihres Google Cloud-Projekts
    • PROJECT_NUMBER: die Nummer Ihres Google Cloud-Projekts

    Führen Sie folgenden Befehl aus:

    Linux, macOS oder 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

    Sie sollten eine Antwort ähnlich der folgenden erhalten:

    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. Weisen Sie die Rolle roles/bigquery.jobUser zu:

    Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

    • PROJECT_ID ist die ID Ihres Google Cloud-Projekts
    • PROJECT_NUMBER: die Nummer Ihres Google Cloud-Projekts

    Führen Sie folgenden Befehl aus:

    Linux, macOS oder 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

    Sie sollten eine Antwort ähnlich der folgenden erhalten:

    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
    

WRITER-Zugriff auf das BigQuery-Dataset gewähren

Wenn Sie dem Dienstkonto Ihres Projekts die Rollen bigquery.dataEditor und bigquery.jobUser hinzugefügt haben, erhalten Sie Zugriff auf WRITER für alle BigQuery-Datasets. Wenn Sie diese Rollen jedoch nicht hinzugefügt haben und Zugriff auf WRITER für ein einzelnes BigQuery-Dataset benötigen, können Sie nur WRITER-Zugriff für dieses Dataset gewähren. Führen Sie die folgenden Schritte aus, um WRITER Zugriff auf ein BigQuery-Dataset zu gewähren:
  1. Gehen Sie zu Zugriff auf ein Dataset steuern.
  2. Verwenden Sie eine der verfügbaren Methoden, um der E-Mail-Adresse des Cloud Healthcare-Dienst-Agents WRITER-Zugriff auf das BigQuery-Dataset zu gewähren. (Suchen Sie nach der E-Mail-Adresse, die mit @gcp-sa-healthcare.iam.gserviceaccount.com endet.)

Wenn die E-Mail-Adresse des Cloud Healthcare-Dienst-Agents beispielsweise service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com lautet und Sie die BigQuery-Web-UI verwenden, gehen Sie so vor:

  1. Folgen Sie der Anleitung in der Konsole.
  2. Geben Sie im Feld Hauptkonten hinzufügen service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com ein und wählen Sie die Rolle bigquery.dataEditor aus.

DICOM-Metadaten aus Google Cloud-Projekten exportieren

Um DICOM-Metadaten aus einem DICOM-Speicher in einem Projekt in eine BigQuery-Tabelle in einem anderen Projekt zu exportieren, müssen Sie das Dienstkonto Cloud Healthcare-Dienst-Agent des Quellprojekts zum Zielprojekt hinzufügen und dem Dienstkonto die Rollen bigquery.dataEditor und bigquery.jobUser im Zielprojekt zuweisen.

So finden Sie das Dienstkonto Cloud Healthcare-Dienst-Agent des Quellprojekts:

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare-Dienst-Agents angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com. Notieren Sie sich diese Adresse im Quellprojekt, da sie in den folgenden Schritten verwendet wird.

Fügen Sie das Dienstkonto Cloud Healthcare-Dienst-Agent aus dem Quellprojekt zum Zielprojekt hinzu und erteilen Sie dem Dienstkonto mit diesen Schritten die erforderlichen BigQuery-Berechtigungen.

Console

  1. Öffnen Sie in der Google Cloud Console die IAM-Seite des Zielprojekts.
  2. Klicken Sie auf Add (Hinzufügen).
  3. Geben Sie im Feld Neue Mitglieder die Adresse des Dienstkontos Cloud Healthcare-Dienst-Agent des Quellprojekts ein.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach den Rollen BigQuery-Datenbearbeiter und BigQuery-Jobnutzer.
  5. Wählen Sie die Rolle aus und klicken Sie auf Speichern. Das Dienstkonto Cloud Healthcare-Dienst-Agent des Quellprojekts hat jetzt die Rollen bigquery.dataEditor und bigquery.jobUser für das Zielprojekt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um das Dienstkonto Cloud Healthcare-Dienst-Agent aus dem Quellprojekt zum Zielprojekt hinzuzufügen und dem Dienstkonto die erforderlichen BigQuery-Berechtigungen zu erteilen. Informationen zum Ermitteln der Projekt-ID und der Projektnummer für Ihre Quell- und Zielprojekte finden Sie unter Projekte identifizieren.

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

Führen Sie die Schritte unter WRITER Zugriff auf das BigQuery-Dataset gewähren aus, damit das Quellprojekt in das Ziel-Dataset schreiben kann.

FHIR-Speicher für Cloud Storage-Berechtigungen

In den folgenden Abschnitten werden FHIR-Methoden beschrieben, für die zusätzliche Berechtigungen für das Cloud Healthcare-Dienst-Agent-Konto erforderlich sind, um Daten aus Cloud Storage zu lesen oder in Cloud Storage zu schreiben.

FHIR-Ressourcen aus Cloud Storage importieren

Die Methode projects.locations.datasets.fhirStores.import erfordert die folgenden Berechtigungen für das Dienstkonto Cloud Healthcare-Dienst-Agent:

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

Diese Berechtigungen sind in der vordefinierten Rolle storage.objectViewer enthalten.

Sie können die Berechtigungen auch einer benutzerdefinierten Rolle hinzufügen. Möglicherweise sind sie auch in anderen grundlegenden Rollen enthalten.

Sie können die Google Cloud Console oder die gcloud CLI verwenden, um dem Dienstkonto Ihres Projekts die erforderliche storage.objectViewer-Rolle hinzuzufügen.

Console

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare-Dienst-Agents angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Betrachter.
  5. Wählen Sie die Rolle aus und klicken Sie auf Speichern. Die Rolle storage.objectViewer wird dann dem Dienstkonto hinzugefügt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um die Dienstkontoberechtigungen hinzuzufügen. Wie Sie die PROJECT_ID und PROJECT_NUMBER finden, erfahren Sie unter Projekte identifizieren.
gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/storage.objectViewer 

FHIR-Ressourcen nach Cloud Storage exportieren

Für die Verwendung der Methode projects.locations.datasets.fhirStores.export sind die folgenden Berechtigungen für das Dienstkonto Cloud Healthcare-Dienst-Agent erforderlich:

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

Diese Berechtigungen sind in der vordefinierten Rolle storage.objectAdmin enthalten.

Sie können die Berechtigungen auch einer benutzerdefinierten Rolle hinzufügen. Möglicherweise sind sie auch in anderen grundlegenden Rollen enthalten.

So gewähren Sie dem Dienstkonto die Rolle storage.objectAdmin:

Console

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare-Dienst-Agents angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Ersteller.
  5. Wählen Sie die Rolle aus und klicken Sie auf Speichern. Die Rolle storage.objectAdmin wird dann dem Dienstkonto hinzugefügt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um die Dienstkontoberechtigungen hinzuzufügen. Wie Sie die PROJECT_ID und PROJECT_NUMBER finden, erfahren Sie unter Projekte identifizieren.

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

Filterdateien aus Cloud Storage lesen

Für die Methode projects.locations.datasets.fhirStores.rollback sind die folgenden Berechtigungen für das Dienstkonto Cloud Healthcare-Dienst-Agent erforderlich, um Filterdateien aus Cloud Storage zu lesen:

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

Diese Berechtigungen sind in der vordefinierten Rolle storage.objectViewer enthalten.

Sie können die Berechtigungen auch einer benutzerdefinierten Rolle hinzufügen. Möglicherweise sind sie auch in anderen grundlegenden Rollen enthalten.

So weisen Sie dem Dienstkonto die Rolle storage.objectViewer zu:

Ausgabedateien in Cloud Storage schreiben

Für die Methode projects.locations.datasets.fhirStores.rollback sind die folgenden Berechtigungen für das Dienstkonto Cloud Healthcare-Dienst-Agent erforderlich, um Ausgabedateien in Cloud Storage zu schreiben:

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

Diese Berechtigungen sind in der vordefinierten Rolle storage.objectAdmin enthalten.

Sie können die Berechtigungen auch einer benutzerdefinierten Rolle hinzufügen. Möglicherweise sind sie auch in anderen grundlegenden Rollen enthalten.

So weisen Sie dem Dienstkonto die Rolle storage.objectAdmin zu:

BigQuery-Berechtigungen für FHIR-Speicher

Die Methode projects.locations.datasets.fhirStores.export erfordert zusätzliche Berechtigungen für das Dienstkonto Cloud Healthcare-Dienst-Agent, um FHIR-Ressourcen nach BigQuery zu exportieren. Sie müssen dem Dienstkonto des Cloud Healthcare-Dienst-Agents außerdem WRITER-Zugriff auf das BigQuery-Dataset gewähren.

Berechtigungen für das Dienstkonto des Cloud Healthcare-Dienst-Agents erteilen

Console

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare-Dienst-Agents angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach den Rollen BigQuery-Datenbearbeiter und BigQuery-Jobnutzer.
  5. Wählen Sie die einzelnen Rollen aus und klicken Sie auf Speichern. Die Rollen bigquery.dataEditor und bigquery.jobUser werden dem Dienstkonto hinzugefügt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um die Dienstkontoberechtigungen hinzuzufügen. Wie Sie die PROJECT_ID und PROJECT_NUMBER finden, erfahren Sie unter Projekte identifizieren.

  1. Weisen Sie die Rolle roles/bigquery.dataEditor zu:

    Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

    • PROJECT_ID ist die ID Ihres Google Cloud-Projekts
    • PROJECT_NUMBER: die Nummer Ihres Google Cloud-Projekts

    Führen Sie folgenden Befehl aus:

    Linux, macOS oder 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

    Sie sollten eine Antwort ähnlich der folgenden erhalten:

    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. Weisen Sie die Rolle roles/bigquery.jobUser zu:

    Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

    • PROJECT_ID ist die ID Ihres Google Cloud-Projekts
    • PROJECT_NUMBER: die Nummer Ihres Google Cloud-Projekts

    Führen Sie folgenden Befehl aus:

    Linux, macOS oder 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

    Sie sollten eine Antwort ähnlich der folgenden erhalten:

    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
    

WRITER-Zugriff auf das BigQuery-Dataset gewähren

Wenn Sie dem Dienstkonto Ihres Projekts die Rollen bigquery.dataEditor und bigquery.jobUser hinzugefügt haben, erhalten Sie Zugriff auf WRITER für alle BigQuery-Datasets. Wenn Sie diese Rollen jedoch nicht hinzugefügt haben und Zugriff auf WRITER für ein einzelnes BigQuery-Dataset benötigen, können Sie nur WRITER-Zugriff für dieses Dataset gewähren. Führen Sie die folgenden Schritte aus, um WRITER Zugriff auf ein BigQuery-Dataset zu gewähren:
  1. Gehen Sie zu Zugriff auf ein Dataset steuern.
  2. Verwenden Sie eine der verfügbaren Methoden, um der E-Mail-Adresse des Cloud Healthcare-Dienst-Agents WRITER-Zugriff auf das BigQuery-Dataset zu gewähren. (Suchen Sie nach der E-Mail-Adresse, die mit @gcp-sa-healthcare.iam.gserviceaccount.com endet.)

Wenn die E-Mail-Adresse des Cloud Healthcare-Dienst-Agents beispielsweise service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com lautet und Sie die BigQuery-Web-UI verwenden, gehen Sie so vor:

  1. Folgen Sie der Anleitung in der Konsole.
  2. Geben Sie im Feld Hauptkonten hinzufügen service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com ein und wählen Sie die Rolle bigquery.dataEditor aus.

HL7v2-Speicher-Berechtigungen in Cloud Storage

Für die Methoden projects.locations.datasets.hl7V2Stores.import und projects.locations.datasets.hl7V2Stores.export sind zusätzliche Berechtigungen für das Dienstkonto des Cloud Healthcare Service Agent erforderlich, um HL7v2-Nachrichten aus dem Cloud-Speicher zu importieren und HL7v2-Nachrichten in Cloud Storage zu exportieren.

Bestimmen Sie die Berechtigungen, die für das Dienstkonto erforderlich sind, basierend auf den Aktionen, die von der Anwendung ausgeführt werden:

  • Wenn die Anwendung HL7v2-Nachrichten aus dem Cloud Storage in einen HL7v2-Speicher importiert, benötigt das Dienstkonto die Berechtigungen storage.objects.get und storage.objects.list, die in der Rolle storage.objectViewer enthalten sind.
  • Wenn die Anwendung HL7v2-Nachrichten aus einem HL7v2-Speicher nach Cloud Storage exportiert, benötigt das Dienstkonto die Berechtigungen storage.objects.create, storage.objects.delete und storage.objects.list, die in der Rolle storage.objectCreator enthalten sind.

HL7v2-Nachrichten aus Cloud Storage importieren

Sie können die Google Cloud Console oder die gcloud CLI verwenden, um dem Dienstkonto Ihres Projekts die erforderliche storage.objectViewer-Rolle hinzuzufügen.

Console

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare-Dienst-Agents angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Betrachter.
  5. Wählen Sie die Rolle aus und klicken Sie auf Speichern. Die Rolle storage.objectViewer wird dann dem Dienstkonto hinzugefügt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um die Dienstkontoberechtigungen hinzuzufügen. Wie Sie die PROJECT_ID und PROJECT_NUMBER finden, erfahren Sie unter Projekte identifizieren.
gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \
    --role=roles/storage.objectViewer 

HL7v2-Nachrichten nach Cloud Storage exportieren

Sie können die Google Cloud Console oder die gcloud CLI verwenden, um dem Dienstkonto Ihres Projekts die erforderliche storage.objectCreator-Rolle hinzuzufügen.

Console

  1. Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
  2. Prüfen Sie in der Google Cloud Console auf der Seite "IAM", ob die Rolle Healthcare-Dienst-Agent in der Spalte Rolle für das Dienstkonto des Cloud Healthcare-Dienst-Agents angezeigt wird. Die Dienstkonto-ID lautet service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com.
  3. Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
  4. Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Ersteller.
  5. Wählen Sie die Rolle aus und klicken Sie auf Speichern. Die Rolle storage.objectCreator wird dann dem Dienstkonto hinzugefügt.

gcloud

Führen Sie den Befehl gcloud projects add-iam-policy-binding aus, um die Dienstkontoberechtigungen hinzuzufügen. Wie Sie die PROJECT_ID und PROJECT_NUMBER finden, erfahren Sie unter Projekte identifizieren.

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