Configurar definições de importação em massa
O serviço FHIR suporta $import operação que lhe permite importar dados para o serviço FHIR a partir de uma conta de armazenamento. A importação divide ficheiros de entrada em vários fluxos de dados para um desempenho ideal e não garante a ordem pela qual os recursos são processados. Existem dois modos de $import suportados atualmente:
O modo inicial destina-se a carregar recursos FHIR para um servidor FHIR vazio. O modo inicial só suporta operações CREATE e, quando ativada, bloqueia as escritas da API no servidor FHIR.
O modo incremental é otimizado para carregar dados para o servidor FHIR periodicamente e não bloqueia escritas através da API. Também lhe permite carregar lastUpdated e versionId a partir do recurso Meta (se estiver presente no JSON do recurso).
Neste documento, vamos analisar os três passos utilizados na configuração das definições de importação no serviço FHIR:
- Ative a identidade gerida no serviço FHIR.
- Crie uma conta de armazenamento do Azure ou utilize uma conta de armazenamento existente e, em seguida, conceda permissões ao serviço FHIR para aceder à mesma.
- Defina a configuração de importação no serviço FHIR.
Passo 1: Ativar a identidade gerida no serviço FHIR
O primeiro passo é ativar a identidade gerida em todo o sistema no serviço. Isto será utilizado para conceder acesso ao serviço FHIR à conta de armazenamento. Para obter mais informações sobre identidades geridas no Azure, veja About managed identities for Azure resources (Acerca das identidades geridas dos recursos do Azure).
Siga os passos para ativar a identidade gerida no serviço FHIR
- Navegue para o serviço FHIR no portal do Azure.
- Selecione o painel Identidade .
- Selecione a opção Estado para Ativado e, em seguida, selecione Guardar.
- Selecione Sim para ativar a identidade gerida do serviço FHIR.
Depois de ativar a identidade do sistema, verá um valor GUID atribuído pelo sistema.
Passo 2: atribuir permissões ao serviço FHIR para aceder à conta de armazenamento
Siga os passos abaixo para atribuir permissões para aceder à conta de armazenamento
- Navegue para o Controlo de Acesso (IAM) na conta de armazenamento.
- Selecione Adicionar atribuição de função. Durante este passo, se a opção adicionar atribuição de função estiver desativada, terá de pedir ao administrador do Azure para lhe atribuir permissão para efetuar este passo. Para obter mais informações sobre a atribuição de funções no portal do Azure, veja Funções incorporadas do Azure.
- Adicione a função Contribuidor de Dados de Blobs de Armazenamento ao serviço FHIR.
- Selecione Guardar.
Agora, está pronto para selecionar a conta de armazenamento para importação.
Passo 3: definir a configuração de importação do serviço FHIR
Nota
Se não tiver atribuído permissões de acesso de armazenamento ao serviço FHIR, as operações de importação ($import) falharão.
Para este passo, tem de obter o URL do pedido e o corpo JSON. Siga as instruções abaixo
- Navegue para o portal do Azure do seu serviço FHIR.
- Selecione Descrição geral.
- Selecione Vista JSON.
- Selecione a versão da API para 2022-06-01 ou versão posterior.
Para especificar a conta de Armazenamento do Azure na vista JSON, tem de utilizar a API REST para atualizar o serviço FHIR.
Os passos abaixo explicam as configurações de definição para o modo de importação inicial e incremental. Escolha o modo de importação certo para o seu caso de utilização.
Passo 3a: definir a configuração de importação para o Modo de importação inicial.
Efetue as seguintes alterações ao JSON:
- Defina ativado em importConfiguration como true.
- Atualize a integraçãoDataStore com o nome da conta de armazenamento de destino.
- Defina initialImportMode em importConfiguration como true.
- Remover provisioningState.
Depois de concluir este passo final, está pronto para executar a importação do modo Inicial com $import.
Passo 3b: definir a configuração de importação para o modo de importação incremental.
Efetue as seguintes alterações ao JSON:
- Defina ativado em importConfiguration como true.
- Atualize a integraçãoDataStore com o nome da conta de armazenamento de destino.
- Defina initialImportMode em importConfiguration como false.
- Remover provisioningState.
Depois de concluir este passo final, está pronto para efetuar a importação do modo Incremental com $import.
Tenha em atenção que também pode utilizar o botão Implementar no Azure para abrir um modelo de Resource Manager personalizado que atualiza a configuração para $import.
Proteger a operação de $import do serviço FHIR
Para importar dados FHIR de forma segura para o serviço FHIR a partir de uma conta do ADLS Gen2, existem duas opções:
Opção 1: Ativar o serviço FHIR como um Serviço Fidedigno da Microsoft.
Opção 2: permitir que endereços IP específicos associados ao serviço FHIR acedam à conta de armazenamento. Esta opção permite duas configurações diferentes consoante a conta de armazenamento esteja ou não na mesma região do Azure que o serviço FHIR.
Opção 1: Ativar o serviço FHIR como um Serviço Fidedigno da Microsoft.
Aceda à sua conta do ADLS Gen2 no portal do Azure e selecione o painel Rede. Selecione Ativado a partir de redes virtuais e endereços IP selecionados no separador Firewalls e redes virtuais .
Selecione Microsoft.HealthcareApis/workspaces na lista pendente Tipo de recurso e, em seguida, selecione a área de trabalho na lista pendente Nome da instância.
Na secção Exceções , selecione a caixa Permitir que os serviços do Azure na lista de serviços fidedignos acedam a esta conta de armazenamento. Certifique-se de que clica em Guardar para manter as definições.
Em seguida, execute o seguinte comando do PowerShell para instalar o módulo do Az.Storage
PowerShell no seu ambiente local. Isto permite-lhe configurar as suas contas de armazenamento do Azure com o PowerShell.
Install-Module Az.Storage -Repository PsGallery -AllowClobber -Force
Agora, utilize o comando do PowerShell abaixo para definir a instância de serviço FHIR selecionada como um recurso fidedigno para a conta de armazenamento. Certifique-se de que todos os parâmetros listados estão definidos no seu ambiente do PowerShell.
Tenha em atenção que tem de executar o Add-AzStorageAccountNetworkRule
comando como administrador no seu ambiente local. Para obter mais informações, veja Configurar firewalls e redes virtuais do Armazenamento do Microsoft Azure.
$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
Depois de executar o comando acima, na secção Firewall em Instâncias de recursos , verá 2 selecionados na lista pendente Nome da instância. Estes são os nomes da instância da área de trabalho e da instância de serviço FHIR que registou como Recursos Fidedignos da Microsoft.
Está agora pronto para importar dados FHIR de forma segura a partir da conta de armazenamento. A conta de armazenamento está em redes selecionadas e não está acessível publicamente. Para aceder em segurança aos ficheiros, pode ativar pontos finais privados para a conta de armazenamento.
Opção 2:
Permitir que endereços IP específicos de outras regiões do Azure acedam à conta de armazenamento do Azure
No portal do Azure, aceda à conta do ADLS Gen2 e selecione o painel Rede.
Selecione Ativado a partir de redes virtuais e endereços IP selecionados. Na secção Firewall, especifique o endereço IP na caixa Intervalo de endereços . Adicione intervalos de IP para permitir o acesso a partir da Internet ou das suas redes no local. Pode encontrar o endereço IP na tabela abaixo para a região do Azure onde o serviço FHIR está aprovisionado.
Região do Azure | Endereço IP público |
---|---|
Leste da Austrália | 20.53.44.80 |
Canadá Central | 20.48.192.84 |
E.U.A. Central | 52.182.208.31 |
E.U.A. Leste | 20.62.128.148 |
E.U.A. Leste 2 | 20.49.102.228 |
E.U.A. Leste 2 - EUAP | 20.39.26.254 |
Norte da Alemanha | 51.116.51.33 |
Alemanha Centro-Oeste | 51.116.146.216 |
Leste do Japão | 20.191.160.26 |
Coreia do Sul Central | 20.41.69.51 |
E.U.A. Centro-Norte | 20.49.114.188 |
Europa do Norte | 52.146.131.52 |
Norte da África do Sul | 102.133.220.197 |
E.U.A. Centro-Sul | 13.73.254.220 |
Sudeste Asiático | 23.98.108.42 |
Norte da Suíça | 51.107.60.95 |
Sul do Reino Unido | 51.104.30.170 |
Oeste do Reino Unido | 51.137.164.94 |
E.U.A. Centro-Oeste | 52.150.156.44 |
Europa Ocidental | 20.61.98.66 |
E.U.A. Oeste 2 | 40.64.135.77 |
Permitir que endereços IP específicos acedam à conta de armazenamento do Azure na mesma região
O processo de configuração para endereços IP na mesma região é igual ao acima, exceto um intervalo de endereços IP específico no formato CiDR (Classless Inter-Domain Routing) (por exemplo, 100.64.0.0/10). O motivo pelo qual o intervalo de endereços IP (100.64.0.0 – 100.127.255.255) tem de ser especificado deve-se ao facto de ser atribuído um endereço IP para o serviço FHIR sempre que for feito um pedido de operação.
Nota
É possível que um endereço IP privado dentro do intervalo de 10.0.2.0/24 possa ser utilizado, mas não há garantias de que a operação tenha êxito nesse caso. Pode tentar novamente se o pedido de operação falhar, mas até que seja utilizado um endereço IP dentro do intervalo de 100.64.0.0/10, o pedido não será bem-sucedido. Este comportamento de rede para intervalos de endereços IP é por predefinição. A alternativa é configurar a conta de armazenamento numa região diferente.
Passos seguintes
Neste artigo, aprendeu como o serviço FHIR suporta $import operação e permite-lhe importar dados para o serviço FHIR a partir de uma conta de armazenamento. Também ficou a conhecer os três passos utilizados na configuração das definições de importação no serviço FHIR. Para obter mais informações sobre como converter dados em FHIR, exportar definições para configurar uma conta de armazenamento e mover dados para Azure Synapse, consulte
FHIR® é uma marca registada do HL7 e é utilizada com a permissão de HL7.