基于 CAS 协议完成统一身份认证成功后,将携带应用申请时需要返回的属性,供应用端使用。
Cas 服务响应 XML 内容如下:
<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
<cas:authenticationSuccess>
<cas:user>mr100758</cas:user>
<cas:attributes>
<cas:infoId>1782646895357755392</cas:infoId>
<cas:gender>1</cas:gender>
<cas:orgList>[{"orgId":1781203561347432450,"orgType":"node_school","orgCode":"330108060002","orgName":"天音测试小学","stageCode":"211","campusList":[{"orgId":1781203562983211009,"orgCode":"33010806000201","orgName":"天音测试小学"},{"orgId":1783373046791684098,"orgCode":"33010806000202","orgName":"天音多校区测试小学2"},{"orgId":1783754135544676353,"orgCode":"33010806000203","orgName":"天音多校区测试小学3"},{"orgId":1785169957806817281,"orgCode":"33010806000204","orgName":"天音测试小学4"}],"identityList":[{"userId":1782646895655550978,"identityId":1,"identityName":"教职工","infoId":1782646895357755392}],"roleList":[{"orgId":1781203561347432450,"roleId":"8","roleCode":"js_000008","roleName":"教职工"}],"identityId":1}]</cas:orgList>
<cas:childList>[{"accountId":1781224602786103298,"account":"bts06123233","userId":1781224602257620994,"id":1781224602144374784,"xm":"白塔寺","xbm":"1","xsdqztm":"1","xxdm":"330108060002","xxmc":"天音测试小学","xxbxlxm":"211","xqdm":"33010806000201","xqmc":"天音测试小学","nj":"11","njmc":"一年级","bh":"202302110101","bjmc":"01班"}]</cas:childList>
<cas:type>password</cas:type>
<cas:xsId>1781224602144374784</cas:xsId>
<cas:orgId>1781203561347432450</cas:orgId>
<cas:loginTime>1715117492</cas:loginTime>
<cas:nickname>马瑞</cas:nickname>
<cas:longTermAuthenticationRequestTokenUsed>false</cas:longTermAuthenticationRequestTokenUsed>
<cas:email></cas:email>
<cas:clientIpAddress>115.193.187.209</cas:clientIpAddress>
<cas:isFromNewLogin>false</cas:isFromNewLogin>
<cas:authenticationDate>2024-05-07T21:31:44.957+08:00[Asia/Shanghai]</cas:authenticationDate>
<cas:avatarUrl></cas:avatarUrl>
<cas:successfulAuthenticationHandlers>LoginAuthenticationHandler</cas:successfulAuthenticationHandlers>
<cas:xsUserId>1781224602257620994</cas:xsUserId>
<cas:xqOrgId>1781203562983211009</cas:xqOrgId>
<cas:userId>1782646895655550978</cas:userId>
<cas:credentialType>LoginCredential</cas:credentialType>
<cas:accountId>1782646897865949186</cas:accountId>
<cas:authenticationMethod>LoginAuthenticationHandler</cas:authenticationMethod>
<cas:identityId>3</cas:identityId>
<cas:account>mr100758</cas:account>
</cas:attributes>
</cas:authenticationSuccess>
</cas:serviceResponse>
Assertion 对象 JSON 序列化结构如下:
{
"attributes": {
},
"authenticationDate": "1715088719697",
"principal": {
"attributes": {
"clientIpAddress": "115.193.187.209",
"infoId": "1782646895357755392",
"isFromNewLogin": "false",
"gender": "1",
"authenticationDate": "2024-05-07T21:31:44.957+08:00[Asia/Shanghai]",
"avatarUrl": "",
"successfulAuthenticationHandlers": "LoginAuthenticationHandler",
"xsUserId": "1781224602257620994",
"xqOrgId": "1781203562983211009",
"orgList": "[{\"orgId\":1781203561347432450,\"orgType\":\"node_school\",\"orgCode\":\"330108060002\",\"orgName\":\"天音测试小学\",\"stageCode\":\"211\",\"campusList\":[{\"orgId\":1781203562983211009,\"orgCode\":\"33010806000201\",\"orgName\":\"天音测试小学\"},{\"orgId\":1783373046791684098,\"orgCode\":\"33010806000202\",\"orgName\":\"天音多校区测试小学2\"},{\"orgId\":1783754135544676353,\"orgCode\":\"33010806000203\",\"orgName\":\"天音多校区测试小学3\"},{\"orgId\":1785169957806817281,\"orgCode\":\"33010806000204\",\"orgName\":\"天音测试小学4\"}],\"identityList\":[{\"userId\":1782646895655550978,\"identityId\":1,\"identityName\":\"教职工\",\"infoId\":1782646895357755392}],\"roleList\":[{\"orgId\":1781203561347432450,\"roleId\":\"8\",\"roleCode\":\"js_000008\",\"roleName\":\"教职工\"}],\"identityId\":1}]",
"childList": "[{\"accountId\":1781224602786103298,\"account\":\"bts06123233\",\"userId\":1781224602257620994,\"id\":1781224602144374784,\"xm\":\"白塔寺\",\"xbm\":\"1\",\"xsdqztm\":\"1\",\"xxdm\":\"330108060002\",\"xxmc\":\"天音测试小学\",\"xxbxlxm\":\"211\",\"xqdm\":\"33010806000201\",\"xqmc\":\"天音测试小学\",\"nj\":\"11\",\"njmc\":\"一年级\",\"bh\":\"202302110101\",\"bjmc\":\"01班\"}]",
"type": "password",
"userId": "1782646895655550978",
"xsId": "1781224602144374784",
"orgId": "1781203561347432450",
"credentialType": "LoginCredential",
"accountId": "1782646897865949186",
"loginTime": "1715117492",
"authenticationMethod": "LoginAuthenticationHandler",
"identityId": "3",
"nickname": "马瑞",
"longTermAuthenticationRequestTokenUsed": "false",
"email": "",
"account": "mr100758"
},
"name": "mr100758"
},
"valid": "true",
"validFromDate": "1715088719697"
}
属性对照表如下:
字段英文 | 字段类型 | 中文名称 |
---|---|---|
loginType | string | 登录方式(password:账号密码、dingtalk-scancode:钉钉扫码登录) |
loginTime | integer(int64) | 登录时间戳 |
account | string | 账号 |
accountId | integer(int64) | 账号ID |
accountStatus | integer | 账号状态(0:禁用 |
userId | integer(int64) | 用户ID |
userName | string | 用户名 |
userCode | string | 用户的唯一标识(工号、教职工号、学生号)(学/工号) |
userStatus | integer | 用户状态(0:禁用 |
nickname | string | 别名(昵称) |
avatarUrl | string | 头像:图片路径或图标样式 |
phone | string | 手机号码 |
string | 电子邮箱 | |
gender | integer | 性别:(1:男,2:女) |
clientIpAddress | string | 客户端IP地址 |
childAccountList | json | 关联的孩子信息列表,List<UserChildProfileVO> 的 JSON 字符串 |
orgList | json | 所属组织机构列表,List<UserOrgVO> 的 JSON 字符串 |
orgId | integer(int64) | 当前使用的学校组织机构ID |
xqOrgId | integer(int64) | 当前使用的校区组织机构ID |
identityId | integer(int64) | 当前使用的身份类型(1:系统管理员、2:学校管理员、3:普通老师、4:学生、5:家长、6:开发者、7:访客) |
roleId | integer(int64) | 当前使用的角色ID |
xsId | integer(int64) | 当前选中的学生ID |
xsUserId | integer(int64) | 当前选中的学生用户ID |
Schema 属性:
UserChildProfileVO
参数名称 | 参数说明 | 类型 | schema |
---|---|---|---|
accountId | 孩子的账号ID | integer(int64) | |
account | 孩子的账号 | string | |
userId | 账号关联用户ID | integer(int64) | |
id | 学生ID | integer(int64) | 1781224602144374784 |
xm | 学生姓名 | string | |
xh | 学生学号 | string | |
zp | 学生照片 | string | |
xbm | 性别码(1:男,2:女) | string | |
xsdqztm | 学生状态码(1:在校,2:休学,3:毕业,4:退学,5:区内,6:区外,7:离校,9:其他) | string | |
xxdm | 学校代码 | string | 330108060002 |
xxmc | 学校名称 | string | |
xxbxlxm | 学校办学类型码(111:幼儿园,211:小学,311:初级中学,312:九年一贯制学校,342:高级中学,365:职业高中,513:培智学校,999:合作机构,998:直属单位,997:机关科室,341:完全中学) | string | |
xqdm | 校区代码 | string | 33010806000201 |
xqmc | 校区名称 | string | |
nj | 年级 | string | |
njmc | 年级名称 | string | |
bh | 班号 | string | |
bjmc | 班级名称 | string |
UserOrgVO
参数名称 | 参数说明 | 类型 | schema |
---|---|---|---|
orgId | 组织机构ID(专指机构树的ID) | integer(int64) | |
orgType | 组织机构类型(教育局/事业单位/学校) | string | |
orgCode | 组织机构代码(教育局编码/单位编码/学校代码) | string | |
orgName | 组织机构名称 | string | |
stageCode | 组织对应学校办学类型码(111:幼儿园,211:小学,311:初级中学,312:九年一贯制学校,342:高级中学,365:职业高中,368:职业初中,513:特殊学校,999:其他机构) | integer | |
campusList | 用户在该学校/组织机构下拥有的校区 | json | List<UserCampusVO> 的 JSON 字符串 |
identityList | 用户在该学校/组织机构下拥有的身份 | json | List<UserIdentityVO> 的 JSON 字符串 |
roleList | 用户在该学校/组织机构下拥有的角色 | json | List<UserRoleVO> 的 JSON 字符串 |
UserCampusVO
参数名称 | 参数说明 | 类型 | schema |
---|---|---|---|
orgId | 组织机构ID(专指校区的组织机构ID) | integer(int64) | |
orgCode | 组织机构代码(校区代码) | string | |
orgName | 组织机构名称(校区名称) | string |
UserIdentityVO
参数名称 | 参数说明 | 类型 | schema |
---|---|---|---|
identityId | 身份类型 | integer(int64) | |
identityName | 身份名称 | string |
UserRoleVO
参数名称 | 参数说明 | 类型 | schema |
---|---|---|---|
roleId | 角色Id | integer(int64) | |
roleCode | 角色编码 | string | |
roleName | 角色名称 | string |
作者:Jeebiz 创建时间:2022-10-20 17:30
最后编辑:Jeebiz 更新时间:2024-05-07 21:35
最后编辑:Jeebiz 更新时间:2024-05-07 21:35