使用google authenticator打造运维平台的动态口令
原文地址http://rfyiamcool.blog.51cto.com/1030776/1416189
otp是什么知道么?是一次性密码,简单的说,totp是基于时间的,htop是基于次数的。
GoogleAuthenticator这个开源的项目实现了基于时间的一次一密算法,也就是Time-basedOne-timePassword(TOTP),这个是客户端的实现。同时在GitHub上有服务器端的实现。大家在github厘搜搜,不管是几乎任何语言的totphotp的实现方式都有的,拿来就能用。
下面是使用一次一密基本的步骤:
1.在服务器端对每个用户生成一个密钥SecretKey,这个密钥对于每个用户是不同的。
2.用户在自己的手机上安装GoogleAuthenticator。第一次使用这个系统的时候,将密钥输入到GoogleAuthenticator。这里有两种输入方式,可以手动的输入,也可以由系统生成二维码,GoogleAuthenticator可以直接扫描二维码来读取密钥信息和帐号信息。同时可以设置一些参数,比如一次一密的长度(默认为6),时间步长(默认为30s)等。
3.GoogleAuthenticator每隔一段时间为系统自动生成一个新的密码。系统验证的时候,用户输入GoogleAuthenticator中的数字密码来验证。
这里的一次一密的原理是这样的。首先是对于同一个用户,服务器和GoogleAuthenticator这个客户端共享了一个密钥SecretKey,二是服务器和GoogleAuthenticator有相同的时间。
在我们的平台中怎么用到,比如单点登录的时候,除了帐号密码,还需要一个口令卡,这看起来是不是很酷。当时如果你的口令牌没有拿,放到家里了,除了呵呵,也可以走自动申请流程的方式让管理员暂时去除对你的口令认证。
个人觉得在权限管理接口上,如果集成口令,是一件很爽的事情,比如你申请改密码,我不需要重新给你发短信,你只要有口令就好了。不多说了,他的好处还是不少。
他的缺点也显而易见,麻烦。。。。。是推动这件事,麻烦。在技术上其实没啥难度,毕竟大点的互联网都集成了单点登录,我只需要在单点登录加个对比就行了。
GoogleAuthenticator会基于密钥和时间计算一个HMAC-SHA1的hash值,这个hash是160bit的,然后将这个hash值随机取连续的4个字节生成32位整数,最后将整数取31位,再取模得到一个的整数。这个就是GoogleAuthenticator显示的数字。在服务器端验证的时候,同样的方法来计算出数字,然后比较计算出来的结果和用户输入的是否一致。
使用这两个来完成一次一密确实很方便的,大家可以尝试用googeAuthenticator代替手机短信来实现一次一密的方法。一个能让运维平台更安全,更时髦的方法,就这么出来了。文章有些原理没有描述清晰,请见谅。
这篇主要是介绍篇,如果大家有兴趣,我再写写服务器端的一些操作。
使用google authenticator打造运维平台的动态口令相关推荐
- Google authenticator 谷歌身份验证,实现动态口令
Google authenticator 谷歌身份验证,实现动态口令 google authenticator php 服务端 使用PHP类 require_once '../PHPGangsta/G ...
- 业务上云后,58到家运维平台的演进之路(含成本规划与监控建议)
本文根据杨经营老师在[Deeplus直播第216期]线上分享演讲内容整理而成. 杨经营 58到家运维专家 多年互联网运维经验,2015年加入58到家,精通Linux操作系统,见证了58到家运维体系从0 ...
- 58到家运维专家杨经营:业务上云后运维平台的演进之路
杨经营 DBAplus社群出品 读完需要 10 分钟 速读仅需 4 分钟 本文根据杨经营老师在[Deeplus直播第216期]线上分享演讲内容整理而成.(文末有获取本期PPT&回放的途径,不要 ...
- 网关 Apache APISIX 在 360 基础运维平台项目中的实践
女主宣言 今天小编为大家分享一篇关于Apache APISIX的文章,文章从开发者的角度讲述了 Apache APISIX 网关在 360 基础运维平台的落地实践,希望能对大家有所帮助. PS:丰富的 ...
- 优维科技EasyOps®一体化运维平台入选“大信创产品目录”
以云计算.大数据为代表的新一代信息技术正在带来新的架构模式和应用模式,IT行业整个技术体系正面临一次大的换代升级机遇.在新技术更新换代的同时,中国IT产业也正面临前所未有的供应链安全问题,自主可控的信 ...
- 报告!优维科技EasyOps®️全栈运维平台又一大波新功能上线
报告!优维EasyOps®️全栈运维平台又迎来了一大波新功能上线: 涉及HyperInsight超融合监控.CMDB.ITSM.自动化运维.DevOps · 持续集成.公共服务.UI 8.0 & ...
- 京东物流系统自动化运维平台技术揭密
作者:赵玉开,十年以上互联网研发经验,2013年加入京东,在运营研发部任架构师,期间先后主持了物流系统自动化运维平台.青龙数据监控系统和物流开放平台的研发工作,具有丰富的物流系统业务和架构经验.在此之 ...
- 一体化运维平台规划介绍
运维平台规划体系全介绍 识别运维平台的边界在哪儿,才能更好地构建平台,从而协助运维的日常工作. 在之前的文章中,谈到过"运维的本质--可视化",在可视化的篇幅中,着重介绍自动化的可 ...
- 漫途设备远程运维平台在制造业中的应用!
我国正处于从制造大国向制造强国迈进的关键时期,制造业的数字化.网络化.智能化以及绿色制造体系(双碳为代表)的打造事关制造业全局,是制造业高质量.可持续发展的关键与重要着力点.而设备智能运维是智能制造行 ...
最新文章
- 原创推荐!B站最强学习资源汇总(数据科学,机器学习,Python)
- excel去掉一行文字中的逗号合并在一起_Python使用pandas库五行代码合并excel
- 将bios还原为默认设置时无法启动windows
- 用C#计算1000以内含1的数字
- java多态强制类型转换_java多态和强制类型转换
- 全链路监控方案概述与比较
- LeetCode 34 在排序数组中查找元素的第一个和最后一个位置
- 程序员讨论技术问题时说话都很直接,哪个国家都不例外
- Robocode 直线瞄准机器人
- HSRP在企业网中的应用(CISCO小凡模拟器)
- UML常用图--类图,用例图,序列图(时序图),协作图(通信图),状态图,活动图
- 截止2020年中国有多少大学生?
- 刘强东的自白:我为啥要和苏宁打价格战?
- 东方联盟创始人郭盛华:互联网守护神的传奇故事
- 结构相似性(SSIM)原理及其实现
- 滴水石穿,奇迹是一点点实现的
- 深入理解Android相机体系结构之十
- Mac新手使用技巧——Safari浏览器
- mysql可以存储拼音吗_MySQL汉字变换拼音(存储函数)
- 什么是短信平台api接口?