我有点紧张,正在开发一个基金经纪人网站。
作为我们安全策略的一部分,CSP在我们的服务器上实施,但现在,我们正在实施与斯堪的纳维亚银行 ( BankID ) 提供的桌面软件的通信。
这样就出现了一个问题:要打开 BankID 桌面软件,应该点击一个带有自定义协议的链接,如下所示:
bankid://?orderref=[GUID]&autostarttoken=[GUID]
我相信您明白,我在通过我们的 CSP 政策允许此链接时遇到严重问题。我的搜索没有产生任何结果,而且我的想法已经用完了。
我曾尝试在协议下允许通配符域,因此:
Content-Security-Policy: default-src 'self' bankid://*;
如果我关闭 CSP,它会完美运行,所以这绝对是问题所在。
有人对此有经验吗?任何帮助是极大的赞赏。
编辑
经过几个小时的搜索,我在Mozilla Wiki上找到了以下内容:
我们需要一种应用程序交付机制来保证应用程序的完整性和真实性,并允许明确定义的应用程序和权限范围强制执行,以便在运行时保持完整性。
并进一步:
特权和认证的应用程序将通过一个独特的方案 (app://) 访问。域将对应于应用程序 ID。
我不确定这是否适用,但如果我没看错,这意味着 Mozilla 正在考虑如何解决这个问题。