YS动态口令系统接入流程
动态口令是保护用户账户的一种常见有效手段,即用户进行敏感操作(比如登录)时,需要用户提供此动态生成的口令做二次身份验证,假设用户的口令被盗,如果没有动态口令,也无法进行登录或进行敏感操作,保护了用户的信息安全。本文重在讲YS和某动态口令商的接入流程。
1、手机密令功能开启和绑定(解绑定过程类似)
绑定就是告诉动态口令商动态口令系统该令牌正式启用,并为该令牌分配一个识别码(tokenid),后续可用来做动态口令认证。注:本流程图不包含各种条件判断分支 。
2、动态口令登录认证流程(支持手机客户端或网页方式)
YS用户在登录时需要分别输入静态口令和动态口令,静态口令认证由YS系统完成,动态口令认证由动态口令商动态口令系统完成。注:本流程图不包含各种条件判断分支。
3、进行敏感操作时的动态口令认证流程(支持手机客户端或网页方式)
4、手机APP客户端调用SDK流程:
5、相关问题阐述:
4.1、动态口令登录认证可做成一个两阶段过程,需要保证两个安全:
4.1.1、多阶段逻辑的安全。开启手机密令功能的用户在登录过程中实际需要验证两次静态口令以保证不会出现多阶段逻辑安全问题。
4.1.2、同时应满足《web安全开发规范》定义的短信验证码的安全要求(比如防暴力破解机制),以下为开发前面后的对比效果:
4.2、在用户登录后,进行敏感操作时需要短信验证码的地方均可以由动态口令代替之,但这就要求用户先通过手机APP登录YS和打开手机密令,折中的办法是同时支持短信验证码和动态口令(参考淘宝),由用户自行选择验证的方式。
4.3、【敏感操作】可以由系统默认定义的敏感操作(比如重置口令)和用户可选的敏感操作(比如设备操作)组成,系统默认定义的敏感操作比如强制执行二次认证,而用户自定义的敏感操作由用户自行选择二次认证的开启和关闭。
4.4、【用户注册】等部分功能无法用动态口令代替,因此短信验证码无法完全被替代。
4.5、一个账户只能绑定一个密令,不允许一个账户可以绑定多个密令和多个账户绑定一个密令的情况。
4.6、如果允许APP的密令在不同时刻绑定到不同的账户上,此时,在APP上关闭密令时,YS后台必须调用动态口令系统的解绑定接口。
4.7、用户必须关闭密令(解绑定)才能去卸载密令,否则在重装密令后将无法登录,也无法再进行绑定,此时需要人工申诉验证真实身份,或将强制解绑定连接发送到注册的邮箱。
4.8、自动化填充动态口令和校验时间必须是在主手机上执行。
YS动态口令系统接入流程的更多相关文章
- poptest老李谈动态口令原理
poptest老李谈动态口令原理 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908 ...
- 使用OTP动态口令(每分钟变一次)进行登录认证
GIT地址:https://github.com/suyin58/otp-demo 在对外网开放的后台管理系统中,使用静态口令进行身份验证可能会存在如下问题: (1) 为了便于记忆,用户多选择有特征作 ...
- FreeRadius+GoogleAuthenticator实现linux动态口令认证
简介 在运维管理中,服务器的密码管理十分重要.服务器数量少的时候还好说,可以定时来改密码.一旦数量多了,再来改密码就不现实了. 前提 我们假定运维访问服务器是这样的: 创建一个普通用户用于登录服务器, ...
- php集成动态口令认证
这篇文章主要为大家详细介绍了php集成动态口令认证,动态口令采用一次一密.用过密码作废的方式来提高安全性能,感兴趣的小伙伴们可以参考一下 大多数系统目前均使用的静态密码进行身份认证登录,但由于静态密码 ...
- OSGI(面向Java的动态模型系统)
基本简介编辑 OSGI服务平台提供在多种网络设备上无需重启的动态改变构造的功能.为了最小化耦合度和促使这些耦合度可管理,OSGi技术提供一种面向服务的架构,它能使这些组件动态地发现对方.OSGi联 O ...
- Android 支付宝以及微信支付快速接入流程
简介 随着移动支付的普及,越来越多的App采用第三发支付,在这里我们以支付宝为例,做一个快速集成! 一.Android快速实现支付宝支付 1.首先,我们需要前往支付宝开放平台,申请我们的支付功能:ht ...
- PHP新闻系统开发流程
PHP新闻系统开发流程一.系统总体设计 (一)系统功能描述和功能模块划分 (二)系统流程分析 (三)系统所用文件二.数据库设计 (一)创建数据库 (二)设计表结构三.新闻发布模块开发 (一)新闻首页 ...
- Linux生成动态库系统
Linux生成动态库系统 一个.说明 Linux下动态库文件的扩展名为 ".so"(Shared Object). 依照约定,全部动态库文件名称的形式是libname.so(可能在 ...
- 9.Linux系统引导流程
一.Linux系统引导流程 当我们按下主机电源键的那时候开始,主板上的CMOS/BIOS模块将进行固件自检,以此检查各个硬件是否正确连接. 在Linux引导流程中,一般可以分为以下几个主要过程: 1. ...
随机推荐
- mongodb 学习笔记 3 --- 查询
在mongodb的查询中可以通过使用如下操作符进行深度查询 1.条件操作符 $gt $gte : > >= {"age":{"$gt":18 ...
- 无缝滚动Js
<html> <body> <div style="width: 190px; height: 127px; overflow: hidden; font-si ...
- cvs 日常使用
http://www.51testing.com/html/44/17144-2954.html http://www.chedong.com/tech/cvs_card.html
- python基础(4)---解释器、编码、字符拼接
1.Python种类 1.1Cpython Python官方版本,使用C语言实现,运行机制:先编译.py(源码文件)->pyc(字节码文件),最终执行时先将字节码转换成机器码,然后交给cpu执行 ...
- LeetCode解题报告—— 4Sum & Remove Nth Node From End of List & Generate Parentheses
1. 4Sum Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + ...
- 深度学习开源工具——caffe介绍
本页是转载caffe的一个介绍,之前的页面图都down了,更新一下. 目录 简介 要点记录 提问 总结 简介 报告时间是北京时间 12月14日 凌晨一点到两点,主讲人是 Caffe 团队的核心之一 E ...
- hdu 4240(最大流+最大流量的路)
Route Redundancy Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- JQuery 实现 锚点跳转
$('.nav-jump').click(function() { $('html,body').animate( { scrollTop:$($.attr(this, 'href')).offset ...
- bzoj 1443 二分图博弈
这种两个人轮流走,不能走 走过的格子的大都是二分图博弈... #include<bits/stdc++.h> #define LL long long #define fi first # ...
- Maven的私有仓库Nexus
1.什么是Nexus 在前面进行maven项目的构建中,可以看到在构建的过程中需要安装maven的依赖插件,如图: 在日常的开发构建中,我们也可以自己搭建一个私有的nexus.那么什么是nexus呢? ...