需求

实现登录双因素认证

开源库使用

框架:github.com/gin-gonic/gin
验证码:github.com/dchest/captcha
session管理:github.com/gorilla/sessions + github.com/boj/redistore
OTP:github.com/xlzd/gotp + privacyidea
邮件发送:gopkg.in/gomail.v2

关键点

  • 验证码默认存储在内存中,怎么多实例共享?
    重写dchest/captcha的Store接口,使用redis存储验证码。
  • 用户验证完账号密码,如何记录用户的这一状态?
    用户验证通过后,生成临时session保存到redis中,默认5min,用户验证OTP的时候验证cookie中是否存在该session,存在则验证合法性(获取redis中存储的数据,存储了auth=pwd则视为通过了账号密码验证),之后再校验OTP。OTP Token在privacyidea中生成,也可自己随机生成,TOTP算法验证是否通过OTP验证。用户线下使用谷歌令牌或者身份宝等软件扫码即可。用户验证OTP通过后生成新的session,有效期一天。

登录的双因素认证-Golang实现相关推荐

  1. 提升云桌面登录账号安全,宁盾双因素认证“护航”齐鲁制药移动办公

    客户介绍: 齐鲁制药,是中国大型综合性现代制药企业,中国医药工业百强企业,专业从事治疗肿瘤.心脑血管.抗感染.精神系统.神经系统.眼科疾病的制剂及其原料药的研制.生产与销售.齐鲁制药销售总公司是齐鲁制 ...

  2. 如何为***选择合适的动态密码双因素认证方案

    CKEY动态密码认证是双因子认证的一种方式,×××用户增加动态密码认证,借助此方案可以提升×××远程拨入安全,加强登陆用户审计. CKEY为×××提供短信密码.硬件令牌.软件令牌.短信密码+硬件令牌混 ...

  3. 业余草双因素认证(2FA)教程

    所谓认证(authentication)就是确认用户的身份,是网站登录必不可少的步骤. 密码是最常见的认证方法,但是不安全,容易泄露和冒充. 越来越多的地方,要求启用双因素认证(Two-factor ...

  4. 知名密码管理应用LastPass启用双因素认证

    如果你真的关心在线账号的安全,那么你可能已经了解并使用多因素认证.今天知名密码管理软件LastPass宣布了名为"LastPass Authenticator"的应用程序,这家已经 ...

  5. 双因素认证(2FA)

    转自:  http://www.ruanyifeng.com/blog/2017/11/2fa-tutorial.html 所谓认证(authentication)就是确认用户的身份,是网站登录必不可 ...

  6. 关于双因素认证(2FA),这些基础知识你一定要知道

    如今,在线时间占据了生活的一大部分.远程工作.社交媒体人气的激增以及元宇宙的出现意味着如今的数字身份与现实身份一样重要,而维护数字身份安全也变得更加重要. 双因素认证(2FA)作为额外安全层为账号登录 ...

  7. 双因素认证令牌_(完整版)双因素认证解决方案

    双因素认证方案 一. 网络安全认证的需求背景 网络钓鱼.欺诈等网络犯罪现象已经达到非常严峻的情况,用户如果只依赖个人密码进行 帐户登录或网上交易, 是非常危险和不可靠的认证方法. 针对这些问题, 北京 ...

  8. 服务器双因素认证微软Ad,12-双因素认证(MIX)配置举例

    双因素认证(MIX)是指,将运维审计系统已有的认证方式(本地认证.ldap认证.radius认证.TOTPMobile认证)两两组合的一种更高强度的认证方式.被组合的两种认证方式可以是逻辑关系上的&q ...

  9. 双因素认证,让用户的帐号安全无忧

    在数字化信息化的今天,"帐号"成为每个人必不可少的网络通行凭证,它关联着个人的数字资产与隐私,甚至影响着现实资产的安全性. 如何确保用户帐号安全,是所有开发者都极为重视的问题,而& ...

最新文章

  1. AI 生成的代码可信吗?编写的代码有 Bug 吗?
  2. 黑客是如何绕过WAF的
  3. Redis集群读写分离架构搭建以及主从数据连通验证(附加集群口令认证以及Redis端口6379释放)
  4. HDU [P3605] Escape
  5. 《每日一题》738. Monotone Increasing Digits 单调递增的数字
  6. 原生js声音播放代码
  7. P5829 【模板】失配树
  8. 今天的我叫史努比的飞鸽传书
  9. 【今日CV 计算机视觉论文速览】Mon, 25 Mar 2019
  10. Ubuntu10.04中间Leach协议一键安装
  11. 百度AI学习:一、语音识别
  12. java程序开发个人笔记_Java程序开发入门笔记
  13. com.mysql.jdbc.jdbc2.optional.MysqlXADataSource 找不到
  14. 两幅图的RGB+Depth点云拼接
  15. missing arguments for method toArray in trait Collection
  16. 构建之法阅读笔记三—结对编程
  17. 如何在微信公众号优雅地添加代码
  18. 用计算机语言写结婚祝福语,[结婚电子显示屏祝福语]电子显示屏结婚贺词
  19. 计算机编程高中能学吗,高中生怎么学习计算机编程
  20. 白山搜索引擎优化收费_百度搜索引擎优化收费标准

热门文章

  1. 美团java后台面经
  2. TUP:分享产品背后的技术和用户体验
  3. jquery实现图片上传
  4. Sql Server 快捷键
  5. LLVM 与 Clang 介绍
  6. Qzon背景音乐常规办法(如何获取MP3链接)
  7. MySQL8.0 Optimizer Hints
  8. 如何创建项目管理工作流程?
  9. 计算机pm,PM、PMP、PMO分别都是什么 以及三者的关系
  10. POSIX 标准介绍