Konfigurowanie kluczy zarządzanych przez klienta magazynowanych

Ważne

Usługa Azure API for FHIR zostanie wycofana 30 września 2026 r. Postępuj zgodnie ze strategiami migracji, aby przejść do usługi Azure Health Data Services FHIR® do tej daty. Ze względu na wycofanie usługi Azure API for FHIR nowe wdrożenia nie będą możliwe od 1 kwietnia 2025 r. Usługa FHIR usług Azure Health Data Services to rozwinięta wersja usługi Azure API for FHIR, która umożliwia klientom zarządzanie usługami FHIR, DICOM i MedTech z integracją z innymi usługami platformy Azure.

Podczas tworzenia nowego konta usługi Azure API 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 wybranego klucza i zarządzania nim.

Na platformie Azure jest to zwykle realizowane przy użyciu klucza szyfrowania w usłudze Azure Key Vault klienta. Usługi Azure SQL, Azure Storage i Azure Cosmos DB to kilka przykładów zapewniających tę możliwość. Interfejs API platformy Azure dla platformy FHIR korzysta z tej obsługi z usługi Azure Cosmos DB. Podczas tworzenia konta możesz określić identyfikator URI klucza usługi Azure Key Vault. Ten klucz jest przekazywany do usługi Azure Cosmos DB podczas aprowizowania konta bazy danych. Po wysłaniu żądania fast healthcare Interoperability Resources (FHIR) usługa Azure Cosmos DB pobiera klucz i używa go do szyfrowania/odszyfrowania danych.

Aby rozpocząć pracę, zapoznaj się z następującymi linkami:

Przy użyciu witryny Azure Portal

Podczas tworzenia konta usługi Azure API for FHIR w witrynie Azure Portal zauważysz opcję konfiguracji szyfrowania danych w obszarze Ustawienia bazy danych na karcie Ustawienia dodatkowe. Domyślnie jest wybrana opcja klucza zarządzanego 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żesz wybrać z poziomu platformy KeyPicker:

KeyPicker

Klucz usługi Azure Key Vault można również określić tutaj, wybierając opcję Klucz zarządzany przez klienta.

Możesz również wprowadzić identyfikator URI klucza, jak pokazano poniżej.

Tworzenie interfejsu API platformy Azure dla standardu FHIR

Ważne

Upewnij się, że wszystkie uprawnienia dla usługi Azure Key Vault 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 usługi 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żywanie kluczy zarządzanych przez klienta w regionach Brazylii Południowej, Azji Wschodniej i Azji Południowo-Wschodniej wymaga identyfikatora aplikacji przedsiębiorstwa wygenerowanego przez firmę Microsoft. Możesz zażądać identyfikatora aplikacji dla przedsiębiorstw, tworząc jednorazowy bilet pomocy technicznej za pośrednictwem witryny Azure Portal. Po otrzymaniu identyfikatora aplikacji postępuj zgodnie z instrukcjami, aby zarejestrować aplikację.

W przypadku istniejących kont FHIR można wyświetlić wybór szyfrowania klucza (klucz zarządzany przez usługę lub klucz zarządzany przez klienta) w bloku Baza danych w następujący sposób. Nie można zmodyfikować opcji konfiguracji po jej wybraniu. Można jednak zmodyfikować i zaktualizować klucz.

baza danych

Ponadto można utworzyć nową wersję określonego klucza, po której dane są szyfrowane 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. Gdy klucz jest wyłączony, zapytania spowodują błąd. 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 cmK przy użyciu programu PowerShell, uruchamiając następujące 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 zarządzania kluczami, przekazując identyfikator URI klucza usługi Azure Key Vault pod parametrem key-vault-key-uri i uruchamiając następujące 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 pod 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 witryny Azure Portal, programu PowerShell, interfejsu wiersza polecenia i szablonu usługi Resource Manager. Więcej informacji można znaleźć w sekcji Często zadawane pytania dotyczące usługi Azure Cosmos DB.

Uwaga

FHIR® jest zastrzeżonym znakiem towarowym HL7 i jest używany z uprawnieniem HL7.