Rufen Sie die Webmethode „Project Server Interface“ über ein MSI-Installationsprogramm auf

StackOverflow https://stackoverflow.com/questions/20782

Frage

Ich verwende ein Visual Studio-Web-Setup-Projekt, um eine Anwendung zu installieren, die die Funktionalität von Project Server erweitert.Ich möchte eine Methode von der PSI (Project Server Interface) aus einer der benutzerdefinierten Aktionen meines Setup-Projekts aufrufen, erhalte jedoch jedes Mal die Fehlermeldung „401 Unautorisierter Zugriff“.Was muss ich tun, um auf das PSI zugreifen zu können?Wenn derselbe Code über eine Konsolenanwendung verwendet wird, funktioniert er problemlos.

War es hilfreich?

Lösung

Es klingt wie in der Konsolensituation, die Sie mit Ihren aktuellen Benutzeranmeldeinformationen ausführen, die Zugriff auf die PSI haben.Bei der Ausführung über das Web erfolgt die Ausführung mit den Creds der IIS-Anwendungsinstanz.Ich denke, Sie müssten entweder eine Delegation einrichten, um die Sitzungs-Creds an die IIS-Anwendung weiterzugeben, oder einige statische Creds für Ihre IIS-App verwenden, die Zugriff auf die PSI haben.

Andere Tipps

Endlich habe ich die Antwort gefunden.Sie können den LoginWindows PSI-Dienst aufrufen und die Anmeldeinformationen mithilfe der entsprechenden Benutzer-, Kennwort- und Domänen-Tokens auf „NetworkCredentials“ festlegen.Anschließend können Sie jede PSI-Methode aufrufen, sofern die Anmeldeinformationen explizit sind.Andernfalls erhalten Sie bei Verwendung von DefaultCredentials einen Fehler wegen nicht autorisiertem Zugriff, da eine MSI mit dem lokalen Systemkonto ausgeführt wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top