Microsoft Cloud PKI 인증 기관 삭제
Microsoft Intune의 Microsoft Cloud PKI 서비스에서 발급 및 루트 CA(인증 기관)를 삭제합니다. Microsoft Intune 관리 센터에서 다음 작업을 사용하여 테넌트에서 CA(인증 기관)를 관리할 수 있습니다.
- CA 일시 중지 - CA를 일시 중지하여 사용을 중지합니다.
- CA 해지 - 모든 활성 리프 인증서를 해지한 다음 CA를 해지합니다.
- CA 삭제 - Microsoft Intune에서 CA를 삭제하고 제거합니다.
모든 앵커된 발급 CA가 삭제될 때까지 루트 CA를 삭제할 수 없습니다. CA를 일시 중지한 후 마음이 바뀌면 사용을 다시 시작하도록 일시 중지할 수 있습니다. 그러나 CA를 취소하고 삭제하는 작업은 영구적이며 실행 취소할 수 없습니다.
이 문서에서는 관리 센터에서 사용 가능한 작업을 사용하여 Microsoft Intune에서 발급 CA 및 루트 CA를 삭제하는 방법을 설명합니다.
역할 기반 액세스 요구 사항
이러한 관리자 역할은 Microsoft Intune 관리 센터에서 CA를 삭제할 수 있습니다.
- Intune 관리자, 기본 제공 Microsoft Entra 역할
- 사용자 지정 Intune 역할에 다음 Intune 권한이 할당되었습니다.
- CA 읽기
- CA 사용 안 함 및 다시 활성화
- 발급된 리프 인증서 해지
발급 CA 삭제
Microsoft Intune에서 발급 CA를 영구적으로 제거합니다. 루트 CA를 삭제하려는 경우 먼저 다음 단계를 완료하여 해당 CA에 고정된 발급 CA를 삭제합니다.
테넌트 관리>클라우드 PKI로 이동합니다.
사용 가능한 CA 목록에서 활성 발급 CA를 선택합니다. CA를 선택하면 사용 가능한 작업이 열립니다.
일시 중지를 선택합니다.
확인하라는 메시지가 표시되면 다시 일시 중지 를 선택합니다.
참고
발급 CA를 일시 중지한 후:
- 리프 인증서를 발급할 수 없습니다.
- CRL(인증서 해지 목록) 요청 및 AIA 요청에 계속 응답합니다.
CA 목록으로 돌아가 서 새로 고침을 선택합니다. 그런 다음 상태 열 아래를 확인하여 발급 CA가 일시 중지되어 있는지 확인합니다.
일시 중지된 CA를 선택하여 사용 가능한 모든 옵션을 다시 엽니다. 두 가지 새로운 옵션이 나타납니다.
- 다시 시작: 이 옵션은 CA를 일시 중지하고 다시 활성화합니다.
- 해지: 이 옵션은 발급 CA를 해지합니다.
해지를 선택합니다.
팁
이 작업이 작동하려면 CA에 속한 모든 활성 리프 인증서를 이미 해지해야 합니다. 자세한 내용 및 단계는 이 문서의 활성 리프 인증서 해지를 참조하세요.
확인하라는 메시지가 표시되면 취소 를 다시 선택합니다.
중요
이 작업은 실행 취소할 수 없습니다.
참고
발급 CA를 해지한 후:
- CRL 및 AIA 요청에 계속 응답합니다.
- 신뢰 체인 작업을 수행하는 신뢰 당사자에게 더 이상 신뢰되지 않습니다.
- 루트 CA의 CRL은 발급 CA 인증서가 해지되었음을 보여줍니다.
- CA에서 발급한 모든 기존 리프 인증서는 인증을 중지합니다.
CA 목록으로 돌아가 서 새로 고침을 선택합니다. 그런 다음 상태 열 아래를 확인하여 발급 CA가 해지되어 있는지 확인합니다.
취소된 CA를 선택하여 사용 가능한 모든 옵션을 다시 엽니다.
이제 CA를 삭제하는 옵션을 사용할 수 있어야 합니다. 삭제를 선택하여 Microsoft Intune에서 CA를 제거합니다.
확인하라는 메시지가 표시되면 삭제 를 다시 선택합니다.
중요
이 작업은 실행 취소할 수 없습니다.
CA 목록으로 돌아가 서 새로 고침을 선택합니다. 발급 CA가 목록에 더 이상 표시되지 않는지 확인합니다.
루트 CA 삭제
Microsoft Intune에서 루트 CA를 영구적으로 제거합니다.
팁
루트 CA를 삭제하기 전에 고정된 발급 CA를 모두 삭제합니다.
테넌트 관리>클라우드 PKI로 이동합니다.
사용 가능한 CA 목록에서 루트 CA를 선택합니다. CA를 선택하면 사용 가능한 작업이 열립니다.
삭제를 선택하여 Microsoft Intune에서 CA를 제거합니다.
확인하라는 메시지가 표시되면 삭제 를 다시 선택합니다.
중요
이 작업은 실행 취소할 수 없습니다.
CA 목록으로 돌아가 서 새로 고침을 선택합니다. 루트 CA가 목록에 더 이상 표시되지 않는지 확인합니다.
활성 리프 인증서 해지
발급 CA를 해지하려고 할 때 먼저 모든 활성 리프 인증서를 해지하는 것이 중요합니다. 발급 CA에서 한 번에 하나의 리프 인증서를 해지하거나 리프 인증서를 대량 해지할 수 있습니다.
리프 인증서 해지
- Microsoft Intune 관리 센터에서 테넌트 관리>클라우드 PKI로 이동합니다.
- 발급 CA를 선택합니다.
- 모든 인증서 보기를 선택합니다.
- 활성 리프 인증서를 선택한 다음 해지를 선택합니다. 남은 모든 리프 인증서에서 이 단계를 반복합니다.
모든 리프 인증서 해지
이 섹션의 샘플 PowerShell 스크립트를 사용하여 CA에 속한 모든 리프 인증서를 해지할 수 있습니다. 이 스크립트는 Microsoft Intune 테넌트에서 Microsoft Cloud PKI에 대한 정보를 검색하고 테넌트에서 발급 CA에 대한 리프 인증서를 해지합니다.
- 스크립트는 모든 리프 인증서를 검색하고 각 인증서에 대해 해지 작업을 수행합니다.
- 스크립트는 관리자로서 모든 리프 인증서를 해지할지 확인하라는 메시지를 표시합니다.
- 스크립트에는 각 인증서에 대한 확인 프롬프트를 보내는 포함할 수 있는 선택적 구성이 있습니다. 스크립트의 섹션은 샘플에서 주석 처리되므로 해당 파트를 실행하려는 경우 다시 추가합니다.
중요
이 스크립트는 주의해서 사용합니다. 리프 인증서에 대한 해지 작업을 취소할 수 없습니다.
- 실행하기 전에 샘플 스크립트를 검토하여 작동 방식을 더 잘 이해하고 테넌트에 미치는 영향을 고려합니다.
- 먼저 비프로덕션 또는 테스트 테넌트 계정에서 샘플 스크립트를 실행합니다.
이 스크립트는 Microsoft Graph PowerShell 모듈 인 Microsoft.Graph를 설치합니다. 스크립트를 실행하는 디바이스는 모듈을 성공적으로 설치하려면 관리 권한이 있어야 합니다.
발급 Connect-MgGraph
CA에서 리프 인증서를 해지할 수 있는 권한이 있는 관리자가 명령을 실행해야 합니다.
스크립트를 실행하려면 CA ID가 필요합니다. 관리 센터에서 이 정보를 찾으려면 다음을 수행합니다.
테넌트 관리>클라우드 PKI로 이동합니다.
발급 CA를 선택합니다.
브라우저 URL을 확인하여 CA ID를 찾습니다. URL 끝에 있는 하이픈 처리된 영숫자 문자열은 CA ID입니다. 예를 들어 다음 URL에서 CA ID는 f12345-acf1-12ab-1b2a-1a1234567a89입니다.
https://intune.microsoft.com/#view/Microsoft_Intune_DeviceSettings/CaDetails.ReactView/id/f12345-acf1-12ab-1b2a-1a1234567a89
예제 스크립트
관리 워크스테이션에서 샘플 PowerShell 스크립트를 실행합니다. 실행하려면 다음 Intune 권한이 있어야 합니다.
- CA 읽기
- 발급된 리프 인증서 해지
param (
[string]$caId = $(Read-Host "Input CaId")
)
Install-Module Microsoft.Graph
Connect-MgGraph -Scopes "DeviceManagementConfiguration.ReadWrite.All"
Start-Transcript -Path ".\RevokeAllLeafCerts_$($caId)_$(Get-Date -f 'yyyyMMdd-HHmmss').txt"
### Get all leaf certs
$leafCerts = Invoke-MgGraphRequest -Method GET -Uri "https://graph.microsoft.com/beta/devicemanagement/cloudCertificationAuthority/$caId/cloudCertificationAuthorityLeafCertificate"
# Prompt user to confirm data cleanup
$confirmAllDelete = $(Write-Host "Are you 100% sure you want to revoke all $($leafCerts.value.count) certificates for CA $($caId)?" -ForegroundColor Yellow; Write-Host '[Y] Yes' -NoNewline; Write-Host ' [N] No' -ForegroundColor Yellow -NoNewline;
Read-Host " ")
if ($confirmAllDelete.ToLower() -ne "y" -and $confirmAllDelete.ToLower() -ne "yes") {
Write-Host "Aborted"
Stop-Transcript
exit
}
# Iterate on retrieved leaf certs and revoke
foreach ($leafCert in $leafCerts.value)
{
Write-Host ""
if ($leafCert.certificateStatus.ToLower() -eq "revoked") {
Write-Host "LeafCert id: $($leafCert.id), thumbprint: $($leafCert.thumbprint) is already revoked. Skipping"
continue
}
Write-Host "Revoking leafCert id: $($leafCert.id), thumbprint: $($leafCert.thumbprint)"
# Uncomment next five lines to prompt for each cert
# $confirmCertDelete = $(Write-Host "Are you sure you want to revoke leafCert id: $($leafCert.id), thumbprint: $($leafCert.thumbprint), $($leafCert.certificateStatus)?" -ForegroundColor Yellow; Write-Host '[Y] Yes' -NoNewline; Write-Host ' [N] No' -ForegroundColor Yellow -NoNewline; Read-Host " ")
# if ($confirmCertDelete.ToLower() -ne "y" -and $confirmCertDelete.ToLower() -ne "yes") {
# Write-Host "Skipping"
# continue
# }
$currentCertId = $($leafCert.id)
$revokeParams = @{ "leafCertificateId" = $($leafCert.id) }
Invoke-MgGraphRequest -Method POST -Uri "https://graph.microsoft.com/beta/devicemanagement/cloudCertificationAuthority/$caId/revokeLeafCertificate" -Body ($revokeParams|ConvertTo-Json) -ContentType "application/json"
}