我在开发一个基金经纪网站时遇到了一些困难。
作为我们安全策略的一部分,我们的服务器上实施了内容安全策略(CSP),但现在,我们正在实现与北欧银行提供的桌面软件(BankID)进行通信。
随之而来的问题是:要打开BankID桌面软件,应该点击一个自定义协议的链接,看起来像这样:
bankid://?orderref=[GUID]&autostarttoken=[GUID]
我相信你能理解,我遇到了严重的问题,无法允许这个链接通过我们的CSP策略。我的搜索没有结果,我已经没有更多的想法。
我尝试着在协议下允许通配符域名:
Content-Security-Policy: default-src 'self' bankid://*;
如果我关闭CSP,它就能完美运行,所以这肯定是问题所在。
有没有人对此有经验?任何帮助都将不胜感激。
在进一步搜索了几个小时后,我发现在Mozilla Wiki上找到了以下内容:
我们需要一个应用交付机制,可以确保应用程序的完整性和真实性,并允许定义良好的应用程序和特权范围执行,以便在运行时维护完整性。
并且进一步提到:
通过唯一的方案(app://)访问特权和认证应用程序。该域将对应于应用程序ID。
我不确定这是否适用,但如果我读得正确,这意味着Mozilla正在考虑如何解决这个问题。