本帖最后由 ZenosZeng 于 2021-11-23 09:29 编辑
在Wyn Enterprise V5.0 update1版本中,对系统集成的安全性进行了进一步增强。
一、旧版本的安全隐患
在之前的版本中,我们在将一个文档分享给其他用户直接查看时,我们一般会在系统后台生成一个token拼接在文档url之后,比如以下这样:
- <font size="3">http://localhost:51980/reports/view/0ddb33e9-3211-4d96-9d25-ca34458dd8b9?theme=default&lng=zh&token=xxxxxxx</font>
复制代码 具体的集成步骤可以直接参考我们的帮助文档:URL方式集成单张仪表板或报表
这种方式是在Wyn的系统后台直接使用用户名密码生成一个token,把这个token分享给其他用户使用,所以其他用户直接拥有了该系统所认证的用户身份,拥有了可查看Wyn Enterprise文档的权限。但是这样做,其实是有一定的安全隐患的。假如这个文档的url被非法泄露出去,token也就被泄露出去了,这是很危险的行为,非法人员可以利用token查看及窃取用户数据。所以使用这种方式集成时,一定要格外小心谨慎,严格管理。
二、新版本的增强
为了解决以上提到的安全隐患,在 V5.0 update1版本中,我们引入了AuthToken来满足对安全性要求更高的集成场景。
当我们需要分享一个文档给其他用户的时候,首先通过相关 API 获取到 authToken ,然后将 authToken 添加到 URL 中组成完整的集成 URL,分享给其他用户。
当其他用户访问这个url,发生一些 API 请求的时候,Wyn的服务端会设置一个cookie到用户浏览器:
并且使用同一个 authToken 为浏览器设置cookie的功能只会执行一次。所以假如这个URL被非法泄露出去,在其他浏览器访问时不会访问成功,因为不会再为用户生成cookie了!这样就极大增强了安全性,同时在最初调用 API 生成 authToken 的时候,还可以传入参数指定cookie的有效期,控制更加精细!以下是生成 authToken 时可传入的参数:
关于AuthToken的具体使用在我们的帮助文档都有介绍,在此不再赘述,参考这篇文档即可:使用AuthToken进行系统集成
|
|