实验架构模式

架构模式  时间:2021-03-26  阅读:()

3国家虚拟仿真实验教学项目技术接口规范(2018版)一、技术接口说明服务"国家虚拟仿真实验教学项目共享平台(实验空间)"(以下简称:实验空间)的用户与学校实验教学项目的用户管理系统之间的身份自动识别,避免二次登录.
识别后的用户在学校实验教学项目上的相关数据,将自动回传到国家虚拟仿真实验教学项目共享平台,支撑数据统计和监测.

数据接口方式分两种,分别是:用户验证令牌方式和验证接口方式.
基于C/S架构的应用只能选择验证接口方式.
本文中所有Host站点统一为:http://www.
ilab-x.
com.
技术接口实现路径如下图所示.
二、用户身份识别规范当用户登录"实验空间"后点击【我要做实验】时(如下图),"实验空间"会以参数形式提供Token.
链接组成样例:实验平台的URLtoken,例如:http://life.
scnu.
edu.
cn/biology/vrlab/co2/token=AAABZKECn4ABAAAAAAABhqM%3D.
fKf3J5DN6Ym0Fo3I5CJYdzQMR0iwEz7QnQIit2Mfl6v03jpEJ%2Fr4FMRFqh5kN4yw.
tqIPoyvkHe2MGOXMimE9O554Lo6AbBCQkZlsqQI4XRQ%3D实验空间用户验证时使用XJWT标准,此标准基于JSONWebToken(JWT)开发.
XJWT包含三个参数:header,payload,signature,因此生成token就要先获得这三个参数.
(一)用户验证令牌token.
token的组成结构:based64(rawheader)base64(rawpayload)+'.
'+base64(rawsignature)token组成参数header,payload,signature说明如下:1.
header.
组成结构:[expiry:long][type:byte][issuerid:long]参数说明:项目说明expiry过期时间,UTC以毫秒为单位,二进制8byte,Bigendian.
type类别,值为二进制,必填.
1-JSON,2-SYS.
0-保留Issuerid由"实验空间"分配给各实验平台的唯一编号,二进制8byte,Bigendian.
2.
payload.
payload是64bytes的整数倍.
其组成结构:aes256(randomlong+body+aespadding,aeskey).
其中:aes256是AES256加密算法;randomlong是随机的8byte数字;aespadding是自定义的字符串,为补足64bytes的整数倍;aeskey由"实验空间"生成分配给各实验教学项目.
body为UTF8编码的JSON格式字符串,格式如下表:项目说明id用户id.
un用户usernamedis用户姓名显示3.
signature.
组成结构:base64(HmacSHA256(based64(rawheader)base64(rawpayload),secretkey))其中:rawheader是上述中生成的header;rawpayload是上述中生成的payload;secretkey是生成aeskey的密码,由"实验空间"提供.
4.
验证与解密.
使用base64解码signature,通过secretkey验证,如果验证失败,则token失效.
使用base64解码header,将得到的过期时间(expiry)和当前时间进行比较,如果已过期,则token失效;如果没有提供headertype,则token失效;使用base64解码,并使用aeskey进行解密,得到的数据前8byte和aespadding数据将被丢弃,返回剩余的数据json.
各实验教学项目取得用户数据后,可自行进行保存.
验证返回码及说明:code值说明0验证成功26token失效其他值系统错误(二)验证接口开发规范.
当用户直接访问各实验教学项目时、token失效时、用户处于未登录状态访问各实验教学项目时、或者实验教学项目采用C/S架构模式,则第三方接入端可按照给定的登录接口形式,开发可使用"实验空间"用户名及密码获取用户基本信息的接口.

需要发送数据到http://ilab-x.
com/sys/api/user/validate服务进行登录.
接口名称:http://ilab-x.
com/sys/api/user/validate.
调用方法:GET.

详细说明:见下表参数说明参考值username用户名testpassword加密后密码:password=sha256(nonce+sha256(password)+cnonce).
sha256是SHA256加密算法2760F0245D3C03E7ABDA1CCA310187E2E33EEB886FDE0FCD5C827E971AED44D7nonce安全验证随机数:自建函数,随机生成16位字符串.
允许字符:['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F']0F2785E6ED1B59ACcnonce二次安全验证随机数:自建函数,随机生成16位字符串.
允许字符:['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F']F5A981C203030722调用示例:http://ilab-x.
com/sys/api/user/validateusername=test&password=2760F0245D3C03E7ABDA1CCA310187E2E33EEB886FDE0FCD5C827E971AED44D7&nonce=0F2785E6ED1B59AC&cnonce=F5A981C203030722.

返回结果示例:{"code":0,"username":"test","name":"测试用户"}返回参数说明:code说明0调用成功其他值系统错误三、实验结果数据回传接口回传数据接口是指:"实验空间"用户完成实验教学项目后,所产生的实验结果数据.
如果有实验报告,则先调用上传接口,然后再将这些数据和用户信息一起通过回传数据接口同步至"实验空间".

PacificRack(19.9美元/年)内存1Gbps带vps1GB洛杉矶QN机房,七月特价优惠

pacificrack怎么样?pacificrack商家发布了七月最新优惠VPS云服务器计划方案,推出新款优惠便宜VPS云服务器采用的是国产魔方管理系统,也就是PR-M系列,全系基于KVM虚拟架构,这次支持Windows server 2003、2008R2、2012R2、2016、2019、Windows 7、Windows 10以及Linux等操作系统,最低配置为1核心2G内存1Gbps带宽1...

易探云:香港大带宽/大内存物理机服务器550元;20Mbps带宽!三网BGP线路

易探云怎么样?易探云隶属于纯乐电商旗下网络服务品牌,香港NTT Communications合作伙伴,YiTanCloud Limited旗下合作云计算品牌,数十年云计算行业经验。发展至今,我们已凝聚起港内领先的开发和运维团队,积累起4年市场服务经验,提供电话热线/在线咨询/服务单系统等多种沟通渠道,7*24不间断服务,3分钟快速响应。目前,易探云提供香港大带宽20Mbps、16G DDR3内存、...

SoftShellWeb:台湾(台北)VPS年付49美元起,荷兰VPS年付24美元起

SoftShellWeb是一家2019年成立的国外主机商,商家在英格兰注册,提供的产品包括虚拟主机和VPS,其中VPS基于KVM架构,采用SSD硬盘,提供IPv4+IPv6,可选美国(圣何塞)、荷兰(阿姆斯特丹)和台湾(台北)等机房。商家近期推出台湾和荷兰年付特价VPS主机,其中台湾VPS最低年付49美元,荷兰VPS年付24美元起。台湾VPSCPU:1core内存:2GB硬盘:20GB SSD流量...

架构模式为你推荐
同ip网站查询我的两个网站在同一个IP下,没被百度收录,用同IP站点查询工具查询时也找不到我的网站,是何原因?月神谭有没有什么好看的小说?拒绝言情小说!同ip站点查询如何查看几个站是不是同IP8090lu.com8090看看电影网怎么打不开了www.zjs.com.cn中国快递公司排名www.baitu.com谁有免费的动漫网站?sesehu.comwww.hu338.com 怎么看不到啊www.javlibrary.com跪求一个JAVHD.com的帐号本冈一郎本冈一郎到底有效果吗?有人用过吗?百度关键字百度推广多少关键词合适
淘宝二级域名 site5 webhosting mach php主机 老左博客 tk域名 777te 架设服务器 gspeed 域名转接 183是联通还是移动 phpmyadmin配置 新睿云 跟踪路由命令 双线asp空间 免费的域名 lamp是什么意思 测试网速命令 创速 更多