Краткое руководство. Создание ресурса Azure Managed CCF с помощью пакета SDK Azure для Python

Azure Managed CCF (Managed CCF) — это новая и высокозащищенная служба для развертывания конфиденциальных приложений. Дополнительные сведения об Управляемом CCF Azure см. в разделе "О платформе управляемого конфиденциального консорциума Azure".

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.

Справочная библиотека документации по | API для пакета исходного кода | (индекс пакета Python) Management Library

Необходимые компоненты

Настройка

В этом кратком руководстве для проверки подлинности пользователя в службах Azure используется библиотека удостоверений Azure, а также Azure CLI или Azure PowerShell. Разработчики также могут использовать Visual Studio или Visual Studio Code для проверки подлинности своих вызовов. Дополнительные сведения см. в статье Проверка подлинности клиента с использованием клиентской библиотеки удостоверений Azure.

Вход в Azure

Вход в Azure с помощью команды az login Azure CLI или командлета Connect-AzAccount Azure PowerShell.

az login

Если в CLI или PowerShell можно запустить браузер по умолчанию, откроется браузер со страницей входа в Azure. В противном случае самостоятельно откройте страницу https://aka.ms/devicelogin и введите код авторизации, отображаемый в терминале.

При запросе выполните вход в браузере с помощью учетных данных.

Установка пакетов

В терминале или в командной строке создайте подходящую папку проекта, а затем создайте и активируйте виртуальную среду Python, как описано в разделе Использование виртуальных окружений Python.

Установите клиентскую библиотеку удостоверений Azure Active Directory.

pip install azure-identity

Установите клиентская библиотека уровня управления конфиденциальными реестрами Azure. Минимальная поддерживаемая версия — 2.0.0b3 или более поздняя.

pip install azure-mgmt-confidentialledger==2.0.0b3

Создание или изменение группы ресурсов

Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure и управление ими. Используйте командлет Azure PowerShell New-AzResourceGroup , чтобы создать группу ресурсов с именем myResourceGroup в расположении southcentralus .

New-AzResourceGroup -Name "myResourceGroup" -Location "SouthCentralUS"

Регистрация поставщика ресурсов

Перед созданием ресурса Необходимо зарегистрировать тип ресурса Azure Managed CCF в подписке.

az feature registration create --namespace Microsoft.ConfidentialLedger --name ManagedCCF

az provider register --namespace Microsoft.ConfidentialLedger

Создание членов

Создайте пару ключей для элемента. После завершения следующих команд открытый ключ члена сохраняется и member0_cert.pem закрытый ключ сохраняется в member0_privk.pem.

openssl ecparam -out "member0_privk.pem" -name "secp384r1" -genkey
openssl req -new -key "member0_privk.pem" -x509 -nodes -days 365 -out "member0_cert.pem" -"sha384" -subj=/CN="member0"

Создание приложения Python

Использование клиентской библиотеки уровня управления

Библиотека плоскости управления (azure.mgmt.confidentialledger) позволяет выполнять операции с управляемыми ресурсами CCF, такими как создание и удаление, перечисление ресурсов, связанных с подпиской, и просмотр сведений о конкретном ресурсе. Следующий фрагмент кода создает и просматривает свойства ресурса Управляемого CCF.

from azure.identity import DefaultAzureCredential

# Import the Azure Managed CCF management plane library
from azure.mgmt.confidentialledger import ConfidentialLedger

import os

sub_id = "0000000-0000-0000-0000-000000000001"
client = ConfidentialLedger(credential=DefaultAzureCredential(), subscription_id=sub_id)

# ********** Create a Managed CCF app ********** 
app_properties = {
    "location": "southcentralus",
    "properties": {
      "deploymentType": {
        "appSourceUri": "",
        "languageRuntime": "JS"
      },
      "memberIdentityCertificates": [ # Multiple members can be supplied
        {
          "certificate": "-----BEGIN CERTIFICATE-----\nMIIBvzC...f0ZoeNw==\n-----END CERTIFICATE-----",
          "tags": { "owner": "ITAdmin1" }
        }
      ],
      "nodeCount": 3 # Maximum allowed value is 9
    },
    "tags": { "costcenter": "12345" }
}

result = client.managed_ccf.begin_create("myResourceGroup", "confidentialbillingapp", app_properties).result()

# ********** Retrieve the Managed CCF app details ********** 
confidential_billing_app = client.managed_ccf.get("myResourceGroup", "confidentialbillingapp")

# ********** Delete the Managed CCF app **********
result = client.managed_ccf.begin_delete("myResourceGroup", "confidentialbillingapp").result()

Очистка ресурсов

Другие статьи по управляемым CCF можно создать на основе этого краткого руководства. Если вы планируете продолжить работу с последующими краткими руководствами и руководствами, вы можете оставить эти ресурсы на месте.

В противном случае, когда вы закончите работу с ресурсами, созданными в этой статье, используйте команду azure CLI az group delete для удаления группы ресурсов и всех содержащихся в ней ресурсов.

az group delete --resource-group myResourceGroup

Следующие шаги

В этом кратком руководстве вы создали ресурс Управляемого CCF с помощью пакета SDK Для Python Azure для конфиденциального реестра. Дополнительные сведения об Управляемом CCF Azure и их интеграции с приложениями см. в следующих статьях: