빠른 시작: PowerShell을 사용하여 Azure Key Vault에서 비밀을 설정하고 검색
Azure Key Vault는 보안 비밀 저장소로 작동하는 클라우드 서비스입니다. 키, 암호, 인증서 및 기타 비밀을 안전하게 저장할 수 있습니다. Key Vault에 대한 자세한 내용을 보려면 개요를 살펴보세요. 이 빠른 시작에서는 Azure PowerShell을 사용하여 키 자격 증명 모음을 만듭니다. 그런 다음, 새로 만든 자격 증명 모음에 비밀을 저장합니다.
Azure 구독이 없는 경우 시작하기 전에 체험 계정을 만듭니다.
Azure Cloud Shell
Azure는 브라우저를 통해 사용할 수 있는 대화형 셸 환경인 Azure Cloud Shell을 호스트합니다. Cloud Shell에서 Bash 또는 PowerShell을 사용하여 Azure 서비스 작업을 수행할 수 있습니다. 로컬 환경에 아무 것도 설치할 필요 없이 Azure Cloud Shell의 미리 설치된 명령을 사용하여 이 문서의 코드를 실행할 수 있습니다.
Azure Cloud Shell을 시작하려면 다음을 수행합니다.
옵션 | 예제/링크 |
---|---|
코드 또는 명령 블록의 오른쪽 상단에서 시도를 선택합니다. 시도를 선택해도 코드 또는 명령이 Cloud Shell에 자동으로 복사되지 않습니다. | |
https://shell.azure.com으로 이동하거나 Cloud Shell 시작 단추를 선택하여 브라우저에서 Cloud Shell을 엽니다. | |
Azure Portal의 오른쪽 위에 있는 메뉴 모음에서 Cloud Shell 단추를 선택합니다. |
Azure Cloud Shell을 사용하려면:
Cloud Shell을 시작합니다.
코드 블록(또는 명령 블록)에서 복사 단추를 선택하여 코드 또는 명령을 복사합니다.
Windows 및 Linux에서 Ctrl+Shift+V를 선택하거나 macOS에서 Cmd+Shift+V를 선택하여 코드 또는 명령을 Cloud Shell 세션에 붙여넣습니다.
Enter를 선택하여 코드 또는 명령을 실행합니다.
PowerShell을 로컬로 설치하고 사용하도록 선택하려는 경우 이 자습서를 진행하려면 Azure PowerShell 모듈 버전 5.0.0 이상이 필요합니다. Get-InstalledModule -Name Az
명령을 실행하여 버전을 찾습니다. 업그레이드해야 하는 경우 Azure PowerShell 설치 방법을 참조하세요. 또한 PowerShell을 로컬로 실행하는 경우 Connect-AzAccount
를 실행하여 Azure와 연결해야 합니다.
Connect-AzAccount
리소스 그룹 만들기
리소스 그룹은 Azure 리소스가 배포 및 관리되는 논리적 컨테이너입니다. Azure PowerShell New-AzResourceGroup cmdlet을 사용하여 eastus 위치에 myResourceGroup이라는 리소스 그룹을 만듭니다.
New-AzResourceGroup -Name "myResourceGroup" -Location "EastUS"
키 자격 증명 모음 만들기
Azure PowerShell New-AzKeyVault cmdlet을 사용하여 이전 단계에서 리소스 그룹에 Key Vault를 만듭니다. 다음과 같은 몇 가지 정보를 제공해야 합니다.
Key Vault 이름: 숫자(0~9), 문자(a~z, A~Z) 및 하이픈(-)만 포함할 수 있는 3~24자 문자열입니다.
Important
각 Key Vault마다 고유한 이름이 있어야 합니다. 다음 예제에서는 <your-unique-keyvault-name>을 키 자격 증명 모음의 이름으로 바꿉니다.
리소스 그룹 이름: myResourceGroup
위치: EastUS
New-AzKeyVault -Name "<your-unique-keyvault-name>" -ResourceGroupName "myResourceGroup" -Location "EastUS"
이 cmdlet의 출력에는 새로 만든 Key Vault의 속성이 표시됩니다. 다음 두 가지 속성에 유의합니다.
- 자격 증명 모음 이름: -Name 매개 변수에 제공한 이름입니다.
- 자격 증명 모음 URI: 이 예에서 이 URI는 https://<your-unique-keyvault-name>.vault.azure.net/입니다. REST API를 통해 사용자 자격 증명 모음을 사용하는 애플리케이션은 URI를 사용해야 합니다.
이때 사용자의 Azure 계정은 이 새 Vault에서 모든 작업을 수행할 권한이 있는 유일한 계정입니다.
Key Vault에서 비밀을 관리할 수 있는 사용자 계정 권한을 부여합니다.
RBAC(역할 기반 액세스 제어)를 통해 키 자격 증명 모음에 권한을 부여하려면, Azure PowerShell cmdlet New-AzRoleAssignment를 사용하여 ‘UPN’(사용자 계정 이름)에 역할을 할당합니다.
New-AzRoleAssignment -SignInName "<upn>" -RoleDefinitionName "Key Vault Secrets Officer" -Scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.KeyVault/vaults/<your-unique-keyvault-name>"
<upn>, <subscription-id>, <resource-group-name> 및 <your-unique-keyvault-name>을 실제 값으로 바꿉니다. UPN은 일반적으로 이메일 주소 형식(예: username@domain.com)입니다.
Key Vault에 비밀 추가
자격 증명 모음에 비밀을 추가하려면 몇 가지 단계만 수행하면 됩니다. 이 경우 애플리케이션에서 사용할 수 있는 암호를 추가합니다. 암호는 ExamplePassword로 지정되며 hVFkk965BuUv 값을 저장합니다.
먼저 다음 명령을 실행하고 보안 문자열로 변환하라는 메시지가 표시되면 hVFkk965BuUv 값을 입력합니다.
$secretvalue = Read-Host -Prompt 'Enter the example password' -AsSecureString
그런 다음, Azure PowerShell Set-AzKeyVaultSecret cmdlet을 사용하여 값 hVFkk965BuUv를 통해 ExamplePassword라는 Key Vault에 비밀을 만듭니다.
$secret = Set-AzKeyVaultSecret -VaultName "<your-unique-keyvault-name>" -Name "ExamplePassword" -SecretValue $secretvalue
Key Vault에서 비밀 검색
비밀에 포함된 값을 일반 텍스트로 보려면 Azure PowerShell Get-AzKeyVaultSecret cmdlet을 사용합니다.
$secret = Get-AzKeyVaultSecret -VaultName "<your-unique-keyvault-name>" -Name "ExamplePassword" -AsPlainText
지금까지 Key Vault를 만들고 비밀을 저장하고, 검색했습니다.
리소스 정리
이 컬렉션의 다른 빠른 시작과 자습서는 이 빠른 시작을 기반으로 하여 작성됩니다. 다른 빠른 시작 및 자습서를 계속 진행하려는 경우 이러한 리소스를 유지하는 것이 좋습니다.
더 이상 필요하지 않은 경우 Remove-AzResourceGroup 명령을 사용하여 리소스 그룹, Key Vault 및 모든 관련 리소스를 제거할 수 있습니다.
Remove-AzResourceGroup -Name myResourceGroup
다음 단계
이 빠른 시작에서는 Key Vault를 만들어 비밀을 저장했습니다. Key Vault 및 이를 애플리케이션과 통합하는 방법에 대해 자세히 알아보려면 아래 문서로 계속 진행하세요.
- Azure Key Vault 개요 참조
- Key Vault에서 여러 줄 비밀을 저장하는 방법을 알아봅니다.
- Azure PowerShell Key Vault cmdlets에 대한 참조를 참조하세요.
- Azure Key Vault 보안 개요를 검토하세요.