빠른 시작: PowerShell을 사용하여 관리형 HSM 프로비전 및 활성화
이 빠른 시작에서는 PowerShell을 사용하여 Azure Key Vault 관리되는 HSM(하드웨어 보안 모듈)을 만들고 활성화합니다. 관리형 HSM은 FIPS 140-2 수준 3 유효성이 검사된 HSM을 사용하여 클라우드 애플리케이션용 암호화 키를 보호할 수 있는 완전 관리형 고가용 단일 테넌트 표준 규격 클라우드 서비스입니다. 관리형 HSM에 대한 자세한 내용을 보려면 개요를 살펴보세요.
필수 조건
Azure 구독이 없는 경우 시작하기 전에 체험 계정을 만듭니다.
- Azure PowerShell을 로컬로 사용하도록 선택하는 경우:
- 최신 버전의 Az PowerShell 모듈을 설치합니다.
- Connect-AzAccount cmdlet을 사용하여 Azure 계정에 로그인합니다.
- Azure Cloud Shell을 사용하도록 선택하는 경우:
- 자세한 내용은 Azure Cloud Shell 개요를 참조하세요.
리소스 그룹 만들기
리소스 그룹은 Azure 리소스가 배포 및 관리되는 논리적 컨테이너입니다. Azure PowerShell New-AzResourceGroup cmdlet을 사용하여 노르웨이에서 가장 가까운 위치에 myResourceGroup이라는 리소스 그룹을 만듭니다.
New-AzResourceGroup -Name "myResourceGroup" -Location "norwayeast"
사용자 보안 주체 ID 받기
관리되는 HSM을 만들려면 Microsoft Entra 보안 주체 ID가 필요합니다. ID를 가져오려면 Azure PowerShell Get-AzADUser cmdlet을 사용하여 이메일 주소를 "UserPrincipalName" 매개 변수에 전달합니다.
Get-AzADUser -UserPrincipalName "<your@email.address>"
주체 ID는 "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" 형식으로 반환됩니다.
관리형 HSM 만들기
관리형 HSM 만들기는 2단계 프로세스입니다.
- 관리형 HSM 리소스를 프로비저닝합니다.
- 보안 도메인이라는 아티팩트를 다운로드하여 관리형 HSM을 활성화합니다.
관리형 HSM 프로비전
Azure PowerShell New-AzKeyVaultManagedHsm cmdlet을 사용하여 새로운 관리형 HSM을 만듭니다. 다음과 같은 몇 가지 정보를 제공해야 합니다.
관리형 HSM 이름: 숫자(0-9), 문자(a-z, A-Z) 및 하이픈(-)만 포함할 수 있는 3~24자의 문자열
Important
각 관리형 HSM에는 고유한 이름이 있어야 합니다. 다음 예제에서는 <your-unique-managed-hsm-name>을 관리형 HSM의 이름으로 바꿉니다.
리소스 그룹 이름: myResourceGroup
위치: 노르웨이 동부.
보안 주체 ID: 마지막 섹션에서 가져온 Microsoft Entra 보안 주체 ID를 "Administrator" 매개 변수로 전달합니다.
New-AzKeyVaultManagedHsm -Name "your-unique-managed-hsm-name" -ResourceGroupName "myResourceGroup" -Location "norwayeast" -Administrator "your-principal-ID" -SoftDeleteRetentionInDays "# of days to retain the managed hsm after softdelete"
참고 항목
create 명령은 몇 분 정도 걸릴 수 있습니다. 성공적으로 반환되면 HSM을 활성화할 준비가 된 것입니다.
이 cmdlet의 출력은 새로 만든 관리형 HSM의 속성을 보여줍니다. 다음 두 가지 속성에 유의합니다.
- 이름: 관리형 HSM에 대해 제공한 이름입니다.
- HsmUri: 이 예제에서 HsmUri는 https://https://<your-unique-managed-hsm-name>.managedhsm.azure.net/입니다. REST API를 통해 사용자 자격 증명 모음을 사용하는 애플리케이션은 URI를 사용해야 합니다.
이때 사용자의 Azure 계정은 이 새 HSM에서 모든 작업을 수행할 권한이 있는 유일한 계정입니다.
관리형 HSM 활성화
HSM이 활성화되기 전까지는 모든 데이터 평면 명령이 비활성화됩니다. 키를 만들거나 역할을 할당할 수 없습니다. create 명령을 실행하는 동안 할당된 지정된 관리자만 HSM을 활성화할 수 있습니다. HSM을 활성화하려면 보안 도메인을 다운로드해야 합니다.
HSM을 활성화하려면 다음이 필요합니다.
- 최소 3개의 RSA 키 쌍을 제공(최대 10개)
- 보안 도메인의 암호를 해독하는 데 필요한 최소 키 수를 지정(쿼럼이라고 함)
HSM을 활성화하려면 적어도 3개(최대 10개)의 RSA 공개 키를 HSM에 전송합니다. HSM은 이러한 키를 사용하여 보안 도메인을 암호화하고 다시 보냅니다. 이 보안 도메인 다운로드가 성공적으로 완료되면 HSM을 사용할 준비가 된 것입니다. 또한 보안 도메인의 암호를 해독하는 데 필요한 최소 프라이빗 키 수인 쿼럼을 지정해야 합니다.
다음 예제에서는 openssl
(여기에서 Windows에 사용)을 사용하여 자체 서명된 인증서 3개를 생성하는 방법을 보여줍니다.
openssl req -newkey rsa:2048 -nodes -keyout cert_0.key -x509 -days 365 -out cert_0.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_1.key -x509 -days 365 -out cert_1.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_2.key -x509 -days 365 -out cert_2.cer
참고 항목
인증서가 "만료"된 경우에도 보안 도메인을 복원하는 데 사용할 수 있습니다.
Important
이 단계에서 생성된 RSA 키 쌍 및 보안 도메인 파일을 안전하게 만들어 저장합니다.
Azure PowerShell Export-AzKeyVaultSecurityDomain cmdlet을 사용하여 보안 도메인을 다운로드하고 관리형 HSM을 활성화합니다. 다음 예제에서는 3개의 RSA 키 쌍을 사용하고(이 명령에는 공개 키만 필요함) 쿼럼을 2로 설정합니다.
Export-AzKeyVaultSecurityDomain -Name "<your-unique-managed-hsm-name>" -Certificates "cert_0.cer", "cert_1.cer", "cert_2.cer" -OutputPath "MHSMsd.ps.json" -Quorum 2
보안 도메인 파일과 RSA 키 쌍을 안전하게 저장하세요. 재해 복구를 위해 또는 동일한 보안 도메인을 공유하는 다른 관리형 HSM을 만들기 위해 둘이 키를 공유할 수 있도록 해야 합니다.
보안 도메인을 성공적으로 다운로드한 후 HSM은 활성 상태가 되고 사용할 준비가 됩니다.
리소스 정리
이 컬렉션의 다른 빠른 시작과 자습서는 이 빠른 시작을 기반으로 하여 작성됩니다. 다른 빠른 시작 및 자습서를 계속 진행하려는 경우 이러한 리소스를 유지하는 것이 좋습니다.
더 이상 필요하지 않은 경우 Azure PowerShell Remove-AzResourceGroup cmdlet을 사용하여 리소스 그룹 및 모든 관련 리소스를 제거할 수 있습니다.
Remove-AzResourceGroup -Name "myResourceGroup"
Warning
리소스 그룹을 삭제하면 관리형 HSM이 일시 삭제된 상태로 전환됩니다. 관리형 HSM을 제거할 때까지 요금이 계속 청구됩니다. 관리형 HSM 일시 삭제. 및 제거 보호 참조
다음 단계
이 빠른 시작에서는 관리형 HSM을 만들고 활성화했습니다. 관리형 HSM에 대한 자세한 내용 및 이를 애플리케이션과 통합하는 방법을 알아보려면 다음 문서를 계속 진행하세요.
- Azure Key Vault 개요 참조
- Azure PowerShell Key Vault cmdlets에 대한 참조를 참조하세요.
- Azure Key Vault 보안 개요를 검토하세요.