2013-04-25 1 views
2

프로젝트에서 우리는 각 클라이언트에 대한 구성 파일을 생성합니다 (또한 구성 파일 대신 각 클라이언트에 sqlite 될 수 있음). 이 파일에는 정책과 같은 중요한 정보가 포함됩니다. 따라서 최종 사용자는 해당 구성 파일 또는 파일의 내용을 추가, 삭제, 변경하지 않아야합니다.클라이언트의 보안 구성 파일

사용자가 내 구성 파일을 포함하는 폴더를 열지 못하게하려면 활성 디렉토리를 사용하려고합니다.

보안 구성 파일을 사용하는 주요 방법이 있습니까?

편집 : 파일을 읽을 물론 속도는 보안과 같은 중요

EDIT2 : 가 나는 DB 서버 내 정책이 whithout 인터넷 연결이 너무 accesible해야하기 때문에 그렇게 할 수 없습니다. 서버는 일정 기간 동안 해당 파일이나 sqlite 테이블을 업데이트합니다. 그리고 저는 C++을 사용하고 있습니다.

답변

0

희망과 꿈을 부끄럽게 생각해서 죄송합니다. 보안 설정이 클라이언트의 설정 파일을 기반으로한다면, 망설입니다.

구성 파일은 응용 프로그램에 의해로드 및 암호 해독되므로 응용 프로그램을 실행할 때 특수 도구를 사용하여 값을 변경할 수 있습니다.

보안이 중요한 경우 클라이언트가 아닌 서버에서 확인하십시오.

+1

.NET? 나는 C++을 사용하고있다. 나는 이해할 수 없었다. – Yavuz

+0

@Yavuz : 죄송합니다.주의를 기울이지는 않았지만 실제로 어떤 기술을 사용하는지는 중요하지 않습니다. 보안이 서버가 아닌 클라이언트 소프트웨어에 구워지면 모두 해킹 당할 수 있습니다. .NET 및 Java와 같은 관리 형 플랫폼을 사용하면 더 쉽게 손상 될 수 있습니다. – Steven

0

보안은 상당히 광범위한 문제입니다. 시스템이 손상된 경우 어떻게됩니까? 누군가 돈을 잃어 버렸습니까? 누군가 게임에서 추가 점수를 얻습니까? 누군가 핵 미사일 발사 코드에 접근 할 수 있습니까? 누군가의 의료 데이터가 대중에게 노출 되는가?

이들 모두는 다소 중요한 보안 문제이지만, 핵 미사일 발사는 누군가가 점수를 올릴 수있는 게임보다 완전히 안전해야한다는 요구가 더 높습니다. 돈과 건강은 분명히 어딘가에서 끝납니다 그 범위의 중간에 우리가 목록에 추가 할 수있는 많은 것들이 있습니다.

또한 보호하려는 "사용자"의 유형도 중요합니다. 국가 수준의 보안 전문가 (예 : FBI, CIA, KGB 등), 취미 해커 또는 평범한 컴퓨터 사용자입니까? 파일을 암호화하면 일반 사용자와 취미 해커가 멈추지 만 국가 안보 전문가는 분명히 그 일을 저지하지 않을 것입니다.

궁극적으로 데이터를 보유한 기계가 데이터를 읽는 방법을 알고 있다면 시스템을 완벽하게 보호 할 수 없습니다. 코드의 키를 읽고 "보안"의 일부인 암호화/복호화를 다시 구현하면 시스템을 우회 할 수 있습니다. 그리고 일단 데이터가 일반 텍스트이면 수정 후 다시 암호화하고 저장할 수 있습니다.

당연히 더 복잡하게 만들 수 있습니다. 즉, 누군가가 복잡한 방법을 통해 자신의 방식대로 작업해야한다는 강한 동기를 가져야하지만, 결국에는 "컴퓨터가 해독 무언가, 컴퓨터에 접근 할 수있는 누군가가 내용을 해독 할 수 있습니다. "

귀하가 위험 할 수 있다고 생각하든 그렇지 않든간에 귀하와 귀하의 데이터가 귀하의 "고객"및/또는 "파트너"로 간주됩니다.

+0

실제로 보안 전문가에 대해서는 언급하지 않았습니다. 예를 들어, 최종 사용자가 도달하지 못하는 곳에서 어딘가에 구성 정보를 보관하는 "깊은 동결"이 있다고 생각합니다. 최종 사용자가이를 수행 할 수 있기 때문에 관리자가 설정 한 구성 변경 및 딥 동결이 성공할 수 없기 때문입니다. 나는 그 정보를 지키기위한 표준 또는 최선의 방법이 있는지 알고 싶다. 물론, 나는 누군가가 내 프로그램을 세계에서 해킹 할 수 있다는 것을 알고있다. – Yavuz

+0

물론, 쓰기 권한이 필요한 관리 권한을 사용하고 읽기 전용으로 구성을 읽을 수 있습니다. 그러나 보안이 취약한 것은 시스템에 대한 관리자 액세스 권한을 가진 사람을 제어 할 수 없다면 말입니다. 물론 이것이 대기업의 IT 부서 인 경우 대부분의 사용자는 관리자 액세스 권한이 없을 것입니다. 반면에 많은 수의 다른 사이트에 배포하는 경우 사용자가 어떤 액세스 권한을 갖고 있는지 알 수 없습니다. 저는 모든 사람에게 관리자 권한을 부여하고 "IT 직원 만 관리자 권한을가집니다"는 회사에서 일했습니다. –