首页
学习
活动
专区
圈层
工具
发布

用户登录认证设计方案

分布式,SSO(single sign on)模式:单点登录英文全称Single Sign On,简称就是SSO。它的解释是:在多个应用系统中,只需要登录一次,就可以访问其他相互信任的应用系统。...业务A、业务B没有登录模块。 而 SSO 只有登录模块,没有其他的业务模块。 一般过程如下: 当业务A、业务B需要登录时,将跳到SSO系统。...SSO从用户信息数据库中获取用户信息并校验用户信息,SSO系统完成登录。 然后将用户信息存入缓存(例如redis)。...当用户访问业务A或业务B,需要判断用户是否登录时,将跳转到SSO系统中进行用户身份验证,SSO判断缓存中是否存在用户身份信息。 这样,只要其中一个系统完成登录,其他的应用系统也就随之登录了。...这就是单点登录(SSO)的定义。 优点 : 用户身份信息独立管理,更好的分布式管理。可以自己扩展安全策略 缺点: 认证服务器访问压力较大。 3. Token模式 ? 我画了一个流程图 ?

3.4K20

Flask-6 用户登录认证

Flask-Login 为 Flask 提供了用户会话管理。它处理了日常的登入,登出并且长时间记住用户的会话。 4. 如何使用Flask-Login?...修改文件夹flaskblog中models.py,让用户类继承flask-login中的UserMixin类,能够使用继承过来的属性和方法,添加登录用户查询方法: ?...改文件夹flaskblog中routes.py,修改注册和登录方法,添加退出登录方法、账户信息方法: ? ? ?...输入错误的邮箱和密码,提示错误信息登录失败: ? 输入正确的用户名密码,登录成功: ? 点击帐号信息导航,显示账户内容: ? 注册页面输入已经注册过的用户名和密码,给出提示信息: ?...当我们退出登录后,直接访问http://127.0.0.1:5000/accout 账户信息地址,会直接跳转到登录页,输入账户号密码后自动跳转到账户信息页面: ? ? 今天就到这里,我们下节内容见!

1.8K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    RedHat Linux 用户登录认证失败

    今天客户反映一个问题,ssh不上自己的服务器了,进机房RedHat Linux本地登录(3级别)的时候发现输入root敲回车的时候出现如下提示: Your account is locked.Maximum...好说,单用户模式下 pam_tally2 -u root  (faillog -u root)显示root用户登录失败记录的次数 pam_tally2...-u root -r  (faillog -u root -r)将登录错误数重置为0 然后重启(5级别模式下)输入用户名密码,提示Authontication...继续单用户模式 authconfig --disableldap --update 顺便 vi /etc/pam.d/system-auth #%PAM-1.0 # This file is auto-generated...service in crond quiet use_uid session    required      pam_unix.so 罪魁祸首就是红色字体那一行,请将红色字体前面加个# 所有问题都解决,系统用户可以正常登陆

    11.4K10

    mongodb的用户登录认证和基本使用

    mongodb的用户登录认证和基本使用 连接: killall mongo mongo --host 127.0.0.1:27017 创建超级管理员 >use admin >db.createUser...,在不验证权限的情况下,可以创建一个用户,当继续创建第二个用户时,会返回错误,若想继续创建用户则必须登录,并且要先进入admin数据库。...数据库用户角色:read、readWrite; 2. 数据库管理角色:dbAdmin、dbOwner、userAdmin; 3....超级用户角色:root   // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase) 7....内部角色:__system 创建用户时可以在其数据库中创建,这样不用每次都进入admin数据库登录后再切换。如在数据库"mydb"创建用户"newwjb"。

    4.6K20

    Google Authenticator实现Linux用户登录双认证

    security/pam_google_authenticator.so /usr/lib64/security/pam_google_authenticator.so #配置系统PAM模块,修改sshd支持谷歌的认证.../configure make && make install #运行google-authenticator命令,它将会在当前登陆用户的家目录中生成一个新的密钥 cd ~ google-authenticator...#  45083255 #  48589468 #  91373042 #  22191496 #上述共需回答5个y #第1个:问你是否想做一个基于时间的令×××y #第2个:是否更新你的google认证文件...y #并且上面这些设置将被存储在用户的/.google_authenticator文件中,emergency scratch codes 中的5个代码是紧急代码,务必牢记, #这是在你的动态口令无法使用的情况下使用的...最后重启sshd服务 systemctl restart sshd ###--- secureCRT设置keyboard interactive需要放在第一位 ---### ### 解决内网主机跳过二次认证

    4.1K30

    用户登录安全框架shiro—用户的认证和授权(一)

    ssm整合shiro框架,对用户的登录操作进行认证和授权,目的很纯粹就是为了增加系统的安全线,至少不要输在门槛上嘛。   ...21 System.out.println("认证:当前登录的用户不存在"); 22 throw new UnknownAccountException...获取主体 14 Subject subject = SecurityUtils.getSubject(); 15 try{ 16 // 调用安全认证框架的登录方法...return new ModelAndView("redirect:/index"); 26 } 最后需要给大家说的就是,当某用户登录成功之后,shiro安全框架就会将用户的信息存放在session...中,你可以通过User user = (User) SecurityUtils.getSubject().getPrincipal();这句代码在任何地方任何时候都能获取当前登录成功的用户信息。

    1.7K50

    从SSO认证缺陷到任意用户登录漏洞

    原文链接: https://xz.aliyun.com/t/13848 最近在项目中碰到了app中SSO单点登录使用不当导致的任意用户登录漏洞,渗透过程中碰到不少JS加密处理,SIGN值生成,在与开发的对抗中还是觉得比较有意思...,特此记录一下 什么是SSO 这里简单描述下什么是SSO单点登录:单点登录就是在多个系统中,用户只需一次登录,各个系统即可感知该用户已经登录。...## 任意用户登录漏洞 既然有了加解密算法,那么就先看一下其余的流量吧,在进入B系统之后,第一个请求的接口是register接口,将请求响应数据进行解密 可以看到register接口通过sfz+姓名+手机号作为登录认证...相当于只要知道任意用户的手机号,即可实现了任意用户登录。 因为漏洞比较严重,于是及时上报没有进行通用漏洞测试。...token凭证了 总结 此处发现的漏洞是因为开发没有正确的实现SSO登录认证,而是根据自己的方式来实现认证登录。

    1.7K10

    【Spring Boot】014-Shiro登录拦截和用户认证

    一、登录拦截 1、在配置类中添加shiro的内置过滤器 概述: /* * anon:无需认证就可以访问; * authc:必须认证了才能访问; * user:必须拥有记住我功能才能访问(一般不用)...bean.setLoginUrl("/toLogin"); return bean; } } 第四步:测试结果(点击add自动跳转到登录页面) 二、用户认证...1、执行认证 第一步:在MyController类中进行用户认证 package com.zibo.controller; import org.apache.shiro.SecurityUtils...Model model){ //获取当前的Subject Subject subject = SecurityUtils.getSubject(); //封装用户的登录数据..."/> 第三步:测试结果(提示错误说明执行了认证方法) 2、配置用户信息完成用户认证 第一步:修改AccountRealm类 package com.zibo.config

    66910

    Python Web 聊天室开发(三):用户认证和登录

    Python 在线聊天室开发(二):漫游聊天记录 今天,我们来实现聊天室的用户认证功能,只有登录认证后的用户才能进入聊天室。...makemigrations chat python manage.py migrate 创建登录视图 在之前的代码中,我们直接通过index视图函数返回首页页面,现在我们需要将其修改一下,实现用户的登录认证...成果 完成上述步骤之后,我们这个在线聊天室就只能登录认证后的用户可以进入聊天室了。...登录页: 登录错误信息提示: 完整的动图演示: 如果未登录的用户直接访问聊天房间的URL,则会跳转到登录首页: 这样,我们就完成了在线聊天室的用户认证功能扩展。...总结起来就是 3 步: 定义用户模型 编写认证视图函数 处理HTML模板 是不是很简单? 分享、点赞、在看,给个鼓励吧!

    2.7K20

    【Oauth2.0 单点登录 + 第三方授权认证】用户认证、授权模式

    认证方式有两种: 身份认证: 用户在访问相应资源时对用户的身份信息进行验证,身份合法才可以继续访问。 常见用户认证方式:用户密码登录,指纹打卡。简单来说就是校验用户账号密码是否正确。...因而用户认证(登录)成功后还需要鉴权,判断用户是否有权限访问相应资源。 1.2 单点登录认证 单点登录(Single Sign On),简称 SSO 。...如下图,当用户在访问抢单页面时,需要先通过微信登录进行身份认证,认证通过才允许抢单。 2....认证技术解决方案 2.1 单点登录解决方案 分布式系统要实现单点登录,通常将认证系统独立抽取出来作为用户登录和授权使用,并且将用户身份信息存储在单独的存储介质,比如:MySQL、Redis,出于对性能的考虑通常放在...如下图,我们将畅购认证系统作为单点登录用户认证系统,用户通过该系统登录,系统会返回一个token给用户,同时存储一份到Redis中,用户每次访问其他微服务都会携带token,微服务会调用畅购认证服务验证

    6.2K31

    【JavaWeb】案例:用户登录、用户自动登录

    本期介绍 本期主要介绍案例:用户登录、用户自动登录 文章目录 1、案例一:用户登录 1.1、需求说明 1.2、流程分析图 1.3、案例代码实现 2、案例二:用户自动登录【重点】 2.1、问题说明&流程分析...1.1、需求说明 1.2、流程分析图 1 、点击登录按钮时,在服务器根据表单用户名和密码,判断是否登录成功(本案例不考虑登录失 败) 2、登录成功,将用户信息存入 session...我们希望有一个程序,在我们打开 index.jsp 时,若我们之前就已经登录成功了,即使登录状态消 失了,也 能自动帮我们输入之前的用户名和密码,帮我们重新登录。...登录:成功 ( session 作用域记录用户登录状态),失败(在 request 作用域记录用错误信息) 过滤器可附加到一个或多个 servlet 或 JSP 页面上,可以检查请求信息...,把用户名密码永久保存到 cookie 中,方便 过滤器进行自动登录) web.xml 加入:(filter-class 路径自己设置) AutoLoginFilter:(过滤器通过保存用户名密码的

    6.8K40

    Spring Cloud OAuth2 实现用户认证及单点登录

    假设我们做了一个自己的服务平台,如果不使用 OAuth2 登录方式,那么我们需要用户先完成注册,然后用注册号的账号密码或者用手机验证码登录。...而对于我们的服务来说,我们也不需要存储用户的密码,只要存储认证平台返回的唯一ID 和用户信息即可。 以上是使用了 OAuth2 的授权码模式,利用第三方的权威平台实现用户身份的认证。...当然了,如果你的公司内部有很多个服务,可以专门提取出一个认证中心,这个认证中心就充当上面所说的权威认证平台的角色,所有的服务都要到这个认证中心做认证。 这样一说,发现没,这其实就是个单点登录的功能。...用户只要第一次输入用户名、密码完成登录后,一段时间内,都可以任意访问各个页面,比如产品列表页面、我的订单页面、我的关注等页面。...username=admin 和 password=123456 就相当于在 web 端登录界面输入的用户名和密码,我们在认证服务端配置中固定了用户名是 admin 、密码是 123456,而线上环境中则应该通过查询数据库获取

    3.1K40

    使用vsftpd服务传输文件(匿名用户认证、本地用户认证、虚拟用户认证)

    vsftd作为更加安全的文件传输的服务程序,允许用户以三种认证模式登录到FTP服务器上。 匿名开放模式: 是一种最不安全的认证模式,任何人都可以无需密码验证而直接登录到FTP服务器。...本地用户模式: 是通过Linux系统的本地账户密码信息进行认证,相较于匿名开放模式更安全。但是如果被×××破解了账户的信息,就可以畅通无阻登录FTP服务器,从而完全控制整台服务器。...虚拟用户模式: 是这三种模式中最安全的一种认证模式,它需要为FTP服务单独建立用户数据库文件,虚拟出用来进行口令验证的账户信息,而这些账户信息在服务器系统中实际上是不存在的,仅供FTP服务程序进行认证使用...需要注意的是7版本需要在配置文件添加“allow_writeable_chroot=YES”参数才允许本地用户登录。...FTP服务用语存储文件的根目录指的是,当虚拟用户登录后访问的默认位置。

    3.4K50

    人脸识别登录认证:加强系统认证

    人脸登录成功 ? 人脸登录失败 ? 注册人脸 ?...五、准备工作介绍完毕,开始coding吧 首先准备前端,打开电脑摄像头,我们在进行人脸注册和登录时,都需要带上摄像头拍下的图片,使用base64进行编码,传到后台,人脸注册还需要额外传入用户的ID,用来表示当前用户...,当用户登录成功后会返回这个ID, ?...score:我们判断是否认证成功的依据,一般匹配度在90以上基本是从人脸库中找到相似度非常高的,也就是认证成功, ?...人脸注册使用的是apiface的adduser方法,很简单,传入相应参数,直接调用 其中参数options是可选项,其他的参数和人脸登录是一样的,只是多了一个userid,用来标识当前注册的用户。

    10.3K30
    领券