파이썬으로 Azure Key Vault 관리하기

Azure Key Vault는 기밀 정보 및 암호화 키를 안전하게 관리하기 위한 서비스입니다. 파이썬을 사용하여 Azure Key Vault를 쉽게 관리할 수 있습니다. 이 블로그 포스트에서는 파이썬을 사용하여 Azure Key Vault를 생성하고, 키를 추가하고, 사용하는 방법에 대해 알아보겠습니다.

목차

Azure Key Vault 생성

Azure Portal에서 Azure Key Vault를 생성할 수 있지만, 파이썬을 사용하여 자동화할 수도 있습니다. Azure Key Vault 라이브러리를 설치한 후, 다음과 같이 파이썬 코드를 작성하여 Key Vault를 생성할 수 있습니다.

import os
from azure.identity import DefaultAzureCredential
from azure.keyvault.secrets import SecretClient
from azure.keyvault.keys import KeyClient
from azure.keyvault.certificates import CertificateClient
from azure.keyvault.keys.crypto import CryptographyClient

# Azure Credential 인증 설정
credential = DefaultAzureCredential()

# Key Vault 클라이언트 초기화
key_vault_url = os.environ["KEY_VAULT_URL"]
secret_client = SecretClient(vault_url=key_vault_url, credential=credential)
key_client = KeyClient(vault_url=key_vault_url, credential=credential)
certificate_client = CertificateClient(vault_url=key_vault_url, credential=credential)

# Key Vault 생성
key_vault_name = "my-key-vault"
location = "koreacentral"
key_vault_properties = {
    "sku": {"name": "standard"},
    "tenant_id": os.environ["TENANT_ID"],
    "access_policies": [],
}
key_vault = key_client.create_key_vault(key_vault_name, location, properties=key_vault_properties)

print(f"Created Key Vault: {key_vault.name}")

키 추가하기

Key Vault를 만든 후에는 암호 및 키를 Key Vault에 추가할 수 있습니다. 예를 들어, 텍스트 비밀을 추가하는 방법은 다음과 같습니다.

# 텍스트 비밀 추가
secret_name = "my-secret"
secret_value = "my-secret-value"
secret_client.set_secret(secret_name, secret_value)

print(f"Added secret '{secret_name}' to Key Vault.")

키 사용하기

Key Vault에 저장된 비밀이나 키를 사용할 때는 다음과 같이 코드를 작성할 수 있습니다.

# 키 불러오기
secret = secret_client.get_secret(secret_name)
print(f"Secret value: {secret.value}")

결론

파이썬을 사용하여 Azure Key Vault를 관리하는 방법에 대해 소개했습니다. 이를 통해 기밀 정보와 암호화 키를 안전하게 보관하고, 필요한 경우 사용할 수 있습니다. Azure Key Vault의 다양한 기능을 적극 활용하여 보안을 강화하고 비밀 정보를 안전하게 관리하세요.

참고 자료: Azure Key Vault 라이브러리