2016-07-27 3 views
0

InstallShield를 사용하여 하나의 설치 관리자를 만들었습니다. 나는 그 안에 몇 가지 커스텀 액션을 작성했다.
이 설치 프로그램을 설치하는 동안 CustomActions의 로그 (실행 단계)가 로그 파일에 인쇄됩니다. 하지만 일부 CustomActions의 데이터 (실행 단계)를 로그 파일에 기록하는 것을 방지하고 싶습니다. 사용자 지정 작업이 보안 목적으로 정확히 무엇인지 알려주고 싶지 않습니다.InstallShield에서 사용자 지정 작업의 실행 단계를 기록하지 않으려면 어떻게해야합니까?

그래서 어떻게 CustmAction이 로그 파일에 실행 단계를 기록하지 못하게 할 수 있습니까? 전체 CustomAction의 로그를 방지하고 싶습니다.
InstallShield에서 설치하는 동안 잠시 동안 로깅을 일시 중지 할 수 있습니까?

답변

1

흥미로운 기능 요청을하게됩니다! 아마도 InstallShield는 즉각적인 조치가있을 때 비어 있지 않은 (이론적 인) ISSuppressLogging 속성의 값을 존중하도록 또는 지연된 작업이 예약 될 때 가르 칠 수 있습니다. 하지만 지금은 사용할 수 없으며 InstallShield의 사용자 지정 작업에 대한 코드 기반 변경이 필요합니다.

위로. 하면 Installshield 적어도 명시 적으로 지원하기 위해 시도하는 몇 가지 시나리오를 넘어, 자사의 로깅 문을 억제 할 수있는 옵션을 제공하지 않습니다, 그래서 당신은 아마 당신의 요구 사항을 포함하지 않는 다음과 같은 옵션이 남아 있습니다 :

  • 사용 MsiHiddenProperties을 사용하면 특정 속성 값의 로깅을 명시 적으로 금지 할 수 있습니다. 몇 가지 동작은 문자열의 서식을 지정하며 결과 값을 구성하는 속성을 추적하지 않으므로 MsiHiddenProperties을 존중하지 마십시오.

  • 지연된 작업의 CustomActionData 속성 값을 기록하지 못하도록 사용자 지정 작업 유형 플래그 0x2000/8192 Custom Action Hidden Target Option을 사용하십시오. 다시 이것은 사용자 지정 작업이이 속성에서 추출한 값을 기반으로하는 추가 로깅에 적용되지 않습니다. CustomAction 테이블의 Type 열에 기존 값에 8192 값을 (기술적으로 비트 OR) 추가해야합니다. 이 값의 다른 비트에는 base typeexecution options과 같은 중요한 정보가 들어 있습니다. ControlEvent에서

    (여기에 도움이 될 것입니다 어느 것도이 라인을 따라 좀 더 제안에 대한 링크 Preventing Confidential Information from Being Written into the Log File를 참조하십시오.)

  • 실행 사용자 지정 작업. 시스템을 수정하고 상승 된 권한으로 실행해야하는 항목에서 로깅 세부 사항을 숨기려는 경우가 많으므로이 기능은 거의 사용되지 않으며 실제로 사용하기에는 실용적이지 않습니다. 그러나 그렇지 않은 경우 DoAction control event의 기발한 일이 발생하면 모든 로그 메시지가 로그에 기록되지 않습니다.

일반적인 의견으로는 일반 텍스트를 다른 파일에 일반 텍스트로 저장하는 사용자 지정 작업과 관련하여이 요청을 자주 보게됩니다. 이 경우 나는 로그 파일의 문자열 복사본이 왜 불분명해야하는지에 대해서는 매우 분명하지 않다. 데이터가 특히 민감한 경우 그 값을 암호화하고 암호화 된 값만 저장하는 것이 좋습니다. 그런 다음 글 머리 기호에 설명 된대로 MsiHiddenProperties 및 숨겨진 대상 플래그의 도움으로 로그에 암호화 된 값만 포함됩니다.

+0

CustomActionData에도 문제가 있습니다. 그래서 당신의 제안을 시도하고 CusstomAction 형식 값을 8192 설정했습니다.하지만 "오류 2717.Bad 작업 조건 또는 오류 사용자 지정 작업 호출" –

+0

미안하지만 그것을 얻지 못했습니다. 정확히이 8192 값을 추가 할 위치는 어디입니까? 정확히 어떻게해야합니까? –

+0

좋습니다.지연 CA에 대한 작업입니다. 하지만 여전히 내 목표는 IsXMLInstall CustomAction의 로그를 숨기는 것입니다. 다른 솔루션/해결 방법이 있습니까? –