2011-02-26 5 views
1

Windows에서 내 응용 프로그램 이외의 응용 프로그램에서 일부 암호화 데이터를 보호 할 수있는 방법이 있습니까? 나는 사용자로부터 보호하는 것에 대해 걱정하지 않습니다. 이것은 분명히 불가능합니다. 오히려, 내 자신 이외의 다른 응용 프로그램이 아닌 것으로부터입니다.Windows의 다른 응용 프로그램에서 직접 액세스하지 못하도록 데이터 보호

단순히 시스템 계정에서만 데이터에 액세스 할 수있는 서비스로 응용 프로그램의 핵심 코드를 실행할 수 있지만 응용 프로그램을 토큰에서 실행하는 것이 더 좋지는 않을지 알고 싶습니다. 사용자의 정상적인 토큰

또한 가능한 경우 .NET에 종속되지 않는 것을 선호합니다.

+1

사용자가 수행하는 모든 작업은 계정으로 실행되는 일부 응용 프로그램을 통해 이루어 지므로 "다른 응용 프로그램으로부터 보호"와 "사용자로부터 보호"사이에는 차이가 없습니다. –

+0

@Ben이지만 "_non elevated_ applications로부터 보호"와 "사용자로부터 보호"에는 차이가 있습니다. – bdonlan

+0

다른 식으로 말하자면, 응용 프로그램이 안전 데스크탑에서 동의 대화 상자를 표시하지 않고 내 보안 저장소를 읽을 수 있도록하려면 (비스타/7에서) 적어도 필요하지 않습니다. – bdonlan

답변

0

CryptProtectData 은 사용자 별 암호화를 수행 할 수 있습니다 (CRYPTPROTECT_LOCAL_MACHINE 플래그를 전달하지 않으면 사용자 별입니다). 그러나 사용자 단위 암호화를 선택하는 경우 승격 된 관리자를 비롯한 다른 사용자는 암호를 해독하지 않습니다.

+0

이것은 유용한 구성 요소 일 수 있지만 시스템의 경우, 다른 비 상승 응용 프로그램을 보호하지 못합니다. 그 이유는 여기에 있습니다. – bdonlan

+0

나는 그 목표가 성취하기가 더 어렵다고 생각합니다. 응용 프로그램에는 Windows에서 ID가 없지만 사용자와 컴퓨터에는 ID가 없습니다. –

관련 문제