背景
系统环境:
ArcGIS:10.6.1
ArcGIS API for JavaScript :4.10
需求描述:
Portal和GIS Server联合,同时所访问的地图服务均为安全服务,也就是说服务已经设置了权限控制,只有该用户拥有访问的权限才能调用地图服务。
现在需要在前端业务系统中使用安全服务,但是又不想每次打开系统时,手动登录一次Portal。
解决思路
要使用ArcGIS Enterprise上的安全资源(包括地图服务、WebMap、WebScene、应用APP等),Esri提供了多种方式,具体可以 参考以下链接:
https://developers.arcgis.com/javascript/latest/guide/secure-resources/index.html
今天我们介绍的是采用Token的方式。在JS API中,认证信息的管理维护在IdentityManager接口中,其中generateToken是生成token的函数,registerToken是将token注册到本地的函数。具体的代码详见下述章节:
核心代码
注意:客户端务必先把portal的自签名证书安全在本地!!!
<!DOCTYPE htm