네트워크 서비스 계정에 기본적으로 임시 파일 권한을 받어야합니까?
-
03-07-2019 - |
문제
최근에 나는 웹 포름을 통해 Crystal Reports에서 PDF를 생성하는 작업을하고있었습니다. C : Windows temp dir의 권한 설정으로 인해 발생하는 것으로 결정되었습니다. 네트워크 서비스 계정 에이 폴더에 대한 전체 액세스 권한을 부여하여 즉시 문제를 해결했습니다. 그러나 네트워크 서비스 계정에 기본적으로 이러한 권한이없는 이유가 있습니까?
Rick Strahl 은이 질문을합니다 여기. 이 작업에 문제가 없어야하는 것처럼 들리지만 Rick은 기본값이 왜 그런 식으로 설정되어 있는지 명확하지 않았습니다.
웹 서버는 Windows Server 2003입니다
해결책
요즘 기본 옵션은 더 안전한 옵션 인 경향이 있습니다. 다른 이유가 없다고 생각합니다.
나는 당신과 같은 문제를 겪었고, 내 환경에서 방금 허가를 받고 계속 움직였습니다.
이 게시물 Crystal Reports의 결함이라고 제안하며, 이는 Path.getTempPath ()와 같은 API를 사용하는 대신 %Windir % temp를 명시 적으로 참조합니다. 실제로 Windows 2003의 네트워크 서비스 계정에서 실행될 때 Path.getTempPath () Return %Windir % temp를 보았습니다.
다른 팁
%Windows% temp 일반적인 유혹과 바핑을위한 것이 아닙니다. Crystal Reports가 해당 디렉토리를 남용하고 있음이 분명합니다. 개발자가 너무 게으르지 않아서 관리자 계정 이외의 기계를 부팅하기에는 많은 일이 발생합니다.
모든 사용자 (네트워크 서비스 포함)는 자체 온도 공간이 있으며, 전체 액세스 권한이있는 전체 문서 및 설정. 우승자는 CR처럼 행동하지 않으며 자신의 임시 공간을 사용합니다.
요컨대, win temp에 대한 기본 권한에는 아무런 문제가 없습니다. 나는 그것이 단순히 Windows의 내부 작업을위한 것이라고 생각합니다. (그러면 다시, 그 디렉토리가 처음에 존재하지 않았다면 관련된 모든 사람에게 훨씬 나을 것입니다.)