2008-08-21 10 views
1

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

ответ

2

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

+0

Я не запускаю что-либо из Интернета, я вызываю метод из пользовательского действия установщика, которое выполняется изнутри msi. – kjv 2008-08-23 07:56:11

1

Наконец-то я нашел ответ. Вы можете вызвать службу LoginWindows PSI, чтобы установить учетные данные в NetworkCredentials с помощью соответствующих токенов, паролей и токенов. Затем вы можете вызвать любой метод PSI, если учетные данные являются явными. В противном случае, используя DefaultCredentials, вы получите сообщение об ошибке «Неавторизованный доступ», потому что msi запускается с учетной записью локальной системы.