用户与安全
安全模式即应用的用户登录及权限管理模式,共四种类型,关闭、企业空间管理、第三方管理、SSO。
1 安全模式设置
1.1 关闭
安全模式关闭时,用户无需登录即可访问应用,不做任何权限管控;
1.2 企业空间管理
应用的用户体系即开发工具的用户体系,关于用户权限的管理参考协作与管理 [角色与权限]模块。
企业空间管理模式下,登录页可选择与开发工具登录页保持一致,或自定义页面样式
1.2.1 平台登录页
采用开发工具登录页,登录方式选择[平台登录页];
用户访问应用时登录页面如下,如果已经在同一浏览器登录了开发工具再访问应用,则无需登录。
1.2.2 自定义登录页
需要配置一个登录页,需要注意,只能选由默认登录元件配置出来的页面,配置方式见登录页
小程序集成请参考文档微信小程序登录。
1.3 第三方管理
请先阅读用户体系建设文档,了解平台及应用的用户体系相关内容。
第三方管理模式下,应用的用户体系需要由领域模型搭建或外部第三方定义,不采用平台的用户体系,权限管理同理;这种模式下 需要配置如下几项:
- 登录页配置:选由自定义登录元件配置出来的页面,配置方式见登录页 。
- 资源权限接口: 用于外部扩展权限时使用,实现自定义权限的接口;
- 授权标识:格式要求为英文字母开头,支持英文字母、下划线,长度 <=30;
Tips:为了减少从零搭建一套用户、权限体系的工作量,平台基于领域模型开发内置了一套默认的第三方权限体系,提供给独立定制第三方权限的场景快速复用修改。在开启下图的【应用内置组织架构及权限】开关后可使用,使用方法参考内置组织架构及权限管理模组。
1.4 SSO
应用与 idaas 打通一种登录实现,目前只支持 Idaas SSO 能力。
1.4.1 配置项填写说明
提交键值 | 标签名称 | 示例值 | 表单类型 | 说明 |
---|---|---|---|---|
clientType | 客户端类型 | idaas | 下拉框 (<=长度 10 字符) | 目前默认就 idaas 一种 |
clientId | 客户端 ID | a6c66bfa982140c5a8177ec75770e850 | input <=50 字符 | SSO 平台申请 |
clientSecret | 客户端密钥 | 91047a60-7d15-47a2-8ef9-72722219d39b | input <=50 字符 | SSO 平台申请 |
authHost | SSO 服务地址 | http://idaas-dev-toe.xuelangyun.com | input <=50 字符 | |
loginUrl | SSO 登陆地址 | http://idaas-dev-toe.xuelangyun.com/#/login?response_type=code&scope=openid&state=af0ifjsadsldkj&client_id={client_id}&redirect_uri={loginCallbackUrl} | input <=300 字符 | {client_id}占位符表示取之前填写的 clientId 填入, {loginCallbackUrl}占位符表示取之前填写的 loginCallbackUrl 并 encoder 后填入 不用占位符自己直接写具体配置也是可以的 |
loginCallbackUrl | 登录回调地址 | /auth/idaasLogin | input <=50 字符 | 指向本应用,idaas 对应的回调地址,这里配置 uri,前面的 host 应用名,由运行时程序自动生成。 |
logoutUrl | SSO 登出地址 | http://idaas-dev-toe.xuelangyun.com/oidc/session/end?post_logout_redirect_uri={logoutCallbackUrl}&id_token_hint= | input <=300 字符 | {logoutCallbackUrl}占位符表示取之前填写的 loginCallbackUrl 并 encoder 后填入 不用占位符自己直接写具体配置也是可以的 |
logoutCallbackUrl | 登出回调地址 | /app.html | input <=50 字符 | 指向本应用 |
authTokenUri | 获取 TOKEN | /oidc/token | input <=50 字符 | 根据 code 换取 token 的地址 备注: token 接口返回用户少量信息,不同平台不一样,如 uid,name 等。 |
authUserInfoUri | 获取用户信息 | /oidc/me | input <=50 字符 | 查询用户信息的地址 备注:获取用户信息的专业接口 |
sync_user_switch | 是否同步用户 | 当 sso 登陆跳转过来的用户不存在时,是否自动同步此用户信息 |
安全模式设置为 SSO,按以上填写要求填写配置项
编辑好应用内容,发布应用
现在访问应用可以看到已经是接入 SSO 登陆的模式了
1.4.2 操作建议
应用开发可能会涉及到多个环境(开发环境,测试环境,生产环境等),在不同环境下 SSO 配置项的值会有区别,为了避免每次发布都要重新填写,可以使用环境变量功能,具体步骤如下:
声明一组代表 SSO 配置项的变量,并维护好各环境下的变量取值;
回到应用设置-安全模式-SSO,在此引用之前声明的变量即可,引用方法如下
2 登录页配置
2.1 登录页管理
在应用的模组里可以新增/编辑登录页,建议将登录页统一放在一个模组,例如资源模组;
登录页可以通过页面元件搭建,提供登录组件、结构布局、输入元素、图片与文件、按钮、展示组件、集成与扩展 8 类共 24 个元件;
新建登录页:在资源组内,点击添加按钮,打开[新增登录页]弹窗,需要填写登录页标题、从空页面创建或选择一个模板,hover 模板时可以预览模板效果;
已添加的登录页,点击右侧菜单按钮,可以进行复制、编辑、删除操作
搭建登录页时其他元件的使用与普通页面相同,此处不再赘述;
2.2 默认登录元件
默认登录元件配置的登录页,可用于[企业空间管理]的安全模式。
使用默认登录,采用的是共工平台的用户体系和权限管理能力,各个配置项含义如下:
- 账号登录:即通过共工账号密码的方式登录,默认开启,不可更改
- 验证码登录:即通过手机号或邮箱接收验证码的方式登录,默认开启,可关闭
- 注册:即是否支持在此登录页放置注册入口,默认开启,可关闭
- 图形验证码:是否开启图形验证码,默认开启,可关闭
2.3 自定义登录
自定义登录元件的功能类似数据视图,在内部放一系列输入元素构成一个表单,用于填写用户信息。
数据源可设置为逻辑或连接器,通过按钮提交表单数据传给数据源,实现登录验证。
自定义登录元件配置的登录页,可用于[第三方管理]的安全模式。
配置自定义登录页的说明参考登录页