Szybki start: tworzenie zasobu zarządzanego przez platformę Azure CCF przy użyciu zestawu Azure SDK dla języka Python

Azure Managed CCF (Managed CCF) to nowa i wysoce bezpieczna usługa do wdrażania aplikacji poufnych. Aby uzyskać więcej informacji na temat usługi Azure Managed CCF, zobacz About Azure Managed Confidential Consortium Framework (Informacje o platformie Azure Managed Confidential Consortium Framework).

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto platformy Azure.

Dokumentacja interfejsu API — | biblioteka zarządzania pakietem źródłowym biblioteki źródłowej | biblioteki (Python Package Index)

Wymagania wstępne

Ustawienia

W tym przewodniku Szybki start używana jest biblioteka tożsamości platformy Azure wraz z interfejsem wiersza polecenia platformy Azure lub programem Azure PowerShell do uwierzytelniania użytkownika w usługach platformy Azure. Deweloperzy mogą również używać programu Visual Studio lub Visual Studio Code do uwierzytelniania wywołań. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie klienta za pomocą biblioteki klienta usługi Azure Identity.

Logowanie się do platformy Azure

Zaloguj się do platformy Azure przy użyciu polecenia az login interfejsu wiersza polecenia platformy Azure lub polecenia cmdlet azure PowerShell Połączenie-AzAccount.

Jeśli interfejs wiersza polecenia lub program PowerShell może otworzyć domyślną przeglądarkę, zrobi to i załaduje stronę logowania platformy Azure. W przeciwnym razie odwiedź https://aka.ms/devicelogin stronę i wprowadź kod autoryzacji wyświetlany w terminalu.

Jeśli zostanie wyświetlony monit, zaloguj się przy użyciu poświadczeń konta w przeglądarce.

Instalowanie pakietów

W terminalu lub wierszu polecenia utwórz odpowiedni folder projektu, a następnie utwórz i aktywuj środowisko wirtualne języka Python zgodnie z opisem w temacie Używanie środowisk wirtualnych języka Python.

Zainstaluj bibliotekę klienta tożsamości usługi Azure Active Directory:

pip install azure-identity

Zainstaluj bibliotekę klienta płaszczyzny zarządzania poufnymi rejestrami platformy Azure. Minimalna obsługiwana wersja to 2.0.0b3 lub nowsza.

pip install azure-mgmt-confidentialledger==2.0.0b3

Tworzenie grupy zasobów

Grupa zasobów to logiczny kontener przeznaczony do wdrażania zasobów platformy Azure i zarządzania nimi. Użyj polecenia cmdlet New-AzResourceGroup programu Azure PowerShell, aby utworzyć grupę zasobów o nazwie myResourceGroup w lokalizacji southcentralus.

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

Rejestrowanie dostawcy zasobów

Przed utworzeniem zasobu należy zarejestrować typ zasobu CCF zarządzanego przez platformę Azure w ramach subskrypcji.

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

az provider register --namespace Microsoft.ConfidentialLedger

Tworzenie członków

Wygeneruj parę kluczy dla elementu członkowskiego. Po zakończeniu wykonywania poniższych poleceń klucz publiczny członka jest zapisywany w member0_cert.pem pliku i klucz prywatny jest zapisywany w pliku 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"

Tworzenie aplikacji w języku Python

Korzystanie z biblioteki klienta płaszczyzny zarządzania

Biblioteka płaszczyzn zarządzania (azure.mgmt.confidentialledger) umożliwia wykonywanie operacji na zarządzanych zasobach CCF, takich jak tworzenie i usuwanie, wyświetlanie listy zasobów skojarzonych z subskrypcją oraz wyświetlanie szczegółów określonego zasobu. Poniższy fragment kodu tworzy i wyświetla właściwości zarządzanego zasobu 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()

Czyszczenie zasobów

Inne artykuły dotyczące zarządzanego programu CCF mogą opierać się na tym przewodniku Szybki start. Jeśli planujesz kontynuować pracę z kolejnymi przewodnikami Szybki start i samouczkami, możesz pozostawić te zasoby na miejscu.

W przeciwnym razie po zakończeniu pracy z zasobami utworzonymi w tym artykule użyj polecenia az group delete interfejsu wiersza polecenia platformy Azure, aby usunąć grupę zasobów i wszystkie zawarte w niej zasoby.

az group delete --resource-group myResourceGroup

Następne kroki

W tym przewodniku Szybki start utworzono zasób zarządzanego programu CCF przy użyciu zestawu Azure Python SDK for Confidential Ledger. Aby dowiedzieć się więcej o usłudze Azure Managed CCF i sposobie jej integracji z aplikacjami, przejdź do następujących artykułów: