문제

Visual Studio 웹 설치 프로젝트를 사용하여 Project Server의 기능을 확장하는 응용 프로그램을 설치하고 있습니다.내 설정 프로젝트의 사용자 정의 작업 중 하나에서 PSI(Project Server Interface)의 메서드를 호출하고 싶지만 매번 "401 Unauthorized access" 오류가 발생합니다.PSI에 액세스하려면 어떻게 해야 합니까?콘솔 애플리케이션에서 동일한 코드를 사용하면 문제 없이 작동합니다.

도움이 되었습니까?

해결책

PSI에 액세스할 수 있는 현재 사용자 자격 증명을 사용하여 실행 중인 콘솔 상황처럼 들립니다.웹에서 실행하는 경우 IIS 애플리케이션 인스턴스의 자격 증명으로 실행됩니다.세션 자격 증명을 IIS 응용 프로그램에 전달하려면 위임을 설정하거나 PSI에 액세스할 수 있는 IIS 응용 프로그램에 대한 일부 정적 자격 증명을 사용해야 할 것 같습니다.

다른 팁

마침내 답을 찾았습니다.적절한 사용자, 비밀번호 및 도메인 토큰을 사용하여 LoginWindows PSI 서비스를 호출하고 자격 증명을 NetworkCredentials에 설정할 수 있습니다.그런 다음 자격 증명이 명시적이라면 모든 PSI 메서드를 호출할 수 있습니다.그렇지 않으면 DefaultCredentials를 사용하면 msi가 로컬 시스템 계정으로 실행되기 때문에 무단 액세스 오류가 발생합니다.

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