개요
"클라우드"공급자에서 내부 데이터 센터로 다시 마이그레이션 된 일부 가상 서버에서이 문제가 발생했습니다. 근본 원인은 %SystemRoot%\System32\catroot2
폴더 에 대한 권한이었습니다 . 정상 서버의 해당 폴더에 대한 권한과 마이그레이션 된 서버의 권한 간에는 많은 차이가있었습니다. 나는 그 중 하나가 TrustedInstaller
없는 것이 믿습니다 full access
.
추가 증상
이벤트 뷰어에서 응용 프로그램 로그를 보면 많은 오류가 발생했습니다.
Source: CAPI2
EventId: 257
Text: The Cryptographic Services service failed to initialize the Catalog Database. The ESENT error was: -1032.
Source: ESENT
EventId: 490
Text: Catalog Database (416) Catalog Database: An attempt to open the file "C:\Windows\system32\CatRoot2\{127D0A1D-4EF2-11D1-8608-00C04FC295EE}\catdb" for read / write access failed with system error 5 (0x00000005): "Access is denied. ". The open file operation will fail with error -1032 (0xfffffbf8).
단서는 ESENT 오류 텍스트에 있습니다. 즉, catroot2 폴더 아래의 파일에 액세스 할 때 권한 문제가 발생합니다.
해결
신뢰할 수있는 설치 프로그램 계정에 catroot2 폴더와 그 하위 항목에 대한 모든 권한을 부여하십시오.
충분하지 않은 경우, 비교 icacls %systemroot%\system32\catroot2
를 위해 정상적인 서버 에서 실행 하면 다음과 같이 나타납니다.
C:\Windows\system32\catroot2 NT SERVICE\CryptSvc:(F)
NT SERVICE\CryptSvc:(OI)(CI)(IO)(F)
NT SERVICE\TrustedInstaller:(I)(F)
NT SERVICE\TrustedInstaller:(I)(CI)(IO)(F)
NT AUTHORITY\SYSTEM:(I)(F)
NT AUTHORITY\SYSTEM:(I)(OI)(CI)(IO)(F)
BUILTIN\Administrators:(I)(F)
BUILTIN\Administrators:(I)(OI)(CI)(IO)(F)
BUILTIN\Users:(I)(RX)
BUILTIN\Users:(I)(OI)(CI)(IO)(GR,GE)
CREATOR OWNER:(I)(OI)(CI)(IO)(F)
APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES:(I)(RX)
APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES:(I)(OI)(CI)(IO)(GR,GE)
주의 : Trusted Installer를 추가하려면 로컬 컴퓨터 계정에서을 검색해야합니다 nt service\trustedinstaller
.
의 사용 권한을 교체 한 후 확인란을 catroot2
클릭하여 replace permissions on child objects & containers
하위 항목의 사용 권한도 확인하십시오.
수정 프로그램 자체를 다시 부팅 할 필요는 없습니다 (물론 업데이트가 다시 시작되면 다시 부팅해야 할 수도 있음).