2013-11-28 4 views
0

Я написал простой ASP.Net WebAPI, который загружает файл с сервера on-prem tfs, используя вызов для отдыха. Проблема заключается в том, когда я подключаюсь к этому сайту из моей учетной записи пользователя (корпоративный домен) и устанавливаю учетные данные в webRequest для CredentialsCache.DefaultCredentials, он отлично работает, поскольку я являюсь пользователем vlid в проекте tfs. Теперь кто-то из моей команды хочет использовать тот же webAPI, и когда они попадают в тот же URL-адрес, я могу видеть, что его учетные данные снова используются для загрузки файла. Я подозреваю, что это связано с использованием CredentialsCache.DefaultCredentials в моем коде контроллера, но я не могу найти способ использования которого я должен использовать идентификатор клиента, который будет использоваться для запроса на загрузку. Мой вопрос в том, есть ли способ извлечь идентификаторы Windows или сетевые учетные данные удаленного пользователя (в том же домене), который я могу использовать для аутентификации. Прошу прощения, если это DUP, но я еще не нашел целевой ответ на мой вопрос. Примерный код будет вставлен ниже.Аутентификация Windows в ASP .Net для WebApi

var request = (HttpWebRequest)WebRequest.Create(uri); 

     request.Credentials = CredentialCache.DefaultNetworkCredentials; 

     try 
     { 
      var webResponse = request.GetResponse(); 
      var webStream = webResponse.GetResponseStream(); 
      if (webStream != null) 
      { 
       var objReader = new StreamReader(webStream); 
       return objReader.ReadToEnd() 
      } 
     } 

ответ

Смежные вопросы