c# - 将用户身份验证信息传递给 XBAP 应用程序

标签 c# wpf http authentication xbap

我想将信息传递给在浏览器中运行的 XBAP 应用程序以验证用户。它是用户名和密码,其中密码经过哈希处理。

我已经想出了如何通过 GET 请求来实现(即只需在查询字符串中传递信息并使用 BrowserInteropHelper.Source.Query 来获取信息)。

然而,这意味着在查询字符串中公开数据。由于密码是散列的,因此您实际上无法看到它,但对我来说这是一种不好的做法。我找不到任何关于是否可以通过 POST 或 cookie 传递数据的真实信息。根据我从互联网上收集到的信息,cookie 不适用于 XBAP 应用程序,但我可能是错的。

有谁知道是否可以以及如何以更安全的方式传输此类数据?如果能确认 cookie 在这种情况下确实不起作用——或者我需要如何继续实现它们,那也很好。

最佳答案

根据我从 Internet 上的各种来源收集到的信息,GET 确实是这种情况下的唯一方法。

POST 似乎根本不起作用。此外,XBAP 无法访问任何 session cookie,因此该选项也不可行。

(我会链接到资源,但更多的是从各地收集点点滴滴并将其组合在一起。)

我们决定通过 GET 传递参数,但加密整个查询字符串。这不是一个理想的解决方案,但在我们有资源来实现更复杂、更漂亮的解决方案之前,它必须这样做,该解决方案可以在两个完全独立的应用程序之间共享身份验证细节——一个是 Java 应用程序,另一个是 XBAP。

关于c# - 将用户身份验证信息传递给 XBAP 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4283037/

相关文章:

c# - 是什么导致 SignInManager.SendTwoFactorCodeAsync 返回 false?

c# - 在 ASP.NET 中添加消息框

c# - 可以按类对 Visual Studio Community Intellisense 建议进行排序吗?

c# - 强制 WPF ListBox 恰好包含 x 个元素

wpf - IValueConverter.Convert 从哪里获取 CultureInfo 参数?

java - 如何在 Java Spring 中的 HTTP 请求中仅发送原始值

c# - 使用两个 KeyDown 方法最大化/最小化表单不起作用

wpf - 模糊的 XAML 矢量图形

java - 使用 Java 进行异步 http 调用的最轻量级方法是什么?

rest - 当部分批量更新失败时,我应该返回什么状态代码?