首页 > 解决方案 > Webview2 SPA SSO

问题描述

是否可以使用 oauth 设置 SSO 并在仅在浏览器中运行的 SPA 和在 WPF 应用程序中的 webview2 中运行的另一个 SPA 之间建立连接?

我无法让它工作。似乎浏览器中的 SPA 和 webview2 托管的 SPA 在我的 IdentityProvider 上共享同一个会话?

标签: azure-active-directorysingle-sign-onopenid-connectwebview2

解决方案


WebView2 不能直接与 Edge 浏览器共享状态。

创建 WebView2 时,您指定(或获取特定于您的应用程序的默认位置)WebView2 存储所有状态的用户数据文件夹。这包括 cookie、本地存储、indexeddb 等。Edge 浏览器有自己独立的用户数据文件夹(安装在 canary、dev、beta 和 stable 频道之间的每个 Edge 浏览器都有自己的文件夹),WebView2 不能将这些文件夹用作其用户数据文件夹。

您可以在WebView2 反馈 github 项目上提出功能请求。

您可以在管理WebView2 中的用户数据文件夹中阅读有关 WebView2 的用户数据文件夹的更多信息。

作为一种解决方法,我不确定,但可以使用 Edge 浏览器支持的其他一些 API 来提取状态,例如 WebDriver。


推荐阅读