Подтвердить что ты не робот

Получение сетевых учетных данных от текущего пользователя в приложении проверки подлинности Windows

Мне было интересно, можно ли получить текущий пользовательский объект и получить их учетные данные, чтобы я мог передать их вместе с объектом NetworkCredential, который я использую для подключения к моему AX.NET Business Connector. Поскольку на данный момент мне нужно указать его как отдельный пользователь, который я установил, когда создаю объект NetworkCredential:

private NetworkCredential nc = new NetworkCredential("myUser", "myPassword", "myDomain");

Я надеялся сделать что-то вроде: private NetworkCredential nc = (NetworkCredential)HttpContext.User;, но, очевидно, это не сработает...

Таким образом, проще отслеживать, какой пользователь создал заказ клиента, например, так как на данный момент все создается пользователем, указанным пользователем.

4b9b3361

Ответ 1

CredentialCache.DefaultNetworkCredentials?

Учетные данные, возвращаемые DefaultNetworkCredentials, представляют собой учетные данные для проверки подлинности для текущего контекста безопасности, в котором работает приложение. Для клиентского приложения обычно это учетные данные Windows (имя пользователя, пароль и домен) пользователя, запускающего приложение.

Ответ 2

Я не совсем понимаю ваш вопрос, но ваш вызов поступает из ASP.NET, для которого требуются учетные данные? Вы можете попробовать:

Uri uri = new Uri("http://tempuri.org/");
ICredentials credentials = CredentialCache.DefaultCredentials;
NetworkCredential credential = credentials.GetCredential(uri, "Basic");

Предполагая, что ваш пользователь уже прошел аутентификацию через поставщика членства.