package com.yunhai.userbase.model.identity; import lombok.Data; import javax.validation.constraints.NotNull; /** * 开放接口(oapi)切换身份入参:目标用户 + 目标学校与该学校下的角色。
* 服务端校验 (userId, roleId, schoolId) 在 {@code sys_user_role_rel} 中存在且正常态, * 不存在则拒绝(防止越权切换到非授权身份)。
* 调用方应用须在 {@code yh.identity.switch-allowed-app-keys} 白名单内(AppKey 级闸门)。 * * @author chenx * @date 2026/8/27 */ @Data public class IdentitySwitchOapiRequest { /** 目标用户ID(由调用方应用后端从登录会话获取,禁止前端透传) */ @NotNull(message = "用户ID不能为空") private Integer userId; /** 目标角色ID(SysRoleEnum.key) */ @NotNull(message = "角色ID不能为空") private Integer roleId; /** 目标学校ID(=学校组 sys_group.id;无学校维度传 0) */ @NotNull(message = "学校ID不能为空") private Integer schoolId; }