Configuración de la importación masiva

El servicio FHIR admite $import operación que le permite importar datos en el servicio FHIR desde una cuenta de almacenamiento. La importación divide los archivos de entrada en varios flujos de datos para obtener un rendimiento óptimo y no garantiza el orden en el que se procesan los recursos. Actualmente se admiten dos modos de $import:

  • El modo inicial está pensado para cargar recursos de FHIR en un servidor FHIR vacío. El modo inicial solo admite operaciones CREATE y, cuando está habilitada, bloquea las escrituras de API en el servidor FHIR.

  • El modo incremental está optimizado para cargar datos en el servidor FHIR periódicamente y no bloquea las escrituras a través de la API. También le permite cargar lastUpdated y versionId desde el meta del recurso (si está presente en json del recurso).

En este documento se describen los tres pasos que se usan para configurar las opciones de importación en el servicio FHIR:

  1. Habilite la identidad administrada en el servicio FHIR.
  2. Cree una cuenta de almacenamiento de Azure o use una cuenta de almacenamiento existente y, a continuación, conceda permisos al servicio FHIR para acceder a ella.
  3. Establezca la configuración de importación en el servicio FHIR.

Paso 1: Habilitación de la identidad administrada en el servicio FHIR

El primer paso es habilitar la identidad administrada en todo el sistema en el servicio. Se usará para conceder acceso al servicio FHIR a la cuenta de almacenamiento. Para más información sobre las identidades administradas en Azure, consulte ¿Qué son las identidades administradas para recursos de Azure?

Siga los pasos para habilitar la identidad administrada en el servicio FHIR.

  1. Vaya al servicio FHIR en el Azure Portal.
  2. Seleccione la hoja Identidad .
  3. Seleccione la opción Estado en Activado y, a continuación, seleccione Guardar.
  4. Seleccione para habilitar la identidad administrada para el servicio FHIR.

Una vez habilitada la identidad del sistema, verá un valor GUID asignado por el sistema.

Habilitación de la identidad administrada

Paso 2: Asignación de permisos al servicio FHIR para acceder a la cuenta de almacenamiento

Siga los pasos que se indican a continuación para asignar permisos para acceder a la cuenta de almacenamiento.

  1. Vaya al Access Control (IAM) en la cuenta de almacenamiento.
  2. Seleccione Agregar asignación de roles. Durante este paso, si la opción agregar asignación de roles está atenuada, debe pedir al administrador de Azure que le asigne permiso para realizar este paso. Para más información sobre la asignación de roles en Azure Portal, consulte Roles integrados de Azure.
  3. Agregue el rol Colaborador de datos de Storage Blob al servicio FHIR.
  4. Seleccione Guardar.

Captura de pantalla de la página Agregar asignación de roles.

Ahora está listo para seleccionar la cuenta de almacenamiento para la importación.

Paso 3: Establecimiento de la configuración de importación del servicio FHIR

Nota

Si no ha asignado permisos de acceso de almacenamiento al servicio FHIR, se producirá un error en las operaciones de importación ($import).

Para este paso, debe obtener la dirección URL de solicitud y el cuerpo JSON. Siga las instrucciones que se indican a continuación

  1. Vaya al Azure Portal del servicio FHIR.
  2. Seleccione Información general.
  3. Seleccione Vista JSON.
  4. Seleccione la versión de API en 2022-06-01 o una versión posterior.

Para especificar la cuenta de Azure Storage en la vista JSON, debe usar la API REST para actualizar el servicio FHIR. Captura de pantalla de obtención de la vista JSON

En los pasos siguientes se describen las configuraciones de configuración para el modo de importación inicial e incremental. Elija el modo de importación adecuado para su caso de uso.

Paso 3a: Establecer la configuración de importación para el modo de importación inicial.

Realice los siguientes cambios en JSON:

  1. Establezca habilitado en importConfiguration en true.
  2. Actualice integrationDataStore con el nombre de la cuenta de almacenamiento de destino.
  3. Establezca initialImportMode en importConfiguration en true.
  4. Quite provisioningState.

Captura de pantalla del ejemplo de código de configuración del importador

Una vez completado este paso final, está listo para realizar la importación del modo inicial mediante $import.

Paso 3b: Establecer la configuración de importación para el modo de importación incremental.

Realice los siguientes cambios en JSON:

  1. Establezca habilitado en importConfiguration en true.
  2. Actualice integrationDataStore con el nombre de la cuenta de almacenamiento de destino.
  3. Establezca initialImportMode en importConfiguration en false.
  4. Quite provisioningState.

Una vez completado este paso final, está listo para realizar la importación en modo incremental mediante $import.

Tenga en cuenta que también puede usar el botón Implementar en Azure para abrir una plantilla de Resource Manager personalizada que actualice la configuración de $import.

Botón Implementar en Azure.

Protección de la operación de $import del servicio FHIR

Para importar datos de FHIR de forma segura en el servicio FHIR desde una cuenta de ADLS Gen2, hay dos opciones:

  • Opción 1: Habilitación del servicio FHIR como servicio de confianza de Microsoft.

  • Opción 2: permitir que direcciones IP específicas asociadas al servicio FHIR accedan a la cuenta de almacenamiento. Esta opción permite dos configuraciones diferentes en función de si la cuenta de almacenamiento está o no en la misma región de Azure que el servicio FHIR.

Opción 1: Habilitación del servicio FHIR como servicio de confianza de Microsoft.

Vaya a la cuenta de ADLS Gen2 en el Azure Portal y seleccione la hoja Redes. Seleccione Habilitado en redes virtuales seleccionadas y direcciones IP en la pestaña Firewalls y redes virtuales .

Captura de pantalla de la configuración de redes de Azure Storage.

Seleccione Microsoft.HealthcareApis/workspaces en la lista desplegable Tipo de recurso y, a continuación, seleccione el área de trabajo en la lista desplegable Nombre de instancia.

En la sección Excepciones , seleccione el cuadro Permitir que los servicios de Azure en la lista de servicios de confianza accedan a esta cuenta de almacenamiento. Asegúrese de hacer clic en Guardar para conservar la configuración.

Captura de pantalla que muestra Permitir que los servicios de Microsoft de confianza accedan a esta cuenta de almacenamiento.

A continuación, ejecute el siguiente comando de PowerShell para instalar el Az.Storage módulo de PowerShell en el entorno local. Esto le permitirá configurar las cuentas de almacenamiento de Azure mediante PowerShell.

Install-Module Az.Storage -Repository PsGallery -AllowClobber -Force 

Ahora, use el comando de PowerShell siguiente para establecer la instancia de servicio FHIR seleccionada como un recurso de confianza para la cuenta de almacenamiento. Asegúrese de que todos los parámetros enumerados están definidos en el entorno de PowerShell.

Tenga en cuenta que debe ejecutar el Add-AzStorageAccountNetworkRule comando como administrador en el entorno local. Para más información, vea Configuración de Firewalls y redes virtuales de Azure Storage.

$subscription="xxx"
$tenantId = "xxx"
$resourceGroupName = "xxx"
$storageaccountName = "xxx"
$workspacename="xxx"
$fhirname="xxx"
$resourceId = "/subscriptions/$subscription/resourceGroups/$resourceGroupName/providers/Microsoft.HealthcareApis/workspaces/$workspacename/fhirservices/$fhirname"

Add-AzStorageAccountNetworkRule -ResourceGroupName $resourceGroupName -Name $storageaccountName -TenantId $tenantId -ResourceId $resourceId

Después de ejecutar el comando anterior, en la sección Firewall en Instancias de recursos verá 2 seleccionado en la lista desplegable Nombre de instancia. Estos son los nombres de la instancia del área de trabajo y la instancia de servicio FHIR que registró como recursos de confianza de Microsoft.

Captura de pantalla de la configuración de red de Azure Storage con el tipo de recurso y los nombres de instancia.

Ya está listo para importar datos de FHIR de forma segura desde la cuenta de almacenamiento. La cuenta de almacenamiento está en redes seleccionadas y no es accesible públicamente. Para acceder de forma segura a los archivos, puede habilitar puntos de conexión privados para la cuenta de almacenamiento.

Opción 2:

Permitir que direcciones IP específicas de otras regiones de Azure accedan a la cuenta de almacenamiento de Azure

En el Azure Portal, vaya a la cuenta de ADLS Gen2 y seleccione la hoja Redes.

Seleccione Habilitado en redes virtuales seleccionadas y direcciones IP. En la sección Firewall, especifique la dirección IP en el cuadro Intervalo de direcciones. Agregue intervalos IP para permitir el acceso desde Internet o redes locales. Puede encontrar la dirección IP en la tabla siguiente para la región de Azure donde se aprovisiona el servicio FHIR.

Región de Azure Dirección IP pública
Este de Australia 20.53.44.80
Centro de Canadá 20.48.192.84
Centro de EE. UU. 52.182.208.31
Este de EE. UU. 20.62.128.148
Este de EE. UU. 2 20.49.102.228
EUAP de Este de EE. UU. 2 20.39.26.254
Norte de Alemania 51.116.51.33
Centro-oeste de Alemania 51.116.146.216
Japón Oriental 20.191.160.26
Centro de Corea del Sur 20.41.69.51
Centro-Norte de EE. UU 20.49.114.188
Norte de Europa 52.146.131.52
Norte de Sudáfrica 102.133.220.197
Centro-sur de EE. UU. 13.73.254.220
Sudeste de Asia 23.98.108.42
Norte de Suiza 51.107.60.95
Sur de Reino Unido 51.104.30.170
Oeste de Reino Unido 51.137.164.94
Centro-Oeste de EE. UU. 52.150.156.44
Oeste de Europa 20.61.98.66
Oeste de EE. UU. 2 40.64.135.77

Permitir que direcciones IP específicas accedan a la cuenta de almacenamiento de Azure en la misma región

El proceso de configuración de las direcciones IP de la misma región es similar al anterior, excepto un intervalo de direcciones IP específico en formato de enrutamiento de Inter-Domain sin clases (CIDR) en su lugar (es decir, 100.64.0.0/10). El motivo por el que se debe especificar el intervalo de direcciones IP (100.64.0.0 – 100.127.255.255) es porque se asignará una dirección IP para el servicio FHIR cada vez que se realice una solicitud de operación.

Nota

Es posible que se pueda usar una dirección IP privada dentro del intervalo de 10.0.2.0/24, pero no hay ninguna garantía de que la operación se realice correctamente en tal caso. Puede reintentar si se produce un error en la solicitud de operación, pero hasta que se use una dirección IP dentro del intervalo de 100.64.0.0/10, la solicitud no se realizará correctamente. Este comportamiento de red para los intervalos de direcciones IP es por diseño. La alternativa es configurar la cuenta de almacenamiento en una región diferente.

Pasos siguientes

En este artículo, ha aprendido cómo el servicio FHIR admite $import operación y le permite importar datos en el servicio FHIR desde una cuenta de almacenamiento. También ha obtenido información sobre los tres pasos que se usan para configurar las opciones de importación en el servicio FHIR. Para obtener más información sobre cómo convertir datos en FHIR, exportar la configuración para configurar una cuenta de almacenamiento y mover datos a Azure Synapse, consulte

FHIR® es una marca registrada de HL7 y se usa con su permiso.