Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 


파일 암호화 오류 - Recovery policy configured for this system contains invalid recovery certificate


어느 순간부터, 탐색기에서 제공되는 파일 암호화(EFS: Encrypting File System)를 할 때 다음과 같은 오류가 발생하엿습니다.

[그림 1: 파일 암호화 오류]
recovery_policy_configure_error_1.png
recovery_policy_configure_error_8.png

"
An error occurred applying attributes to the file:

...[폴더 경로]...

Recovery policy configured for this system contains invalid recovery certificate.

파일에 특성을 적용하는 중 오류가 발생했습니다.

...[폴더 경로]...

이 시스템에 대해 구성된 복구 정책에 올바르지 않은 복구 인증서가 포함되어 있습니다.
"



이상하지요... EFS에 사용되는 인증서는 self-signed 유형으로 이미 생성해 놓았고, 해보신 분들은 아시겠지만 비스타가 만들어주는 인증서는 그 만료기간이 무척 길게(100년) 만들어지니 웬만해선 별다른 문제가 있을 수도 없습니다.

할 수 없이, 또 구글링을 하기 시작했고, 도움이 될 만한 토픽을 2가지 정도 발견했습니다.

How do I get EFS working on a domain joined computer?
; http://social.technet.microsoft.com/Forums/en-US/winserverfiles/thread/5c0bf259-a1eb-4cae-b812-b43584007337/

Error message when client computers encrypt a file in a Windows Server 2003 domain: “Recovery policy configured for this system contains invalid recovery certificate” 
; http://support.microsoft.com/?kbid=937536

도메인 이야기가 나오길래 떠오르는 것이 있었는데, 최근 무선랜 관련해서 회사에 문제가 있어 모든 컴퓨터를 도메인에 가입한 적이 있었다는 점. 우선, 제 계정에 연결된 EFS 인증서는 문제가 없었기 때문에 도메인 컨트롤러 측의 그룹 정책 편집기를 확인해 보았습니다. 역시나,,, 기본 제공되어 있던 "Administrator" 인증서가 이미 만료된 것이었습니다.

그래서, 위의 2번째 링크에 제공된 KB937536에 제시된 방법을 이용해서 다음과 같이 새로운 인증서를 생성했습니다.

C:\Temp\csp>cipher /r:themyth_file_enc_v2
Please type in the password to protect your .PFX file:
Please retype the password to confirm:


Your .CER file was created successfully.
Your .PFX file was created successfully.

C:\Temp\csp>dir
 Volume in drive C has no label.
 Volume Serial Number is C6E7-7F99

 Directory of C:\Temp\csp

2008-12-23  오전 09:21    <DIR>          .
2008-12-23  오전 09:21    <DIR>          ..
2008-12-23  오전 09:21               844 themyth_file_enc_v2.CER
2008-12-23  오전 09:21             2,630 themyth_file_enc_v2.PFX
               2 File(s)          3,474 bytes
               2 Dir(s)   8,988,729,344 bytes free

C:\Temp\csp>

이렇게 생성된 새로운 인증서를 "[그림 2]"에서 보는 것처럼 "Default Domain Policy GPO" 의 "Computer Configuration" / "Windows Settings" / "Security Settings" / "Public Key Policies" / "Encrypting File System" 안에서 "Add Recovery Agent Wizard"를 이용해서 연결했습니다. (한글 윈도우즈의 경우: "컴퓨터 구성" / "Windows 설정" / "보안 설정" / "공개 키 정책" / "암호화 파일 시스템")

[그림 2: "Add Recovery Agent Wizard" 경로]
recovery_policy_configure_error_2.png
(위의 이미지는, 보안상 도메인 컨트롤러의 GPO 화면이 아닌, 제 컴퓨터의 GPO 화면을 올렸습니다. 하지만 구성 경로는 동일합니다.)

그리고, "gpupdate /force"를 실행하고, 제 로컬 컴퓨터를 다시 재부팅했습니다.

그걸로 문제 해결 끝!



[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 4/10/2022]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...
NoWriterDateCnt.TitleFile(s)
12441정성태12/4/202015048오류 유형: 690. robocopy - ERROR : No Destination Directory Specified.
12440정성태12/4/202016674오류 유형: 689. SignTool Error: Invalid option: /as
12439정성태12/4/202018861디버깅 기술: 176. windbg - 특정 Win32 API에서 BP가 안 걸리는 경우 (2) [1]
12438정성태12/2/202017962오류 유형: 688. .Visual C++ - Error C2011 'sockaddr': 'struct' type redefinition
12437정성태12/1/202018196VS.NET IDE: 155. pfx의 암호 키 파일을 Visual Studio 없이 등록하는 방법
12436정성태12/1/202018325오류 유형: 687. .NET Core 2.2 빌드 - error MSB4018: The "RazorTagHelper" task failed unexpectedly.
12435정성태12/1/202025539Windows: 181. 윈도우 환경에서 클라이언트 소켓의 최대 접속 수 (4) - ReuseUnicastPort를 이용한 포트 고갈 문제 해결 [1]파일 다운로드1
12434정성태11/30/202019341Windows: 180. C# - dynamicport 값의 범위를 알아내는 방법
12433정성태11/29/202017961Windows: 179. 윈도우 환경에서 클라이언트 소켓의 최대 접속 수 (3) - SO_PORT_SCALABILITY파일 다운로드1
12432정성태11/29/202019538Windows: 178. 윈도우 환경에서 클라이언트 소켓의 최대 접속 수 (2) - SO_REUSEADDR [1]파일 다운로드1
12431정성태11/27/202016283.NET Framework: 976. UnmanagedCallersOnly + C# 9.0 함수 포인터 사용 시 x86 빌드에서 오동작하는 문제파일 다운로드1
12430정성태11/27/202018741오류 유형: 686. Ubuntu - E: The repository 'cdrom://...' does not have a Release file.
12429정성태11/25/202018918디버깅 기술: 175. windbg - 특정 Win32 API에서 BP가 안 걸리는 경우
12428정성태11/25/202016999VS.NET IDE: 154. Visual Studio - .NET Core App 실행 시 dotnet.exe 실행 화면만 나오는 문제
12427정성태11/24/202017767.NET Framework: 975. .NET Core를 직접 호스팅해 (runtimeconfig.json 없이) EXE만 배포해 실행파일 다운로드1
12426정성태11/24/202016190오류 유형: 685. WinDbg Preview - error InitTypeRead
12425정성태11/24/202017869VC++: 141. Visual C++ - "Treat Warnings As Errors" 옵션이 꺼져 있는데도 일부 경고가 에러 처리되는 경우
12424정성태11/24/202018100VC++: 140. C++의 연산자 동의어(operator synonyms), 대체 토큰 [1]
12423정성태11/22/202018729.NET Framework: 974. C# 9.0 - (16) 제약 조건이 없는 형식 매개변수 주석(Unconstrained type parameter annotations)파일 다운로드1
12422정성태11/21/202016176.NET Framework: 973. .NET 5, .NET Framework에서만 허용하는 UnmanagedCallersOnly 사용예파일 다운로드1
12421정성태11/19/202015413.NET Framework: 972. DNNE가 출력한 NE DLL을 직접 생성하는 방법파일 다운로드1
12420정성태11/19/202015469오류 유형: 684. Visual C++ - MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance
12419정성태11/19/202016263VC++: 139. Visual C++ - .NET Core의 nethost.lib와 정적 링크파일 다운로드1
12418정성태11/19/202018501오류 유형: 683. Visual C++ - error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MDd_DynamicDebug'파일 다운로드1
12417정성태11/19/202016319오류 유형: 682. Visual C++ - warning LNK4099: PDB '...pdb' was not found with '...lib(pch.obj)' or at '...pdb'; linking object as if no debug info
12416정성태11/19/202017469오류 유형: 681. Visual C++ - error LNK2001: unresolved external symbol _CrtDbgReport
... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...