Hel*_*röm 5 protocols custom-protocol content-security-policy bankid
我有点紧张,正在开发一个基金经纪人网站.
作为我们安全策略的一部分,CSP在我们的服务器上实现,但现在,我们正在实施与斯堪的纳维亚银行(BankID)提供的桌面软件的通信.
有了这个,出现了一个问题:要打开BankID桌面软件,应该使用自定义协议单击一个链接,如下所示:
bankid://?orderref=[GUID]&autostarttoken=[GUID]
Run Code Online (Sandbox Code Playgroud)
我确信您理解,我遇到严重问题,允许通过我们的CSP政策进行此链接.我的搜索没有产生任何结果,我的想法已经用完了.
我试图在协议下尝试允许通配符域:
Content-Security-Policy: default-src 'self' bankid://*;
Run Code Online (Sandbox Code Playgroud)
如果我关闭CSP,它的效果非常好,所以这绝对是个问题.
有人对此有经验吗?任何帮助是极大的赞赏.
经过几个小时的搜索,我在Mozilla Wiki上找到了以下内容:
我们需要一种应用程序交付机制,它可以保证应用程序的完整性和真实性,还可以实现定义明确的应用程序和权限范围,从而可以在运行时维护完整性.
并进一步:
特权和认证的应用程序将通过一个独特的方案(app://)访问.域名将对应于应用ID.
我不确定这是否适用,但如果我认为这是正确的,那就意味着Mozilla正在考虑如何解决这个问题.
看起来你非常接近解决方案,你只需稍微改变一下语法.通过删除斜杠它应该工作得很好.
Content-Security-Policy: default-src 'self' bankid:;
Run Code Online (Sandbox Code Playgroud)
总结一下: