문제

IIS에서 호스팅하는 WCF 웹 서비스가 있습니다 (실제로 Visual Studio 웹 호스트 IE Cassini 내에서 실행).

서비스에서 웹 디렉토리의 루트에 액세스 해야하는 파일이 있으며 서비스가 디렉토리에 액세스한다는 사용자 ID를 파악하는 데 어려움이 있습니다. ASPNET, 네트워크 서비스 및 IUSR에 허가를 받았지만이 중 어느 것도 작동하지 않는 것 같습니다.

누구든지 WCF 서비스가 IIS 내에서 호스팅 될 때와 같이 WCF 서비스가 실행된다는 것을 알고 있습니까?

더 많은 정보:

실제로 WCF 서비스는 나 (내 Windows 계정)로 실행되고 있지만 어떤 이유로 든 루트 디렉토리에서 파일을 열 수는 없습니다. "Access는 거부"로 파일이 실패했습니다. 나는 폴더를 "모두"에게 완전히 제어했지만 중요하지 않은 것 같습니다.

도움이 되었습니까?

해결책 2

좋아 ... 문제를 알아 냈습니다. 내가 열려고했던 파일이 읽기 전용으로 표시되어 있으므로 .NET은 글을 쓸 수 없었습니다. 전달 된 fileAccess.Pile.Open () 메소드로 읽으 셨다면 이제 잘 열립니다.

WCF 자체와 관련이 없습니다.

다른 팁

Cassini를 사용하여 YR Serive를 실행하는 경우 해당 컴퓨터에 로그인 한 사용자가 될 것입니다. 아마 당신의 사용자 이름은 해당 컴퓨터에 로그인하는 데 사용했을 것입니다. 해당 사용자에게 파일을 읽을 수있는 권한을 부여하고 시도하십시오.

IIS에서는 응용 프로그램 구성에 따라 다릅니다. 모든 사용자 계정에서 앱 풀을 만들고 해당 풀을 사용하여 YR 애플리케이션을 실행할 수 있습니다. IIS의 기본 사용자는 네트워크 서비스입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top