How to SSO via SUST API¶
v1.0 编写:张诚
本系统采用非对称加密形式完成数据对接,采用 openssl 生成 RSA 公私钥进行数据加解密。对接流程如下:
1 获取公密¶
在学工系统上注册,由学工部信息科提供。需要提供应用名称、应用地址、需要的 Api 名称,其中应用地址在测试阶段不做要求,上线后需用。
2 获取应用 id¶
应用注册完成后,会同步生成应用编号,该文本将成为 ClientId。
3 对接接口¶
系统的统一登录 API 接口为:
访问方式:POST 方式
4 对接流程¶
通过构造参数形式,系统将统一从以下域名链接发起请求(GET 形式):
https://yiban.sust.edu.cn/xgb/index.php/openapi/api/login?ClientId=1e968d647bc1b6215&其他参数
(其他参数可以提前联系好,便于第三方做逻辑判断)
系统会自动重定向到 ClientId 对应的 Url 上,并加上含有学生或教师信息的密文,并把原参数全部带上。
例如 Url 填写为 https://www.abc.com/yanzheng.html,则会重定向到:
https://www.abc.com/yanzheng.html?AuthStr=XXXXXXX&ClientId=1e968d647bc1b6215&其他参数
此时在服务器 https://www.abc.com/yanzheng.html 上,通过 https 的 POST 形式发送 AuthStr 和 ClientId 到:
https://yiban.sust.edu.cn/xgb/index.php/openapi/api/login
服务上,将会解析出该用户的姓名和学号(工号)信息。
SID 为目前登录的学生学号;
TID 为目前登录的教师工号。
测试阶段,可能获取 SID 和 TID 均为空,上线后将按照逻辑返回数据。