다음을 통해 공유


빠른 시작: Python용 Azure SDK를 사용하여 Azure 관리 CCF 리소스 만들기

Azure 관리 CCF(관리 CCF)는 기밀 애플리케이션을 배포하기 위한 새롭고 매우 안전한 서비스입니다. Azure 관리 CCF에 대한 자세한 내용은 Azure 관리 기밀 컨소시엄 프레임워크를 참조하세요.

Azure를 구독하고 있지 않다면 시작하기 전에 Azure 체험 계정을 만듭니다.

API 참조 설명서 | 라이브러리 소스 코드 | 패키지(Python 패키지 인덱스) 관리 라이브러리

필수 조건

설정

이 빠른 시작에서는 Azure CLI 또는 Azure PowerShell과 함께 Azure ID 라이브러리를 사용하여 사용자를 Azure Services에 인증합니다. 개발자는 Visual Studio 또는 Visual Studio Code를 사용하여 해당 호출을 인증할 수도 있습니다. 자세한 내용은 Azure ID 클라이언트 라이브러리를 사용하여 클라이언트 인증을 참조하세요.

Azure에 로그인

Azure CLI az login 명령 또는 Azure PowerShell Connect-AzAccount cmdlet을 사용하여 Azure에 로그인합니다.

az login

CLI 또는 PowerShell이 기본 브라우저를 열 수 있는 경우 기본 브라우저를 열고 Azure 로그인 페이지를 로드합니다. 그렇지 않으면 https://aka.ms/devicelogin을 방문하여 터미널에 표시된 인증 코드를 입력합니다.

메시지가 표시되면 브라우저에서 계정 자격 증명으로 로그인합니다.

패키지 설치

터미널 또는 명령 프롬프트에서 적절한 프로젝트 폴더를 만든 다음, Python 가상 환경 사용에 설명된 대로 Python 가상 환경을 만들고 활성화합니다.

Azure Active Directory ID 클라이언트 라이브러리를 설치합니다.

pip install azure-identity

Azure confidential ledger 관리 평면 클라이언트 라이브러리를 설치합니다. 지원되는 최소 버전은 2.0.0b3 이상입니다.

pip install azure-mgmt-confidentialledger==2.0.0b3

리소스 그룹 만들기

리소스 그룹은 Azure 리소스가 배포 및 관리되는 논리적 컨테이너입니다. Azure PowerShell New-AzResourceGroup cmdlet을 사용하여 myResourceGroup 리소스 그룹을 southcentralus 위치에 만듭니다.

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

리소스 공급자 등록

리소스를 만들기 전에 Azure 관리 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

다음 단계

이 빠른 시작에서는 Confidential Ledger용 Azure Python SDK를 사용하여 관리 CCF 리소스를 만들었습니다. Azure 관리 CCF 및 애플리케이션과 통합하는 방법에 대해 자세히 알아보려면 다음 문서를 계속 진행하세요.