La API de Cloud Healthcare no tiene acceso automático a otros recursos de Google Cloud en tu proyecto, como los depósitos de Cloud Storage y los conjuntos de datos de BigQuery. Cuando accedes a estos recursos, la API de Cloud Healthcare usa un agente de servicio llamado agente de servicios de Cloud Healthcare.
Para realizar operaciones como la notificación de cambios en temas de Pub/Sub, la importación de datos desde depósitos de Cloud Storage, la exportación de datos a conjuntos de datos de BigQuery, etc., primero debes otorgar a la cuenta de servicio la permisos de administración de identidades y accesos (IAM) necesarios para acceder a los recursos fuera de la API de Cloud Healthcare. En esta página, se describe qué permisos son necesarios para varias operaciones y cómo otorgarlos.
Para obtener más información sobre el uso de IAM a fin de configurar permisos dentro de la API de Cloud Healthcare, consulta Control de acceso.
El agente de servicios de Cloud Healthcare
La cuenta de servicio del agente de servicios de Cloud Healthcare se crea automáticamente después de que habilitas la API de Cloud Healthcare. Su nombre de miembro es service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
.
Para encontrar el PROJECT_NUMBER de tu proyecto de Google Cloud, consulta Identifica proyectos.
Puedes ver la información detallada sobre la cuenta de servicio del agente de servicio de Cloud Healthcare, como los roles que se le otorgaron, en la página de administración de identidades y accesos en la consola de Google Cloud.
Para obtener más información sobre el Agente de servicio de Cloud Healthcare y su interacción con las funciones y los permisos de administración de identidades y accesos (IAM), consulta Control de acceso.
Permisos de CMEK del conjunto de datos
Puedes usar una clave de encriptación administrada por el cliente (CMEK) cuando creas un conjunto de datos de la API de Cloud Healthcare. Para permitir que la cuenta de servicio del agente de servicio de Cloud Healthcare encripte y desencripte objetos con la clave de CMEK, otorga a la cuenta de servicio el rol de encriptador/desencriptador de CryptoKey (roles/cloudkms.cryptoKeyEncrypterDecrypter
).
Console
En la consola de Google Cloud, ve a la página IAM.
Selecciona la casilla de verificación
Incluir asignaciones de roles proporcionadas por Google.Asegúrate de que la pestaña Ver por principales esté seleccionada. Ubica la fila que contiene la cuenta de servicio del Agente de servicios de Cloud Healthcare y haz clic en
Editar principal en esa fila. Se mostrará el panel Editar permisos.Haz clic en
Agregar otro rol.En el menú desplegable Seleccionar un rol, busca Encriptador/desencriptador de CryptoKey y haz clic en él.
Haz clic en Guardar.
Los permisos de Pub/Sub de la tienda de DICOM, FHIR y HL7v2
Los cambios en las tiendas de DICOM, FHIR y HL7v2 se pueden enviar a un tema de Pub/Sub. Para obtener más información, consulta Cómo usar Cloud Pub/Sub para las notificaciones.
Los métodos dentro de estas tiendas requieren permisos adicionales en la cuenta de servicio del agente de servicios de Cloud Healthcare para publicar cambios en un tema de Pub/Sub.
Usa la consola de Google Cloud o gcloud CLI para agregar el rol pubsub.publisher
a la cuenta de servicio de tu proyecto:
Console
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. - En la columna Herencia que coincide con la función, haz clic en el ícono de lápiz. Se abrirá el panel Editar permisos.
- Haz clic en Agregar otra función y, luego, busca la función de Publicador de Pub/Sub.
- Selecciona la función y haz clic en Guardar. La función
pubsub.publisher
se agrega a la cuenta de servicio.
gcloud
Para agregar los permisos de la cuenta de servicio, ejecuta el comando gcloud projects add-iam-policy-binding
. Para encontrar los valores de PROJECT_ID y PROJECT_NUMBER, consulta cómo identificar proyectos.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/pubsub.publisher
Configura los permisos de Pub/Sub entre proyectos
Para publicar notificaciones de Pub/Sub en un tema de otro proyecto, otorga el rol pubsub.publisher
al Agente de servicios de Cloud Healthcare en el tema. Para obtener más información, consulta Controla el acceso a través de la Consola de Google Cloud y Controla el acceso a través de la API de IAM.
Para ver un ejemplo de cómo publicar notificaciones de Pub/Sub entre proyectos, consulta el caso de uso de muestra: comunicación entre proyectos.
Permisos de Cloud Storage de la tienda de DICOM
Los métodos projects.locations.datasets.dicomStores.import
y projects.locations.datasets.dicomStores.export
requieren permisos adicionales en la cuenta de servicio del agente de servicios de Cloud Healthcare para importar y exportar datos a Cloud Storage.
Importa datos desde Cloud Storage
Puedes usar la consola de Google Cloud o la CLI de gcloud para agregar el rolstorage.objectViewer
requerido a la cuenta de servicio de tu proyecto.Consola
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. - En la columna Herencia que coincide con la función, haz clic en el ícono de lápiz. Se abrirá el panel Editar permisos.
- Haz clic en Agregar otra función y, luego, busca la función de Visor de objetos de almacenamiento.
- Selecciona la función y haz clic en Guardar. Luego, se agrega la función
storage.objectViewer
a la cuenta de servicio.
gcloud
Para agregar los permisos de la cuenta de servicio, ejecuta el comandogcloud projects add-iam-policy-binding
. Para encontrar los valores de PROJECT_ID y PROJECT_NUMBER, consulta cómo identificar proyectos.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/storage.objectViewer
Exporta datos a Cloud Storage
Puedes usar la consola de Google Cloud o la CLI de gcloud para agregar el rol storage.objectAdmin
requerido a la cuenta de servicio de tu proyecto:
Consola
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. - En la columna Herencia que coincide con la función, haz clic en el ícono de lápiz. Se abrirá el panel Editar permisos.
- Haz clic en Agregar otra función y, luego, busca la función de Administrador de objetos de almacenamiento.
- Selecciona la función y haz clic en Guardar. Luego, se agrega la función
storage.objectAdmin
a la cuenta de servicio.
gcloud
Para agregar los permisos de la cuenta de servicio, ejecuta el comando gcloud projects add-iam-policy-binding
. Para encontrar los valores de PROJECT_ID y PROJECT_NUMBER, consulta cómo identificar proyectos.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/storage.objectAdmin
Permisos de BigQuery de la tienda de DICOM
El método projects.locations.datasets.dicomStores.export
requiere permisos adicionales en la cuenta de servicio del agente de servicios de Cloud Healthcare para exportar metadatos de DICOM a BigQuery. También debes otorgarle acceso de WRITER
para el conjunto de datos de BigQuery a la cuenta de servicio del agente de servicios de Cloud Healthcare.
Otorga permisos a la cuenta de servicio del agente de servicios de Cloud Healthcare
Puedes usar la consola de Google Cloud o gcloud CLI para agregar los roles bigquery.dataEditor
y bigquery.jobUser
requeridos a la cuenta de servicio de tu proyecto.
Console
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. - En la columna Herencia que coincide con la función, haz clic en el ícono de lápiz. Se abrirá el panel Editar permisos.
- Haz clic en Agregar otra función y, luego, busca las funciones de Editor de datos de BigQuery y de Usuario de trabajo de BigQuery.
- Selecciona cada función y, luego, haz clic en Guardar. Luego, las funciones
bigquery.dataEditor
ybigquery.jobUser
se agregan a la cuenta de servicio.
gcloud
Para agregar los permisos de la cuenta de servicio, ejecuta el comando gcloud projects add-iam-policy-binding
. Para encontrar los valores de PROJECT_ID y PROJECT_NUMBER, consulta cómo identificar proyectos.
Otorga la función
roles/bigquery.dataEditor
:Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- PROJECT_NUMBER: El número de tu proyecto de Google Cloud
Ejecuta el siguiente comando:
Linux, macOS o 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
Deberías recibir una respuesta similar a la que figura a continuación:
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
Otorga la función
roles/bigquery.jobUser
:Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- PROJECT_NUMBER: El número de tu proyecto de Google Cloud
Ejecuta el siguiente comando:
Linux, macOS o 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
Deberías recibir una respuesta similar a la que figura a continuación:
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
Otorga acceso de WRITER
al conjunto de datos de BigQuery
Si agregaste las funciones bigquery.dataEditor
y bigquery.jobUser
a la cuenta de servicio de tu proyecto, tendrás acceso de WRITER
para todos los conjuntos de datos de BigQuery. Sin embargo, si no agregaste estas funciones y necesitas acceso de WRITER
a un único conjunto de datos de BigQuery, puedes otorgar acceso de WRITER
solo para ese conjunto de datos.
Para otorgar acceso de WRITER
al conjunto de datos de BigQuery, completa los siguientes pasos:- Navega hasta Control de acceso a un conjunto de datos.
- Mediante uno de los métodos disponibles, otorga a la dirección de correo electrónico del agente de servicios de Cloud Healthcare acceso de
WRITER
al conjunto de datos de BigQuery. (Busca la dirección de correo electrónico que termina en@gcp-sa-healthcare.iam.gserviceaccount.com
).
Por ejemplo, si la dirección de correo electrónico de tu agente de servicios de Cloud Healthcare es service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com
y si usas la IU web de BigQuery, deberías hacer lo siguiente:
- Sigue las instrucciones de Console.
- En el campo Agregar principales, ingresa
service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com
y selecciona la funciónbigquery.dataEditor
.
Exporta metadatos de DICOM en proyectos de Google Cloud
Para exportar metadatos de DICOM de una tienda de DICOM en un proyecto a una tabla de BigQuery en otro proyecto, debes agregar la cuenta de servicio del agente de servicios de Cloud Healthcare del proyecto de origen al proyecto destino y otorgar a la cuenta de servicio las funciones bigquery.dataEditor
y bigquery.jobUser
en el proyecto de destino.
Para encontrar la cuenta de servicio del agente de servicios de Cloud Healthcare del proyecto de origen, completa los siguientes pasos:
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. Anota esta dirección en el proyecto de origen, ya que se usará en los siguientes pasos.
Agrega la cuenta de servicio del agente de servicios de Cloud Healthcare del proyecto de origen al proyecto de destino y otorga a la cuenta de servicio los permisos de BigQuery necesarios mediante los siguientes pasos:
Consola
- Abre la página de IAM del proyecto de destino en la consola de Google Cloud.
- Haga clic en Agregar.
- En el campo Nuevos miembros, ingresa la dirección de la cuenta de servicio del agente de servicios de Cloud Healthcare del proyecto de origen.
- Haz clic en Agregar otra función y, luego, busca las funciones de Editor de datos de BigQuery y de Usuario de trabajo de BigQuery.
- Selecciona la función y haz clic en Guardar. La cuenta de servicio del agente de servicios de Cloud Healthcare del proyecto de origen ahora tiene las funciones
bigquery.dataEditor
ybigquery.jobUser
en el proyecto de destino.
gcloud
Para agregar la cuenta de servicio del agente de servicios de Cloud Healthcare del proyecto de origen al proyecto de destino y otorgar a la cuenta de servicio los permisos de BigQuery necesarios, ejecuta el comando gcloud projects add-iam-policy-binding
. Para encontrar el ID y el número de tus proyectos de origen y destino, consulta Identifica proyectos.
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
Completa los pasos en Otorga acceso de WRITER
al conjunto de datos de BigQuery para permitir que el proyecto de origen escriba en el conjunto de datos de destino.
Permisos de Cloud Storage de la tienda de FHIR
En las siguientes secciones, se describen los métodos de FHIR que requieren permisos adicionales en el agente de servicios de Cloud Healthcare para leer o escribir en Cloud Storage.
Importa recursos de FHIR desde Cloud Storage
El método projects.locations.datasets.fhirStores.import
requiere los siguientes permisos en la cuenta de servicio del agente de servicios de Cloud Healthcare:
storage.objects.get
storage.objects.list
Estos permisos se incluyen en el rol predefinido storage.objectViewer
.
También puedes agregar los permisos a un rol personalizado o incluirlos en otros roles básicos.
Puedes usar la consola de Google Cloud o la CLI de gcloud para agregar el rolstorage.objectViewer
requerido a la cuenta de servicio de tu proyecto.Consola
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. - En la columna Herencia que coincide con la función, haz clic en el ícono de lápiz. Se abrirá el panel Editar permisos.
- Haz clic en Agregar otra función y, luego, busca la función de Visor de objetos de almacenamiento.
- Selecciona la función y haz clic en Guardar. Luego, se agrega la función
storage.objectViewer
a la cuenta de servicio.
gcloud
Para agregar los permisos de la cuenta de servicio, ejecuta el comandogcloud projects add-iam-policy-binding
. Para encontrar los valores de PROJECT_ID y PROJECT_NUMBER, consulta cómo identificar proyectos.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/storage.objectViewer
Exporta recursos de FHIR a Cloud Storage
Para usar el método projects.locations.datasets.fhirStores.export
, se requieren los siguientes permisos en la cuenta de servicio del agente de servicios de Cloud Healthcare:
storage.objects.create
storage.objects.delete
storage.objects.list
Estos permisos se incluyen en el rol predefinido storage.objectAdmin
.
También puedes agregar los permisos a un rol personalizado, o bien pueden incluirse en otros roles básicos.
Para otorgarle el rol storage.objectAdmin
a la cuenta de servicio, sigue estos pasos:
Console
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. - En la columna Herencia que coincide con la función, haz clic en el ícono de lápiz. Se abrirá el panel Editar permisos.
- Haz clic en Agregar otra función y, luego, busca la función de Creador de objetos de almacenamiento.
- Selecciona la función y haz clic en Guardar. Luego, se agrega la función
storage.objectAdmin
a la cuenta de servicio.
gcloud
Para agregar los permisos de la cuenta de servicio, ejecuta el comando gcloud projects add-iam-policy-binding
. Para encontrar los valores de PROJECT_ID y PROJECT_NUMBER, consulta cómo identificar proyectos.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/storage.objectAdmin
Lee archivos de filtro desde Cloud Storage
El método projects.locations.datasets.fhirStores.rollback
requiere los siguientes permisos en la cuenta de servicio del agente de servicios de Cloud Healthcare para leer archivos de filtro desde Cloud Storage:
storage.objects.get
storage.objects.list
Estos permisos se incluyen en el rol predefinido storage.objectViewer
.
También puedes agregar los permisos a un rol personalizado o incluirlos en otros roles básicos.
Para otorgar el rol storage.objectViewer
a la cuenta de servicio, sigue estos pasos:
Escribe archivos de salida en Cloud Storage
El método projects.locations.datasets.fhirStores.rollback
requiere los siguientes permisos en la cuenta de servicio del agente de servicios de Cloud Healthcare para escribir archivos de salida en Cloud Storage:
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.list
Estos permisos se incluyen en el rol predefinido storage.objectAdmin
.
También puedes agregar los permisos a un rol personalizado, o bien pueden incluirse en otros roles básicos.
Para otorgar el rol storage.objectAdmin
a la cuenta de servicio, sigue estos pasos:
Permisos de BigQuery de la tienda de FHIR
El método projects.locations.datasets.fhirStores.export
requiere permisos adicionales en la cuenta de servicio del agente de servicios de Cloud Healthcare para exportar recursos de FHIR a BigQuery. También debes otorgarle acceso de WRITER
para el conjunto de datos de BigQuery a la cuenta de servicio del agente de servicios de Cloud Healthcare.
Otorga permisos a la cuenta de servicio del agente de servicios de Cloud Healthcare
Console
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. - En la columna Herencia que coincide con la función, haz clic en el ícono de lápiz. Se abrirá el panel Editar permisos.
- Haz clic en Agregar otra función y, luego, busca las funciones de Editor de datos de BigQuery y de Usuario de trabajo de BigQuery.
- Selecciona cada función y, luego, haz clic en Guardar. Luego, las funciones
bigquery.dataEditor
ybigquery.jobUser
se agregan a la cuenta de servicio.
gcloud
Para agregar los permisos de la cuenta de servicio, ejecuta el comando gcloud projects add-iam-policy-binding
. Para encontrar los valores de PROJECT_ID y PROJECT_NUMBER, consulta cómo identificar proyectos.
Otorga la función
roles/bigquery.dataEditor
:Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- PROJECT_NUMBER: El número de tu proyecto de Google Cloud
Ejecuta el siguiente comando:
Linux, macOS o 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
Deberías recibir una respuesta similar a la que figura a continuación:
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
Otorga la función
roles/bigquery.jobUser
:Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- PROJECT_NUMBER: El número de tu proyecto de Google Cloud
Ejecuta el siguiente comando:
Linux, macOS o 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
Deberías recibir una respuesta similar a la que figura a continuación:
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
Otorga acceso de WRITER
al conjunto de datos de BigQuery
Si agregaste las funciones bigquery.dataEditor
y bigquery.jobUser
a la cuenta de servicio de tu proyecto, tendrás acceso de WRITER
para todos los conjuntos de datos de BigQuery. Sin embargo, si no agregaste estas funciones y necesitas acceso de WRITER
a un único conjunto de datos de BigQuery, puedes otorgar acceso de WRITER
solo para ese conjunto de datos.
Para otorgar acceso de WRITER
al conjunto de datos de BigQuery, completa los siguientes pasos:- Navega hasta Control de acceso a un conjunto de datos.
- Mediante uno de los métodos disponibles, otorga a la dirección de correo electrónico del agente de servicios de Cloud Healthcare acceso de
WRITER
al conjunto de datos de BigQuery. (Busca la dirección de correo electrónico que termina en@gcp-sa-healthcare.iam.gserviceaccount.com
).
Por ejemplo, si la dirección de correo electrónico de tu agente de servicios de Cloud Healthcare es service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com
y si usas la IU web de BigQuery, deberías hacer lo siguiente:
- Sigue las instrucciones de Console.
- En el campo Agregar principales, ingresa
service-000000000000@gcp-sa-healthcare.iam.gserviceaccount.com
y selecciona la funciónbigquery.dataEditor
.
Permisos de Cloud Storage del almacén HL7v2
Los métodos projects.locations.datasets.hl7V2Stores.import
y projects.locations.datasets.hl7V2Stores.export
requieren permisos adicionales en la cuenta de servicio del agente del servicio de Cloud Healthcare para importar mensajes HL7v2 desde Cloud Storage y exportar mensajes HL7v2 hacia allí
Determina los permisos que requiere la cuenta de servicio según las acciones que realiza la aplicación:
- Si la aplicación importa mensajes HL7v2 de Cloud Storage a un almacén HL7v2, la cuenta de servicio requiere los permisos
storage.objects.get
ystorage.objects.list
, que se incluyen en la funciónstorage.objectViewer
. - Si la aplicación exporta mensajes HL7v2 de un almacén HL7v2 a Cloud Storage, la cuenta de servicio requiere los permisos
storage.objects.create
,storage.objects.delete
ystorage.objects.list
, que se incluyen en la funciónstorage.objectCreator
.
Importar mensajes HL7v2 desde Cloud Storage
Puedes usar la consola de Google Cloud o la CLI de gcloud para agregar el rolstorage.objectViewer
requerido a la cuenta de servicio de tu proyecto.Consola
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. - En la columna Herencia que coincide con la función, haz clic en el ícono de lápiz. Se abrirá el panel Editar permisos.
- Haz clic en Agregar otra función y, luego, busca la función de Visor de objetos de almacenamiento.
- Selecciona la función y haz clic en Guardar. Luego, se agrega la función
storage.objectViewer
a la cuenta de servicio.
gcloud
Para agregar los permisos de la cuenta de servicio, ejecuta el comandogcloud projects add-iam-policy-binding
. Para encontrar los valores de PROJECT_ID y PROJECT_NUMBER, consulta cómo identificar proyectos.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/storage.objectViewer
Exportar mensajes HL7v2 a Cloud Storage
Puedes usar la consola de Google Cloud o la CLI de gcloud para agregar el rol storage.objectCreator
requerido a la cuenta de servicio de tu proyecto:
Consola
- Asegúrate de haber habilitado la API de Cloud Healthcare.
- En la página IAM en la consola de Google Cloud, verifica que el rol Agente de servicio de Healthcare aparezca en la columna Rol de la cuenta de servicio del agente de servicio de Cloud Healthcare.
El identificador de cuenta de servicio es
service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
. - En la columna Herencia que coincide con la función, haz clic en el ícono de lápiz. Se abrirá el panel Editar permisos.
- Haz clic en Agregar otra función y, luego, busca la función de Creador de objetos de almacenamiento.
- Selecciona la función y haz clic en Guardar. Luego, se agrega la función
storage.objectCreator
a la cuenta de servicio.
gcloud
Para agregar los permisos de la cuenta de servicio, ejecuta el comando gcloud projects add-iam-policy-binding
. Para encontrar los valores de PROJECT_ID y PROJECT_NUMBER, consulta cómo identificar proyectos.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/storage.objectCreator