تكوين المفاتيح التي يديرها العميل في وضع الثبات

عند إنشاء واجهة برمجة تطبيقات Azure جديدة لحساب FHIR، يتم تشفير بياناتك باستخدام مفاتيح تديرها Microsoft بشكل افتراضي. الآن، يمكنك إضافة طبقة ثانية من التشفير للبيانات باستخدام المفتاح الخاص بك الذي تختاره وتديره بنفسك.

في Azure، يتم تحقيق ذلك عادة باستخدام مفتاح تشفير في Key Vault Azure الخاص بالعميل. Azure SQL وAzure Storage وAzure Cosmos DB هي بعض الأمثلة التي توفر هذه الإمكانية اليوم. تستفيد واجهة برمجة تطبيقات Azure ل FHIR من هذا الدعم من Azure Cosmos DB. عند إنشاء حساب، سيكون لديك خيار تحديد عنوان URI لمفتاح Azure Key Vault. سيتم تمرير هذا المفتاح إلى Azure Cosmos DB عند توفير حساب DB. عند إجراء طلب Fast Healthcare Interoperability Resources (FHIR®)، يجلب Azure Cosmos DB مفتاحك ويستخدمه لتشفير/فك تشفير البيانات.

للبدء، راجع الارتباطات التالية:

استخدام مدخل Azure

عند إنشاء واجهة برمجة تطبيقات Azure لحساب FHIR على مدخل Microsoft Azure، ستلاحظ خيار تكوين تشفير البيانات ضمن إعدادات قاعدة البيانات في علامة التبويب إعدادات إضافية . بشكل افتراضي، سيتم تحديد خيار المفتاح المدار بواسطة الخدمة.

هام

يتوفر خيار تشفير البيانات فقط عند إنشاء واجهة برمجة تطبيقات Azure ل FHIR ولا يمكن تغييرها بعد ذلك. ومع ذلك، يمكنك عرض مفتاح التشفير وتحديثه إذا تم تحديد خيار المفتاح المدار من قبل العميل .

يمكنك اختيار المفتاح الخاص بك من KeyPicker:

KeyPicker

يمكنك أيضا تحديد مفتاح Azure Key Vault هنا عن طريق تحديد خيار المفتاح المدار من قبل العميل.

يمكنك أيضا إدخال مفتاح URI هنا:

إنشاء واجهة برمجة تطبيقات Azure ل FHIR

هام

تأكد من تعيين جميع أذونات Azure Key Vault بشكل مناسب. لمزيد من المعلومات، راجع إضافة نهج وصول إلى مثيل Azure Key Vault. بالإضافة إلى ذلك، تأكد من تمكين الحذف المبدئي في خصائص Key Vault. سيؤدي عدم إكمال هذه الخطوات إلى حدوث خطأ في التوزيع. لمزيد من المعلومات، راجع التحقق مما إذا تم تمكين الحذف المبدئي على مخزن مفاتيح وتمكين الحذف المبدئي.

ملاحظة

يتطلب استخدام المفاتيح التي يديرها العميل في مناطق جنوب البرازيل وشرق آسيا وجنوب شرق آسيا Azure معرف تطبيق المؤسسة الذي أنشأته Microsoft. يمكنك طلب معرف تطبيق المؤسسة عن طريق إنشاء تذكرة دعم لمرة واحدة من خلال مدخل Microsoft Azure. بعد تلقي معرف التطبيق، اتبع الإرشادات لتسجيل التطبيق.

بالنسبة لحسابات FHIR الموجودة، يمكنك عرض اختيار تشفير المفتاح (المفتاح المدار بواسطة الخدمة أو المفتاح المدار بواسطة العميل) في جزء قاعدة البيانات كما هو موضح أدناه. لا يمكن تعديل خيار التكوين بمجرد تحديده. ومع ذلك، يمكنك تعديل المفتاح وتحديثه.

قاعدة البيانات

بالإضافة إلى ذلك، يمكنك إنشاء إصدار جديد من المفتاح المحدد، وبعد ذلك سيتم تشفير بياناتك باستخدام الإصدار الجديد دون أي انقطاع في الخدمة. يمكنك أيضا إزالة الوصول إلى المفتاح لإزالة الوصول إلى البيانات. عند تعطيل المفتاح، ستؤدي الاستعلامات إلى حدوث خطأ. إذا تم إعادة تمكين المفتاح، فستنجح الاستعلامات مرة أخرى.

استخدام Azure PowerShell

باستخدام عنوان URI لمفتاح Azure Key Vault، يمكنك تكوين CMK باستخدام PowerShell عن طريق تشغيل أمر PowerShell أدناه:

New-AzHealthcareApisService
    -Name "myService"
    -Kind "fhir-R4"
    -ResourceGroupName "myResourceGroup"
    -Location "westus2"
    -CosmosKeyVaultKeyUri "https://<my-vault>.vault.azure.net/keys/<my-key>"

استخدام Azure CLI

كما هو الحال مع أسلوب PowerShell، يمكنك تكوين CMK عن طريق تمرير URI مفتاح Azure Key Vault ضمن المعلمة key-vault-key-uri وتشغيل أمر CLI أدناه:

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>"

استخدام قالب Azure Resource Manager

باستخدام عنوان URI لمفتاح Azure Key Vault، يمكنك تكوين CMK عن طريق تمريره ضمن الخاصية keyVaultKeyUri في كائن الخصائص.

{
    "$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
                }
            }
        }
    ]
}

ويمكنك نشر القالب باستخدام البرنامج النصي 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

الخطوات التالية

في هذه المقالة، تعلمت كيفية تكوين المفاتيح التي يديرها العميل في وضع الراحة باستخدام مدخل Microsoft Azure وPowerShell وCLI وقالب Resource Manager. يمكنك الرجوع إلى قسم الأسئلة المتداولة حول Azure Cosmos DB لمزيد من المعلومات.

FHIR® هي علامة تجارية مسجلة ل HL7 وتستخدم بإذن من HL7.