“应用免登录”是指当用户点击一个应用时,无需单独手动输入钉钉用户名和密码,应用程序可自动获取当前用户的钉钉身份,通过钉钉的身份登录应用。
1. 当你开发了一款钉钉应用,无论是H5微应用还是钉钉小程序,点击应用的时候都需要做身份验证并登录
2. 当开发的应用需要企业管理员在企业管理后台对应用进行一些设置和管理功能时,你需要开发一套应用的后台管理系统,管理员在企业管理后台直接点击登录,便可直接登录
3. 当你开发了一个独立的网站,但是希望用户以钉钉的账号登录你的网站时,便可直接登录
4. 当你开发的H5网站在钉钉客户端内打开,只需要用户直接点击H5链接,便可直接登录
5. 当你开发了一个独立的网站,希望以钉钉的账号登录你的网站时,可以通过展现钉钉提供的登录URL的页面,用户输入钉钉账户密码后实现登录
6. 钉钉账号体系与企业内部应用系统关联,帮助企业内部应用上钉钉,从工作台一键登入内部系统
1. 钉钉账号统一认证,账号统一和数据统一,快速实现,灵活便捷
2. 免登录过程在钉钉端内静默执行,用户甚至无需看到操作界面
3. 覆盖全面、支持6种不同场景的免登录打通方式,满足绝大部分的登录场景
1. 对于用户,节省手动输入账号和密码的时间,减少操作步骤,提升用户体验
2. 对于开发者,无需做用户模型改造,即可实现钉钉免登能力,大大降低客户原有应用上钉的改造成本
钉钉上运行的H5微应用、钉钉小程序、应用管理后台、以及三方网站,都以钉钉账号系统作为统一的账号标准,在每一次需要做账号登录的时候,由钉钉自动启动用户身份获取,身份验证的程序,对用户是无感体验,直接使用应用且保持数据统一。
场景类型包括:
1. 企业内部应用免登
2. 第三方企业应用免登
3. 企业应用管理后台免登
4. 钉钉内登录第三方网站
5. 扫码登录第三方网站
6. 使用钉钉账号登录第三方网站
划重点了!这个能力套件可以使钉钉上运行的H5微应用、钉钉小程序、应用管理后台、以及三方网站,都可以实现以钉钉账号系统作为统一的账号标准。心动不如行动,具体开发流程、开发文档点击此处进入,小伙伴们快来试试吧!
想了解更详细的场景化套件介绍吗?请点击进入能力中心查看更丰富的内容。
概述
更新时间:2021-06-21
“免登”是指用户进入应用后,无需输入钉钉用户名和密码,应用程序可自动获取当前用户身份,进而使用此用户身份登录系统的流程。
钉钉支持以下免登场景:
当你开发了一个企业应用,或者将你企业内部的系统接入到钉钉后,企业员工在钉钉内使用该应用时,无需输入账户密码,便可实现自动登录你所开发的系统。
在钉钉上开发的第三方企业应用,作为公开的云端SaaS服务可以让企业客户安装使用。管理员开通应用后,企业员工在钉钉内使用该ISV应用时,无需输入账号密码便可直接登录该应用。
当开发的应用需要企业管理员在企业管理后台对应用进行一些设置和管理功能时,你需要开发一套应用的后台管理系统,管理员在企业管理后台直接点应用管理后台,便可免输入账户密码实现自动登录你的应用管理后台系统。
当你开发了一个独立的网站,但是希望用户以钉钉的账号登录你的网站时,可以通过钉钉扫码方式实现免密登录此网站。
注意
此网站并不是钉钉客户端内使用的企业应用/第三方企业应用。
当你开发的H5网站在钉钉客户端内打开,只需要用户直接点击H5链接,便可以免输入钉钉账户密码实现自动登录的流程。
注意
此网站并不是钉钉客户端内使用的企业应用/第三方企业应用。
当你开发了一个独立的网站,希望以钉钉的账号登录你的网站时,可以通过展现钉钉提供的登录URL的页面,用户输入钉钉账户密码后实现登录你的网站的流程。
企业内部应用免登
更新时间:2021-06-17
实现企业内部应用免登,即企业员工在钉钉内使用企业内部应用时无需输入账号和密码。
建议用户信息保存在前端缓存中(dd.setStorage)或者cookie中,避免每次进入应用都调用钉钉接口进行免登。
1. 获取免登授权码。
o 小程序免登
o H5微应用免登
2. 获取access_token。
调用接口获取access_token,详情请参考获取企业内部应用的access_token。
3. 获取用户userid。
调用接口获取用户的userid,详情请参考通过免登码获取用户信息。
4. 获取用户详情。
调用接口获取用户详情信息,详情请参考获取用户详情。
示例代码/**
*
* 企业内部应用免登
* @author openapi@dingtalk
* 2020-11-3
*/
@RestController
public
class LoginController {
/**
* 欢迎页面,通过 /welcome 访问,判断后端服务是否启动
*
* @return 字符串 welcome
*/
@GetMapping("/welcome")
public String welcome() {
return
"welcome";
}
/**
*
* @param requestAuthCode
* @return
* ServiceResult
* 2020-11-3
*/
@RequestMapping(value = "/login", method = RequestMethod.GET)
public ServiceResult<Map<String, Object>> login (
@RequestParam("code") String requestAuthCode) {
// 获取access_token,注意正式代码要有异常流处理
String access_token= AccessTokenUtil.getToken();
// 获取用户信息
DingTalkClient client =
new DefaultDingTalkClient(
"https://oapi.dingtalk.com/user/getuserinfo");
OapiUserGetuserinfoRequest request =
new OapiUserGetuserinfoRequest();
request.setCode(requestAuthCode);
request.setHttpMethod(
"GET");
OapiUserGetuserinfoResponse response;
try {
response = client.execute(request, access_token);
}
catch (ApiException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return
null;
}
// 查询得到当前用户的userId
// 获得到userId之后应用应该处理应用自身的登录会话管理(session),避免后续的业务交互(前端到应用服务端)每次都要重新获取用户身份,提升用户体验
String userId = response.getUserid();
Map<String, Object> returnMap =
new HashMap<String,Object>();
returnMap.put(
"userId", userId);
return ServiceResult.success(returnMap);
}
}
,
Copyright © 2008-2022 秒下下载站
m.down10s.com .All Rights Reserved