0

Я пытаюсь использовать WebAccountManager как suggested для моей ссылки организации по адресу https://si.business360online.com/ Он может быть зарегистрирован в той же учетной записи, что и пользователь Windows (в домене orgnization). Я не могу получить токен или существующую учетную запись с ПК с Windows 10.Как использовать WebAccountManager в UWP для аутентификации приложения с помощью Окно Credentials

Я также попытался AccountsSettingsPane с WebAccountProvider следующим образом:

AccountsSettingsPane.GetForCurrentView().AccountCommandsRequested += OnlineDataStore_AccountCommandsRequested; 
AccountsSettingsPane.Show(); 

, а затем OnlineDataStore_AccountCommandsRequested выглядит следующим образом:

WebAccountProvider wap = await WebAuthenticationCoreManager.FindAccountProviderAsync("https://si.business360online.com/"); 

but wap is always null. 

Может кто-нибудь помочь в том, чтобы войти в систему через Windows, Полномочия вошедшего у пользователя в UWP? Использование следующего более R & D Я могу войти в Windows, текущего пользователя, но в Windows.Web.Http, я не в состоянии контролировать выход из системы/четкие полномочия и т.д.

Edit 1: После фрагменты кода работают, но System.Net.Http могут быть изменены в будущих версиях.

var handler = new HttpClientHandler(); 
handler.AllowAutoRedirect = true; 
handler.Credentials = CredentialCache.DefaultCredentials; 
var httpClient = new System.Net.Http.HttpClient(handler); 
System.Net.Http.message = await httpClient.GetAsync(feedUrl); 

Edit 2: Это может быть полезно для кого: Для того, чтобы включить проверку подлинности Windows, в UWP/Windows Mobile, это необходимо для того, чтобы Enterprise Capabilities. После моментов, которые я нашел:

  • Для System.Net.Http мы можем контролировать учетные данные, установив CredentialCache.DefaultCredentials
  • Для Windows.Web.Http, он будет автоматически войти в мандатной Windows, если учетные данные не установлены в HttpProtocolFilter.
+0

Так что даже System.Net.Http может быть устаревшим в будущем, будет ли альтернативный Microsoft.Net.Http работать для вас? – Jackie

+0

Похоже, вам нужно получить информацию для пользователя домена Windows, для этого нужно создать образец кода UWP-кода https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/UserInfo. – Jackie

+0

@ Jackie, я не очень сильно разбирался в образцах, но WebAccountManager не работал для меня. То, что сработало для меня, написано в 'Edit 2'. – Vishnu

ответ

0

Чтобы включить проверку подлинности Windows в UWP/Windows Mobile, необходимо включить Enterprise Capabilities. (То же самое было отредактировано в вопросе)

  • Для System.Net.Http мы можем контролировать учетные данные, установив CredentialCache.DefaultCredentials
  • Для Windows.Web.Http, он будет автоматически войти в мандатной Windows, если учетные данные не установлены в HttpProtocolFilter.