9장. 스마트 카드로 PKINIT를 사용하여 Active Directory 사용자로 인증
AD(Active Directory) 사용자는 스마트 카드를 사용하여 IdM에 연결된 데스크탑 클라이언트 시스템에 인증하고 클라이언트에서 SSO(Single Sign-On) 인증에 대해 TGT(Kerberos 티켓)를 받을 수 있습니다. 이 프로세스는 스마트 카드 인증이 필요한 AD 사용자 계정을 대상으로 하므로 암호 기반 로그인을 사용할 수 없습니다.
이 지침을 사용하여 Kerberos 서비스에 pkinit 인증 표시기 요구 사항이 있는 IdM 리소스에 액세스할 수 없습니다. 이는 프로세스에서 IdM KDC가 아닌 AD KDC(Active Directory Kerberos Distribution Center)에서 TGT를 가져오기 때문입니다. 결과적으로 TGT에는 필요한 인증 표시기가 포함되어 있지 않으며 IdM 서비스에서 액세스를 거부합니다.
IdM 사용자가 IdM 서비스에 액세스할 수 있도록 PKINIT 인증을 활성화하려면 Kerberos 티켓 정책 관리를 참조하십시오.
사전 요구 사항
- IdM 서버는 스마트 카드 인증을 위해 구성됩니다. 자세한 내용은 스마트 카드 인증을 위한 IdM 서버 구성 또는 Ansible을 사용하여 스마트 카드 인증을 위한 IdM 서버 구성 을 참조하십시오.
- 클라이언트는 스마트 카드 인증을 위해 구성됩니다. 자세한 내용은 스마트 카드 인증을 위한 IdM 클라이언트 구성 또는 Ansible을 사용하여 스마트 카드 인증을 위한 IdM 클라이언트 구성 을 참조하십시오.
-
krb5-pkinit패키지가 설치되어 있습니다. - AD 서버는 스마트 카드 인증서를 발급한 CA(인증 기관)를 신뢰하도록 구성됩니다. CA 인증서를 NTAuth 저장소로 가져오고( Microsoft 지원참조) CA를 신뢰할 수 있는 CA로 추가합니다. 자세한 내용은 Active Directory 설명서를 참조하십시오.
절차
스마트 카드 인증서를 발급한 CA를 신뢰하도록 Kerberos 클라이언트를 구성합니다.
-
IdM 클라이언트에서
/etc/krb5.conf파일을 엽니다. 파일에 다음 행을 추가합니다.
[realms] AD.DOMAIN.COM = { pkinit_eku_checking = kpServerAuth pkinit_kdc_hostname = adserver.ad.domain.com }
-
IdM 클라이언트에서
사용자 인증서에 CRL(Certificate Revocation list) 배포 지점 확장이 포함되어 있지 않은 경우 취소 오류를 무시하도록 AD를 구성합니다.
다음 REG 형식의 콘텐츠를 일반 텍스트 파일에 저장하고 Windows 레지스트리로 가져옵니다.
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Kdc] "UseCachedCRLOnlyAndIgnoreRevocationUnknownErrors"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA\Kerberos\Parameters] "UseCachedCRLOnlyAndIgnoreRevocationUnknownErrors"=dword:00000001또는
regedit.exe애플리케이션을 사용하여 값을 수동으로 설정할 수 있습니다.- Windows 시스템을 재부팅하여 변경 사항을 적용합니다.
Identity Management 클라이언트에서
kinit유틸리티를 사용하여 인증합니다. 사용자 이름과 도메인 이름을 사용하여 Active Directory 사용자를 지정합니다.$ kinit -X X509_user_identity='PKCS11:opensc-pkcs11.so' ad_user@AD.DOMAIN.COM-X옵션은opensc-pkcs11.so 모듈을pre-authentication 속성으로 지정합니다.