Вызов веб-метода интерфейса сервера проекта из установщика MSI

Я использую проект веб-установки Visual Studio для установки приложения, расширяющего функциональные возможности Project Server. Я хочу вызвать метод из PSI (Project Server Interface) из одного из пользовательских действий моего проекта установки, но каждый раз получаю ошибку «401 Несанкционированный доступ». Что я должен сделать, чтобы получить доступ к PSI? Тот же код при использовании из консольного приложения работает без проблем.

21.08.2008 18:55:15
2 ОТВЕТА
РЕШЕНИЕ

Похоже, что в ситуации с консолью вы работаете с текущими учетными данными пользователя, которые имеют доступ к PSI. При запуске из Интернета он запускается с кредитами экземпляра приложения IIS. Я думаю, вам нужно либо настроить делегирование для передачи кредитов сеанса в приложение IIS, либо использовать статические кредиты для приложения IIS, имеющего доступ к PSI.

3
22.08.2008 18:04:40
Я не запускаю ничего из Интернета, я вызываю метод из пользовательского действия установщика, которое запускается изнутри msi.
kjv 23.08.2008 07:56:11

Я наконец нашел ответ. Вы можете вызвать службу LoginWindows PSI и установить учетные данные для NetworkCredentials, используя соответствующие токены пользователя, пароля и домена. Затем вы можете вызвать любой метод PSI, если учетные данные являются явными. В противном случае, используя DefaultCredentials, вы получите ошибку несанкционированного доступа, потому что MSI запускается с учетной записью локальной системы.

2
2.09.2008 10:00:29