向Webview控件提供域/用户凭据

Hen*_*y C 4 impersonation networkcredentials windows-8 dotnet-httpclient winrt-xaml

有谁知道如何向WebView控件提供凭据(甚至更好-在特定域用户的上下文中运行Windows 8 Metro风格的应用程序/ WinRT应用程序?)我尝试按照此处列出的HttpClient + WebView方法进行操作( http://social.msdn.microsoft.com/Forums/zh-CN/winappswithcsharp/thread/05e46a0a-e913-469d-a4a5-4a805dcf158a),但它仍提示用户输入凭据,因为在返回的内容中有指向安全物品。

我有一个NetworkCredential对象,我非常想将其应用于所进行的每个HTTP调用。

当然一定有人做过吗?:)

Jar*_*SFT 5

为了连接到公司网络上的站点,必须在Package.appxmanifest中启用privateNetworkClientServer功能。您可以在XML中执行此操作,也可以在Visual Studio中双击该文件并使用设计器(“功能”选项卡)。在用户界面中,它称为“家庭或工作网络”。

现在,您可以访问Intranet,可以导航到该站点,但是系统将提示您提供凭据。如果希望自动提供用户域标识(企业单点登录),则还需要启用enterpriseAuthentication功能。在清单UI中,这称为“企业身份验证”。

从那里,您应该能够使用WebView浏览到任何Intranet站点,而不必进行身份验证。如果您想在WebView之外进行操作,则应查看以下文章和示例:

使用WebAuthenticationBroker:

http://code.msdn.microsoft.com/windowsapps/Web-Authentication-d0485122

WebAuthenticationBroker有一个名为UseCorporateNetwork的选项。遵循上面的示例时,请确保使用该选项。

最后,如果要与Facebook或Flicr等其他网站进行“单点登录”,请参见以下示例:

http://msdn.microsoft.com/zh-CN/library/windows/apps/xaml/Hh465283

  • 感谢您的全面答复-但是,EnterpriseAuthentication功能仅会传递当前登录的用户,因此,如果我需要传递其他用户(例如,Sharepoint凭据),我仍然不能这样做,对吗? (3认同)
  • 您解决了“传递其他用户”问题吗? (2认同)