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.
Sie können detaillierte Informationen zum Cloud Healthcare-Dienst-Agent aufrufen. Dienstkonto wie die zugewiesenen Rollen auf der Seite Identity and Access Management in 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 die
Mit dem Dienstkonto Cloud Healthcare Service Agent Objekte verschlüsseln und entschlüsseln
Gewähren Sie dem Dienstkonto mithilfe des CMEK-Schlüssels
CryptoKey-Verschlüsseler/Entschlüsseler (roles/cloudkms.cryptoKeyEncrypterDecrypter
)
Rolle.
Console
Öffnen Sie in der Google Cloud Console die Seite IAM.
Klicken Sie auf das Kästchen
Von Google bereitgestellte Rollenzuweisungen einschließen.Achten Sie darauf, dass der Tab Nach Hauptkonten filtern ausgewählt ist. Suchen Sie die Zeile mit dem Dienst Cloud Healthcare Service Agent. und klicken Sie auf
Hauptkonto bearbeiten in dieser Zeile. Der Bereich Berechtigungen bearbeiten wird angezeigt.Klicken Sie auf
Weitere Rolle hinzufügen.Wählen Sie im Drop-down-Menü Rolle auswählen die Option CryptoKey-Verschlüsseler/Entschlüsseler aus.
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
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
. - Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Pub/Sub-Publisher.
- 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 erforderlichestorage.objectViewer
-Rolle hinzuzufügen.Console
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
- Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Betrachter.
- 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 Befehlgcloud 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
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
- Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Administrator.
- 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
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
. - Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach den Rollen BigQuery-Datenbearbeiter und BigQuery-Jobnutzer.
- Wählen Sie die einzelnen Rollen aus und klicken Sie auf Speichern. Die Rollen
bigquery.dataEditor
undbigquery.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.
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
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:
- Gehen Sie zu Zugriff auf ein Dataset steuern.
- 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:
- Folgen Sie der Anleitung in der Konsole.
- Geben Sie im Feld Hauptkonten hinzufügen
service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com
ein und wählen Sie die Rollebigquery.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:
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
- Öffnen Sie in der Google Cloud Console die IAM-Seite des Zielprojekts.
- Klicken Sie auf Add (Hinzufügen).
- Geben Sie im Feld Neue Mitglieder die Adresse des Dienstkontos Cloud Healthcare-Dienst-Agent des Quellprojekts ein.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach den Rollen BigQuery-Datenbearbeiter und BigQuery-Jobnutzer.
- 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
undbigquery.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, die zusätzliche Berechtigungen für den Cloud Healthcare-Dienst-Agent zum Lesen oder Schreiben in Cloud Storage
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, oder in anderen einfachen Rollen enthalten sein.
Sie können die Google Cloud Console oder die gcloud CLI verwenden, um dem Dienstkonto Ihres Projekts die erforderlichestorage.objectViewer
-Rolle hinzuzufügen.Console
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
. - Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Betrachter.
- 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 Befehlgcloud 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
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
- Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Ersteller.
- 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, oder in anderen einfachen Rollen enthalten sein.
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, oder in anderen einfachen Rollen enthalten sein.
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
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
- Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach den Rollen BigQuery-Datenbearbeiter und BigQuery-Jobnutzer.
- Wählen Sie die einzelnen Rollen aus und klicken Sie auf Speichern. Die Rollen
bigquery.dataEditor
undbigquery.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.
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
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:
- Gehen Sie zu Zugriff auf ein Dataset steuern.
- 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:
- Folgen Sie der Anleitung in der Konsole.
- Geben Sie im Feld Hauptkonten hinzufügen
service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com
ein und wählen Sie die Rollebigquery.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
undstorage.objects.list
, die in der Rollestorage.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
undstorage.objects.list
, die in der Rollestorage.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 erforderlichestorage.objectViewer
-Rolle hinzuzufügen.Console
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
. - Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Betrachter.
- 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 Befehlgcloud 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
- Achten Sie darauf, dass Sie die Cloud Healthcare API aktiviert haben.
- 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
- Klicken Sie in der Zeile mit der Rolle in der Spalte Übernahme auf das Bleistiftsymbol. Der Bereich Berechtigungen bearbeiten wird geöffnet.
- Klicken Sie auf Weitere Rolle hinzufügen und suchen Sie nach der Rolle Storage-Objekt-Ersteller.
- 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