가져온 PKCS 인증서를 Intune을 사용하여 구성 및 사용
Microsoft Intune은 주로 이메일 프로필을 이용한 S/MIME 암호화에 사용하는, 가져온 공개 키 쌍 (PKCS) 인증서 사용을 지원합니다. Intune의 특정 이메일 프로필은 S/MIME를 활성화해 S/MIME 서명 인증서와 S/MIME 암호화 인증서를 정의하는 기능을 지원합니다.
중요
이 Microsoft Tech Community 블로그에 발표된 대로 ADAL(Azure Active Directory 인증 라이브러리)에 대한 지원은 2022년 12월에 종료됩니다. 사용자 PFX 인증서를 Intune 가져오기 위해 PowerShell 스크립트 또는 사용자 지정 코드가 계속 작동하려면 MSAL(Microsoft 인증 라이브러리)을 활용하도록 업데이트해야 합니다. 또한 향후 인증 문제를 방지하기 위해 Microsoft Entra ID 등록한 후 전역 Intune 애플리케이션 ID를 앱에 할당된 고유한 애플리케이션(클라이언트) ID로 업데이트해야 합니다.
GitHub에서 PFX 인증서 가져오기를 간소화하는 데 도움이 되는 샘플 PowerShell 스크립트가 MSAL 및 Microsoft Entra 애플리케이션(클라이언트) ID를 참조하도록 업데이트되었습니다. 이 문서의 스크립트 샘플도 해당하는 경우 업데이트됩니다.
자세한 내용은 GitHub에서 PFXImport PowerShell 프로젝트 추가 정보 파일을 보고 업데이트된 샘플 스크립트를 다운로드합니다.
S/MIME 암호화는 이메일을 특정 인증서로 암호화하기 때문에 해독하기가 어렵습니다.
- 암호를 해독하려면 이메일을 읽는 디바이스에서 이메일을 암호화한 인증서의 프라이빗 키가 있어야 합니다.
- 디바이스에서 인증서가 만료되기 전에 디바이스가 새 이메일의 암호를 계속 해독할 수 있도록 새 인증서를 가져와야 합니다. 이러한 인증서는 갱신이 지원되지 않습니다.
- 암호화 인증서는 정기적으로 갱신됩니다. 따라서 이전 이메일을 계속 해독할 수 있도록 디바이스에 이전 인증서를 유지해야 할 수 있습니다.
모든 디바이스에서 동일한 인증서를 사용해야 하므로, SCEP나 PKCS 인증서 프로필은 이 목적으로 사용할 수 없습니다. 디바이스마다 고유한 인증서를 전달하기 때문입니다.
S/MIME를 Intune에서 사용하는 방법에 대한 자세한 내용은 S/MIME를 사용하여 메일 암호화를 참조하세요.
지원되는 플랫폼
Intune은 다음 플랫폼에 대한 PFX 인증서 가져오기를 지원합니다.
- Android 장치 관리자
- Android Enterprise:
- 완전 관리형
- 회사 소유 회사 프로필
- 개인 소유 회사 프로필
- iOS/iPadOS
- macOS
- Windows 10/11
중요
Microsoft Intune 2024년 12월 31일에 GMS(Google Mobile Services)에 액세스할 수 있는 디바이스에서 Android 디바이스 관리자 관리에 대한 지원을 종료합니다. 해당 날짜 이후에는 디바이스 등록, 기술 지원, 버그 수정 및 보안 수정을 사용할 수 없습니다. 현재 디바이스 관리자 관리를 사용하는 경우 지원이 종료되기 전에 Intune 다른 Android 관리 옵션으로 전환하는 것이 좋습니다. 자세한 내용은 GMS 디바이스에서 Android 디바이스 관리자에 대한 지원 종료를 참조하세요.
요구 사항
가져온 PKCS 인증서를 Intune에서 사용하려면 다음 인프라가 필요합니다.
Microsoft Intune용 인증서 커넥터:
이 인증서 커넥터는 특정 사용자의 S/MIME 메일 암호화를 위해 Intune으로 가져온 PFX 파일에 대한 요청을 처리합니다. 설치한 각 커넥터가 업로드된 PFX 파일의 암호를 암호화하는 데 사용되는 프라이빗 키에 액세스할 수 있는지 확인합니다.
인증서 커넥터에 대한 자세한 내용은 다음을 참조하세요.
Windows Server:
인증서 커넥터는 커넥터 필수 조건을 충족하는 Windows Server에 설치됩니다.
Visual Studio 2015 이상(선택 사항):
도우미 PowerShell 모듈을 cmdlet으로 빌드해 PFX 인증서를 Microsoft Intune으로 가져오려면 Visual Studio를 사용해야 합니다. 도우미 PowerShell cmdlet을 가져오는 방법은 GitHub의 PFXImport PowerShell 프로젝트를 참조하세요.
작업 방법
가져온 PFX 인증서를 Intune을 사용해 사용자에게 배포할 때는 디바이스 외에 다음과 같은 두 요소도 사용합니다.
Intune 서비스: PFX 인증서를 암호화된 상태로 보관하고 사용자 디바이스에 대한 인증서 배포를 처리합니다. 인증서의 프라이빗 키를 보호하는 암호는 HSM(하드웨어 보안 모듈)이나 Windows 암호화를 이용해 업로드되기 전에 암호화되기 때문에, Intune은 절대로 프라이빗 키에 액세스할 수 없습니다.
Microsoft Intune용 인증서 커넥터: Intune으로 가져온 PFX 인증서를 디바이스가 요청하면 암호화된 암호, 인증서, 디바이스의 퍼블릭 키가 커넥터에 전송됩니다. 커넥터는 온-프레미스 프라이빗 키를 이용해 암호를 해독하고, 디바이스 키를 이용해 암호를 다시 암호화한 다음(iOS 사용 시에는 plist 프로필도 암호화) 인증서를 Intune으로 재전송합니다. 그러면 Intune은 인증서를 디바이스에 전송하고, 디바이스는 디바이스의 프라이빗 키로 인증서 암호를 해독한 다음 인증서를 설치합니다.
PFX 인증서를 Intune으로 가져오기
사용자 PFX 인증서를 Intune으로 가져올 때는 Microsoft Graph를 사용합니다. 도우미 GitHub PFXImport PowerShell Project를 이용하면 cmdlet을 이용해 작업을 쉽게 진행할 수 있습니다.
Graph를 이용하는 자체 사용자 지정 솔루션을 사용하고 싶다면 userPFXCertificate 리소스 종류를 사용하세요.
'PFXImport PowerShell Project' cmdlet 빌드
PowerShell cmdlet을 사용하려면 Visual Studio를 이용해 프로젝트를 직접 빌드해야 합니다. 프로세스는 간단하며, 서버에서 실행할 때는 워크스테이션에서 실행하는 것이 좋습니다.
GitHub에서 Intune-Resource-Access 리포지토리로 이동한 다음, 리포지토리를 Git와 함께 컴퓨터에 다운로드하거나 복제하세요.
.\Intune-Resource-Access-develop\src\PFXImportPowershell\
로 이동한 다음 PFXImportPS.sln 파일을 이용해 Visual Studio로 프로젝트를 엽니다.상단 메뉴에서 디버그를 릴리스로 변경합니다.
빌드로 이동해 Build PFXImportPS를 선택합니다. 잠시 후 Visual Studio 왼쪽 아래에 빌드 성공 확인이 표시됩니다.
빌드 프로세스는
.\Intune-Resource-Access-develop\src\PFXImportPowershell\PFXImportPS\bin\Release
에서 PowerShell Module을 사용해 새 폴더를 만듭니다.이 릴리스 폴더는 다음 단계에서 사용합니다.
암호화 공개 키 만들기
PFX 인증서 및 관련 프라이빗 키를 Intune으로 가져옵니다. 프라이빗 키를 보호하는 암호는 온-프레미스에 저장된 공개 키로 암호화됩니다. Windows 암호화, 하드웨어 보안 모듈 또는 다른 암호화 유형을 이용해 공개/프라이빗 키 쌍을 생성하고 저장할 수 있습니다. 사용하는 암호화 유형에 따라 공개/프라이빗 키 쌍을 파일 형식으로 내보내 백업할 수도 있습니다.
PowerShell 모듈은 Windows 암호화를 사용하여 키를 만드는 메서드를 제공합니다. 다른 도구를 이용해 키를 만들 수도 있습니다.
Windows 암호화를 이용해 암호화 키 만들기
Visual Studio가 만든 ‘릴리스’ 폴더를 Microsoft Intune용 인증서 커넥터를 설치한 서버에 복사합니다. 이 폴더에는 PowerShell 모듈이 있습니다.
서버에서 관리자 권한으로 PowerShell을 열고 PowerShell 모듈이 있는 릴리스 폴더로 이동합니다.
모듈을 가져오려면
Import-Module .\IntunePfxImport.psd1
을 실행해 모듈을 가져옵니다.그런 다음
Add-IntuneKspKey -ProviderName "Microsoft Software Key Storage Provider" -KeyName "PFXEncryptionKey"
를 실행합니다.팁
PFX 인증서를 가져올 때 사용한 공급자를 다시 선택해야 합니다. Microsoft 소프트웨어 키 저장소 공급자를 이용할 수 있지만, 다른 공급자를 사용할 수도 있습니다. 키 이름도 예제로 제공되며, 원하는 다른 키 이름을 사용해도 됩니다.
워크스테이션에서 인증서를 가져오려는 경우 다음 명령을 사용하여 이 키를 파일로 내보낼 수 있습니다.
Export-IntunePublicKey -ProviderName "<ProviderName>" -KeyName "<KeyName>" -FilePath "<File path\Filename.PFX>"
가져온 PFX 인증서를 제대로 처리하려면 Microsoft Intune용 인증서 커넥터를 호스트하는 각 서버로 프라이빗 키를 가져와야 합니다.
HSM(하드웨어 보안 모듈) 사용
HSM(하드웨어 보안 모듈)을 사용하여 공개/프라이빗 키 쌍을 생성하고 저장할 수 있습니다. 자세한 내용은 HSM 공급자의 설명서를 참조하세요.
PFX 인증서 가져오기
다음 프로세스는 PFX 인증서를 가져오는 예제로 PowerShell cmdlet을 사용합니다. 요구 사항에 맞는 다양한 옵션을 선택할 수 있습니다.
옵션은 다음과 같습니다.
용도(태그를 기준으로 인증서를 그룹화):
- 할당되지 않음
- smimeEncryption
- smimeSigning
패딩 체계:
- oaepSha256
- oaepSha384
- oaepSha512
키를 만들 때 사용한 공급자와 일치하는 키 저장소 공급자를 선택합니다.
.pfx 인증서 가져오기
공급자가 제공한 설명서에 따라 아무 CA(인증 기관)에서 인증서를 내보냅니다. Microsoft Active Directory 인증서 서비스의 경우에는 이 샘플 스크립트를 사용하면 됩니다.
서버에서 관리자 권한으로 PowerShell을 연 다음 PowerShell 모듈 IntunePfxImport.psd1이 있는 릴리스 폴더로 이동합니다.
참고
IntunePfxImport.psd1을 실행하기 전에 GCC High 및 DoD 테넌트에 다음과 같은 변경을 수행해야 합니다.
텍스트 편집기 또는 PowerShell ISE를 사용하여 파일을 편집합니다. 그러면 GCC High 환경의 서비스 엔드포인트가 업데이트됩니다. 이러한 업데이트는 .com 접미사에서 .us 접미사로 URI를 변경합니다. IntunePfxImport.psd1 안에는 총 두 개의 업데이트가 있습니다. 하나는 AuthURI 업데이트이고, 두 번째는 GraphURI 업데이트입니다.
PrivateData = @{ AuthURI = "login.microsoftonline.us" GraphURI = "https://graph.microsoft.us" SchemaVersion = "beta" ClientId = "00000000-0000-0000-0000-000000000000" # Client Id from Azure app registration ClientSecret = "" # client secret from app registration when using application permissions to authenticate TenantId = "00000000-0000-0000-0000-000000000000" # TenantId is required when using client secret }
변경 내용을 저장한 후 PowerShell을 다시 시작합니다.
모듈을 가져오려면
Import-Module .\IntunePfxImport.psd1
을 실행합니다.Intune Graph에 인증하려면
Set-IntuneAuthenticationToken -AdminUserName "<Admin-UPN>"
을 실행합니다.참고
인증은 Graph를 대상으로 실행하기 때문에 AppID 사용 권한을 제공해야 합니다. 이 유틸리티를 처음 사용한다면 전역 관리자가 필요합니다. PowerShell cmdle은 PowerShell Intune 샘플이 사용하는 것과 같은 AppID를 사용합니다.
가져오는 각 PFX 파일의 암호를
$SecureFilePassword = ConvertTo-SecureString -String "<PFXPassword>" -AsPlainText -Force
를 실행해 안전한 문자열로 변환합니다.UserPFXCertificate 개체를 만들려면
$userPFXObject = New-IntuneUserPfxCertificate -PathToPfxFile "<FullPathPFXToCert>" $SecureFilePassword "<UserUPN>" "<ProviderName>" "<KeyName>" "<IntendedPurpose>"
을 실행합니다.예:
$userPFXObject = New-IntuneUserPfxCertificate -PathToPfxFile "C:\temp\userA.pfx" $SecureFilePassword "userA@contoso.com" "Microsoft Software Key Storage Provider" "PFXEncryptionKey" "smimeEncryption"
참고
커넥터를 설치한 서버가 아닌 다른 시스템에서 인증서를 가져올 때는, 키 파일 경로를 포함하는 다음 명령을 사용해야 합니다.
$userPFXObject = New-IntuneUserPfxCertificate -PathToPfxFile "<FullPathToPFX>" $SecureFilePassword "<UserUPN>" "<ProviderName>" "<KeyName>" "<IntendedPurpose>" "<PaddingScheme>" "<File path to public key file>"
VPN은 IntendedPurpose로 지원되지 않습니다.
Import-IntuneUserPfxCertificate -CertificateList $userPFXObject
를 실행해 UserPFXCertificate 개체를 Intune으로 가져옵니다.인증서를 가져왔는지 확인하려면
Get-IntuneUserPfxCertificate -UserList "<UserUPN>"
을 실행합니다.자체에서 만료되기를 기다리지 않고 Microsoft Entra 토큰 캐시를 클린 모범 사례로 실행합니다.
Remove-IntuneAuthenticationToken
사용 가능한 다른 명령에 대한 자세한 내용은 GitHub의 PFXImport PowerShell 프로젝트에 있는 추가 정보 파일을 참조하세요.
PKCS가 가져온 인증서 프로필 만들기
Intune 인증서를 가져온 후 PKCS 가져온 인증서 프로필을 만들고 Microsoft Entra 그룹에 할당합니다.
참고
PKCS가 가져온 인증서 프로필을 만들면 프로필의 용도 및 KSP(키 스토리지 공급자) 값은 읽기 전용이며 편집할 수 없습니다. 이러한 설정 중 하나에 다른 값이 필요한 경우 새 프로필을 만들어 배포합니다.
Microsoft Intune 관리 센터에 로그인합니다.
디바이스관리 디바이스>>구성>만들기를 선택하고 이동합니다.
다음 속성을 입력합니다.
- 플랫폼: 장치 플랫폼을 선택합니다.
- 프로필: PKCS 가져온 인증서를 선택합니다. 또는 템플릿>PKCS 가져온 인증서를 선택합니다.
만들기를 선택합니다.
기본에서 다음 속성을 입력합니다.
- 이름: 프로필에 대한 설명이 포함된 이름을 입력합니다. 나중에 쉽게 식별할 수 있도록 프로필 이름을 지정합니다. 예를 들어 전체 회사에 대한 PKCS 가져온 인증서 프로필은 좋은 프로필 이름입니다.
- 설명: 프로필에 대한 설명을 입력합니다. 이 설정은 선택 사항이지만 권장됩니다.
다음을 선택합니다.
구성 설정에서 다음 속성을 입력합니다.
용도: 이 프로필에 가져온 인증서의 용도를 지정합니다. 관리자는 자신이 원하는 다양한 용도(S/MIME 서명, S/MIME 암호화 등)로 인증서를 가져올 수 있습니다. 인증서 프로필에서 선택한 용도는 인증서 프로필과 가져온 인증서를 올바르게 일치시킵니다. 용도는 가져온 인증서를 그룹화하는 태그이며, 태그와 함께 가져온 인증서가 용도를 반드시 충족하는 것은 아닙니다.
KSP(키 스토리지 공급자): Windows의 경우 디바이스에서 키를 저장할 위치를 선택합니다.
이 단계는 완전 관리형, 전용 및 Corporate-Owned 회사 프로필에 대한 Android Enterprise 디바이스 프로필에만 적용됩니다.
앱에서 인증서 액세스를 구성하여 애플리케이션에 인증서 액세스 권한을 부여하는 방법을 관리합니다. 다음 중에서 선택합니다.
- 앱에 대한 사용자 승인 필요(기본값) – 사용자는 모든 애플리케이션에서 인증서 사용을 승인해야 합니다.
- 특정 앱에 대해 자동으로 부여(다른 앱에 대한 사용자 승인 필요) – 이 옵션을 사용하여 앱 추가를 선택한 다음, 사용자 상호 작용 없이 인증서를 자동으로 사용하는 하나 이상의 앱을 선택합니다.
다음을 선택합니다.
할당에서 프로필을 수신할 사용자 또는 그룹을 선택합니다. 프로필 할당에 대한 자세한 내용은 사용자 및 장치 프로필 할당을 참조하세요.
다음을 선택합니다.
(Windows 10/11만 해당) 적용 가능성 규칙에서 이 프로필의 할당을 구체화하는 적용 가능성 규칙을 지정합니다. 디바이스의 OS 에디션 또는 버전에 따라 프로필을 할당하거나 할당하지 않도록 선택할 수 있습니다.
자세한 내용은 Microsoft Intune에서 디바이스 프로필 만들기에서 적용 가능성 규칙을 참조하세요.
다음을 선택합니다.
검토 + 만들기에서 설정을 검토합니다. 만들기를 선택하면 변경 사항이 저장되고 프로필이 할당됩니다. 정책은 프로필 목록에도 표시됩니다.
타사 파트너 지원
다음 파트너는 PFX 인증서를 Intune에 가져오는 데 사용할 수 있는 지원되는 메서드 또는 도구를 제공합니다.
DigiCert
DigiCert PKI 플랫폼 서비스를 사용하는 경우 Intune S/MIME 인증서용 DigiCert 가져오기 도구를 사용하여 PFX 인증서를 Intune으로 가져올 수 있습니다. 이 도구를 사용하면 이 문서의 앞부분에 설명된 대로 PFX 인증서를 Intune으로 가져오기 섹션의 지침을 따라야 합니다.
도구를 얻는 방법을 포함하여 DigiCert 가져오기 도구에 대한 자세한 내용은 DigiCert 기술 자료에서 https://knowledge.digicert.com/tutorials/microsoft-intune.html를 참조하세요.
EverTrust
EverTrust를 PKI 솔루션, 독립 실행형으로 사용하거나 기존 PKI와 결합한 경우 PFX 인증서를 Intune에 가져오도록 EverTrust Horizon을 구성할 수 있습니다. 통합을 완료한 후에는 이 문서의 앞부분에 설명된 PFX 인증서를 Intune으로 가져오기 섹션의 지침을 따르지 않아도 됩니다.
Intune과 keyTalk의 통합에 대한 자세한 내용은 https://evertrust.fr/horizon-and-intune-integration/을 참조하세요.
KeyTalk
KeyTalk 서비스를 사용하는 경우 PFX 인증서를 Intune으로 가져오도록 KeyTalk 서비스를 구성할 수 있습니다. 통합을 완료한 후에는 이 문서의 앞부분에 설명된 PFX 인증서를 Intune으로 가져오기 섹션의 지침을 따르지 않아도 됩니다.
Intune과 keyTalk의 통합에 대한 자세한 내용은 KeyTalk 기술 자료에서 https://keytalk.com/support를 참조하세요.
다음 단계
Intune UI는 엔드포인트용 Microsoft Defender 시나리오에 대한 보안 관리 시나리오에 대해 Windows Server 디바이스를 Windows 클라이언트와 구별하여 표시합니다.
엔드포인트용 Microsoft Defender 보안 관리(MDE 보안 구성) 시나리오를 지원하기 위해 Intune 곧 Microsoft Entra ID Windows Server를 Windows Server를 실행하는 디바이스 또는 실행되는 디바이스의 경우 Windows로 구분합니다. Windows 10 또는 Windows 11.
이 변경으로 엔드포인트용 Microsoft Defender 보안 구성에 대한 정책 대상을 개선할 수 있습니다. 예를 들어 Windows Server 디바이스만 구성하거나 Windows 클라이언트 디바이스(Windows 10/11)로 구성된 동적 그룹을 사용할 수 있습니다.