wpf - MSIX Windows 10 应用程序访问在 SSO 登录后被拒绝以进行 Azure 迁移

标签 wpf azure single-sign-on .net-5 msix

我们正在将应用程序迁移到 Azure。

我们为内部 WPF 应用程序创建了一个 MSIX 安装程序,该应用程序安装到 Windows 10 C:\Program Files\WindowsApps\ 文件夹。当我们运行该应用程序时,它要求我们通过在线 Windows/Azure 门户网站输入单点登录 (SSO) 凭据。成功输入凭据后,我们会收到以下弹出窗口,显示对文件的访问被拒绝(见下文)。无论是正常运行还是以管理员身份运行,我们都会收到此错误。

我们无法在网上找到任何有助于解决该错误的内容。我们确实尝试获取此 protected 文件夹的所有权,然后取消选中只读选项,但这不起作用(这听起来也不是一个好主意,但这是故障排除)。我们在 MSIX 安装项目中没有看到任何可以解决此问题的内容。有谁知道为什么我们会收到此错误以及如何解决它?

Error Message Box

在事件查看器中,提供以下信息:

Event Viewer Error Details

最佳答案

MSIX 打包的应用不支持对安装文件夹 (WindowsApps) 中的文件进行写入访问。这是设计使然,操作系统不允许获取所有权并强制更改文件。

应用程序运行时需要更改(更新)的任何配置文件都应保存在 AppData 用户文件夹或 CommonApplicationData 计算机文件夹中(如果多个用户需要访问此配置/文件)。

我已经在这里写了关于这个主题的更长的解释:

P.S.一般来说,即使您不使用 MSIX 部署应用程序,将用户数据文件保存在安装文件夹中也是一种不好的做法。应用程序文件和应用程序数据(配置、用户数据等)之间的逻辑分离有助于确保您的客户可以顺利升级您的应用程序而不会丢失其数据/配置,如果旧电脑崩溃,可以轻松迁移到新电脑,可以在虚拟环境(企业客户端)中运行应用程序,您就可以减少支持方面的麻烦;)。

关于wpf - MSIX Windows 10 应用程序访问在 SSO 登录后被拒绝以进行 Azure 迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67218511/

相关文章:

wpf - WPF 中的键盘快捷键

wpf - 在DataGrid中绘制的快速轻量级方法

使用 Gremlin.Net 的 Azure Cosmos DB - 提交查询时出错

powershell - Import-DscResource 找不到包 cChoco

ios5 - iOS5 中的反向身份验证和 Twitter SSO

通过 SAML2 的 Sitecore SSO - AuthenticateRequest 未触发

c# - 为什么 AlternationIndex 为 ItemsControl 中的所有项目返回 0?

wpf - 模糊的 XAML 矢量图形

angular - Azure AD 是否支持针对单页应用程序使用 PKCE 的授权代码流

c# - 无法上传应用程序表现文件