Konfigurowanie kluczy zarządzanych przez klienta magazynowanych
Podczas tworzenia nowego konta interfejsu API platformy Azure for FHIR dane są domyślnie szyfrowane przy użyciu kluczy zarządzanych przez firmę Microsoft. Teraz możesz dodać drugą warstwę szyfrowania danych przy użyciu własnego klucza, który wybierzesz i którym zarządzasz samodzielnie.
Na platformie Azure jest to zwykle realizowane przy użyciu klucza szyfrowania w usłudze Azure Key Vault klienta. Azure SQL, Azure Storage i Azure Cosmos DB to kilka przykładów, które zapewniają tę funkcję dzisiaj. Interfejs API platformy Azure dla platformy FHIR korzysta z tej obsługi z usługi Azure Cosmos DB. Podczas tworzenia konta będziesz mieć możliwość określenia identyfikatora URI klucza usługi Azure Key Vault. Ten klucz zostanie przekazany do usługi Azure Cosmos DB po aprowizacji konta usługi DB. Po wysłaniu żądania Fast Healthcare Interoperability Resources (FHIR®) usługa Azure Cosmos DB pobiera klucz i używa go do szyfrowania/odszyfrowywania danych.
Aby rozpocząć pracę, zapoznaj się z następującymi linkami:
- Rejestrowanie dostawcy zasobów usługi Azure Cosmos DB dla subskrypcji platformy Azure
- Konfigurowanie wystąpienia usługi Azure Key Vault
- Dodawanie zasad dostępu do wystąpienia usługi Azure Key Vault
- Generowanie klucza w usłudze Azure Key Vault
Korzystanie z witryny Azure Portal
Podczas tworzenia konta usługi Azure API for FHIR na Azure Portal zobaczysz opcję konfiguracji szyfrowania danych w obszarze Ustawienia bazy danych na karcie Dodatkowe ustawienia. Domyślnie zostanie wybrana opcja klucz zarządzany przez usługę.
Ważne
Opcja szyfrowania danych jest dostępna tylko po utworzeniu interfejsu API platformy Azure for FHIR i nie można jej później zmienić. Można jednak wyświetlić i zaktualizować klucz szyfrowania, jeśli wybrano opcję Klucz zarządzany przez klienta .
Klucz można wybrać z poziomu platformy KeyPicker:
Możesz również określić klucz usługi Azure Key Vault tutaj, wybierając opcję Klucz zarządzany przez klienta.
Możesz również wprowadzić identyfikator URI klucza tutaj:
Ważne
Upewnij się, że wszystkie uprawnienia dla Key Vault platformy Azure zostały odpowiednio ustawione. Aby uzyskać więcej informacji, zobacz Dodawanie zasad dostępu do wystąpienia usługi Azure Key Vault. Ponadto upewnij się, że usuwanie nietrwałe jest włączone we właściwościach Key Vault. Wykonanie tych kroków spowoduje błąd wdrożenia. Aby uzyskać więcej informacji, zobacz Sprawdzanie, czy usuwanie nietrwałe jest włączone w magazynie kluczy i włączanie usuwania nietrwałego.
Uwaga
Użycie kluczy zarządzanych przez klienta w regionach Brazylii Południowej i Azji Wschodniej wymaga identyfikatora aplikacji dla przedsiębiorstw wygenerowanego przez firmę Microsoft. Możesz zażądać identyfikatora aplikacji dla przedsiębiorstw, tworząc jednorazowy bilet pomocy technicznej za pośrednictwem Azure Portal. Po otrzymaniu identyfikatora aplikacji postępuj zgodnie z instrukcjami, aby zarejestrować aplikację.
W przypadku istniejących kont FHIR możesz wyświetlić wybór szyfrowania kluczy (klucz zarządzany przez usługę lub klucz zarządzany przez klienta) w bloku Baza danych , jak pokazano poniżej. Nie można zmodyfikować opcji konfiguracji po jej wybraniu. Można jednak zmodyfikować i zaktualizować klucz.
Ponadto można utworzyć nową wersję określonego klucza, po której dane zostaną zaszyfrowane przy użyciu nowej wersji bez żadnych przerw w działaniu usługi. Możesz również usunąć dostęp do klucza, aby usunąć dostęp do danych. Po wyłączeniu klucza zapytania spowodują wystąpienie błędu. Jeśli klucz zostanie ponownie włączony, zapytania powiedzą się ponownie.
Korzystanie z programu Azure PowerShell
Za pomocą identyfikatora URI klucza usługi Azure Key Vault można skonfigurować klucz zarządzania kluczem za pomocą programu PowerShell, uruchamiając poniższe polecenie programu PowerShell:
New-AzHealthcareApisService
-Name "myService"
-Kind "fhir-R4"
-ResourceGroupName "myResourceGroup"
-Location "westus2"
-CosmosKeyVaultKeyUri "https://<my-vault>.vault.azure.net/keys/<my-key>"
Korzystanie z interfejsu wiersza polecenia platformy Azure
Podobnie jak w przypadku metody programu PowerShell, możesz skonfigurować klucz cmK, przekazując identyfikator URI klucza usługi Azure Key Vault w parametrze key-vault-key-uri
i uruchamiając poniższe polecenie interfejsu wiersza polecenia:
az healthcareapis service create
--resource-group "myResourceGroup"
--resource-name "myResourceName"
--kind "fhir-R4"
--location "westus2"
--cosmos-db-configuration key-vault-key-uri="https://<my-vault>.vault.azure.net/keys/<my-key>"
Korzystanie z szablonu usługi Azure Resource Manager
Za pomocą identyfikatora URI klucza usługi Azure Key Vault można skonfigurować klucz cmK, przekazując go w ramach właściwości keyVaultKeyUri w obiekcie properties.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"services_myService_name": {
"defaultValue": "myService",
"type": "String"
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.HealthcareApis/services",
"apiVersion": "2020-03-30",
"name": "[parameters('services_myService_name')]",
"location": "westus2",
"kind": "fhir-R4",
"properties": {
"accessPolicies": [],
"cosmosDbConfiguration": {
"offerThroughput": 400,
"keyVaultKeyUri": "https://<my-vault>.vault.azure.net/keys/<my-key>"
},
"authenticationConfiguration": {
"authority": "https://login.microsoftonline.com/72f988bf-86f1-41af-91ab-2d7cd011db47",
"audience": "[concat('https://', parameters('services_myService_name'), '.azurehealthcareapis.com')]",
"smartProxyEnabled": false
},
"corsConfiguration": {
"origins": [],
"headers": [],
"methods": [],
"maxAge": 0,
"allowCredentials": false
}
}
}
]
}
Szablon można wdrożyć przy użyciu następującego skryptu programu PowerShell:
$resourceGroupName = "myResourceGroup"
$accountName = "mycosmosaccount"
$accountLocation = "West US 2"
$keyVaultKeyUri = "https://<my-vault>.vault.azure.net/keys/<my-key>"
New-AzResourceGroupDeployment `
-ResourceGroupName $resourceGroupName `
-TemplateFile "deploy.json" `
-accountName $accountName `
-location $accountLocation `
-keyVaultKeyUri $keyVaultKeyUri
Następne kroki
W tym artykule przedstawiono sposób konfigurowania kluczy zarządzanych przez klienta magazynowanych przy użyciu Azure Portal, programu PowerShell, interfejsu wiersza polecenia i szablonu Resource Manager. Aby uzyskać więcej informacji, zobacz sekcję Azure Cosmos DB FAQ (Często zadawane pytania dotyczące usługi Azure Cosmos DB).
FHIR® jest zastrzeżonym znakiem towarowym HL7 i jest używany z uprawnieniem HL7 .