Локальный принтер с сервера печати не работает с веб-сайта asp. net - PullRequest
0 голосов
/ 09 марта 2020

Если я go открою и перейду на наш сервер печати и нажму на имя принтера, он установит драйвер печати локально. \ PrintServer \ имя_принтера.

Я создал скрипт Power Shell и проверил его, и он отлично работает. Затем я создал библиотеку в c# для выполнения сценария ps.

Моя конечная цель - предоставить любому авторизованному пользователю возможность установить любой из наших сетевых принтеров на свою рабочую станцию ​​с веб-сайта. Я пробовал несколько способов заставить этот код работать. Кусок кода, который устанавливает принтер, работает нормально в приложении windows.

Вот что я попробовал в веб-приложении.

1. Web.Config - impersonation in web config.
      <authentication mode="Windows"></authentication>
      <authorization>
             <allow users="*"/>
             <deny users="?"/>
      </authorization>
      <identity impersonate="true" userName="someuser" password="pwofthatuser"/>

    Produces

2. Impersonation in code around the install printer code.
     //System.Security.Principal.WindowsImpersonationContext impersonationContext;
     //impersonationContext = ((System.Security.Principal.WindowsIdentity)User.Identity).Impersonate();

Вопросы:

1. If my logged in user works I am assuming if I am impersonating the website under my credentials it should also work, is that assumption true?

2. How can I verify what user that code is executing under? It appears to be getting an access denied error.


Any help on this would be greatly appreciate.  If someone has already figured this out a solution would also be great.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...