1 Authenticator 简介 1.1 层次结构图 1.2 作用 职责是验证用户帐号,是ShiroAPI中身份验证核心的入口点:接口中声明的authenticate方法就是用来实现认证逻辑的. 1.3 源代码 1.4 authenticate >该方法是实现认证逻辑的.>如果验证成功,将返回AuthenticationInfo验证信息:此信息中包含了身份及凭证:如果验证失败将抛出相应的 AuthenticationException 实现. 2 ModularRealmAuthentic…
在大型的系统中,安全数据可能会存放在多个数据库中,而且每个数据的加密方式也是不一样的,那么单一的Realm就无法完成. 这时,就需要用到多Realm认证了,多Realm又涉及到认证策略,及在多个Realm认证的时候,怎么样的规则才算认证通过.   还是通过源码来看一下多Realm和认证策略: 1,Subject 组件的login(AuthenticationToken)方法: 2,实际上调用的是 SecurityManager 组件的 login方法,SecurityManager的内部有一个属…
写在前面 在上一篇文章<shiro认证流程源码分析--练气初期>当中,我们简单分析了一下shiro的认证流程.不难发现,如果我们需要使用其他数据源的信息完成认证操作,我们需要自定义Realm继承AuthorizingRealm类,并实现两个方法,分别对应授权和认证. 在这一篇文章当中,我们将介绍如何自定义Realm对象,完成认证信息数据源的切换. 自定义Reaml /**自定义Realm对象 * @author 赖柄沣 bingfengdev@aliyun.com * @version 1.0…
一.概述 Shirom默认使用自带的IniRealm,IniRealm从ini配置文件中读取用户的信息,而大部分情况下需要从系统数据库中读取用户信息,所以需要实现自定义Realm,Realm接口如下: 由此可以分析: ①CachingRealm:负责缓存处理 ②AuthenticationRealm:负责认证 ③AuthorizingRealm:负责授权 通常情况下,自定义的Realm继承AuthorizingRealm即可实现认证与授权 二.自定义Realm实现认证 1.新建module,添加…
异常内容:Authentication token of type [class org.apache.shiro.authc.UsernamePasswordToken] could not be authenticated by any configured realms. Please ensure that at least one realm can authenticate these tokens. 意思是没有Realm进行处理,但实际上是当配置了多个realm时,就会 org.a…
 CDH构建大数据平台-配置集群的Kerberos认证安全 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 当平台用户使用量少的时候我们可能不会在一集群安全功能的缺失,因为用户少,团队规模小,相对容易把控,开发人员直接也彼此了解.这时候只需要做好团队内部或是企业通过一些列行政管理手段就能管理好集群的安全问题.但是别忘了我们的平台定位可是作为一个单一的大数据来支持企业内部所有应用的.正所谓人上一百,形形色色.当平台用户达到一定数量之后其素质难免会参差不齐,大数据平台面对的也不再是…
1.安装插件 sonar插件地址:https://github.com/gabrie-allaigre/sonar-auth-gitlab-plugin 安装插件: 下载插件然后通过maven打包然后放入到sonar的插件目录中(/home/sonar/sonarqube/extensions/plugins),重启sonarqube. 2.gitlab配置 创建应用,填写sonar地址(必须是https) 保存生成认证key,用于后面sonar配置 3.sonarqube配置 配置>gitla…
配置Linux使用LDAP用户认证 本文首发:https://www.cnblogs.com/somata/p/LinuxLDAPUserAuthentication.html 我这里使用的是CentOS完成的LDAP用户管理,可能与网上的大部分教程不同,不过写出来了,那么是肯定能用的了,不过会有部分文件,忘指教.这里使用的 OPENLdap 配合 CentOS7 完成的用户管理,需要配置 nssswitch .pam 和 sssd 3个服务,需要先有一定的了解才能完成本文的配置. 基础配置 完…
Nginx 核心配置-location的登录账户认证实战篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.使用ab命令模拟网站攻击 1>.安装httpd-tools工具 [root@node108.yinzhengjie.org.cn ~]# yum -y install httpd-tools Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.…
配置Zuul代理下游的认证 您可以通过proxy.auth.*设置控制@EnableZuulProxy下游的授权行为.例: application.yml proxy: auth: routes: customers: oauth2 stores: passthru recommendations: none 在此示例中,“客户”服务获取OAuth2令牌中继,“存储”服务获取传递(授权头只是通过下游),“建议”服务已删除其授权头.如果有令牌可用,则默认行为是执行令牌中继,否则为passthru.…
Keytool配置 Tomcat的HTTPS双向认证 证书生成 keytool 简介 Keytool是一个Java数据证书的管理工具, Keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中. 在keystore里,包含两种数据: 密钥实体(Key entity)--密钥(secret key)又或者是私钥和配对公钥(采用非对称加密) 可信任的证书实体(trusted certificate entries)--只包含公钥 我们常说的证书就是就是上面…
使用shiro框架来完成认证工作,默认是iniRealm,如果需要使用其他的realm,需要配置. ini配置文件详解,官方文档的说明如下: [main] section 是你配置应用程序的 SecurityManager 实例及任何它的依赖组件(如 Realms)的地方. 在[main]里 使用 键/值对 配置对象实例,如 SecurityManager 或任何它的依赖组件,如自定义的realm. 如自定义一个realm,然后注入给SecurityManager: 注:(在SecurityMa…
有具体问题的可以参考之前的关于shiro的博文,关于shiro的博文均是一次工程的内容 ! 认证策略: 修改认证策略: applicationContext.xml <!-- 认证器 --> <bean id="autheniicator" class="org.apache.shiro.authc.pam.ModularRealmAuthenticator"> <property name="realms">…
前言 微服务架构提供了更好的灵活性.可伸缩性以及服务复用的能力,但,微服务也有特殊的安全需求,Istio Security尝试提供全面的安全解决方案.为了提供灵活的服务访问控制,需要双向 TLS 和细粒度的访问策略.Istio 提供两种类型的身份验证:传输身份验证和来源身份验证.通过配置不同级别的认证策略,可以快速控制不同的安全访问粒度. 典型的使用场景: 1.在未启用双向TLS的安装好 Istio 的 Kubernetes 集群中,需要快速启用全网格双向TLS: 2.网格内某些服务之间需要使用…
前 言 配置SharePoint 2013基于AD的Form认证,主要有三步: 1. 修改管理中心的web.config: 2. 修改STS Application的web.config: 3. 修改Web应用程序的web.config并开启FBA: 首先,修改CA的web.config,一般在不知道端口号的时候(因为创建CA的时候,即使我们修改了端口号,创建后也会使用默认的那个,但是访问却使用我们填写的那个),我们选择在IIS中找到CA文件路径,如下图: 通常我们应该先进行web.config…
jboss-as-7.1.1.Final\standalone\configuration: 1, standalone.xml中 <security-domains>标签里面添加: <security-domain name="myRealm" cache-type="default"> <authentication> <login-module code="Remoting" flag="…
一.修改系统host,加入 127.0.0.1 server.test.com127.0.0.1 client1.test.com127.0.0.1 client2.test.com 二.安装gradle,配置好环境变量(请参考gradle的相关资料) 三.首先到github下在CAS的发布的相应版本,https://github.com/apereo/cas/releases,解压出来 进入cas-server-webapp目录,在此目录下打开cmd 输入gradle build回车,buil…
一般来说,使用ssh远程登录服务器,只需要输入账号和密码,显然这种方式不是很安全.为了安全着想,可以使用GoogleAuthenticator(谷歌身份验证器),以便在账号和密码之间再增加一个验证码,只有输入正确的验证码之后,再输入密码才能登录.这样就增强了ssh登录的安全性.账号.验证码.密码三者缺一个都不能登录,即使账号和密码正确,验证码错误,同样登录失败.其中,验证码是动态验证码,并且是通过手机客户端自动获取(默认每隔30秒失效一次) Google Authenticator开源版主页 h…
八月迷情,这个月会对大数据进行一个快速的了解学习. 一.所需工具简介 首先我是在大数据实验一体机上进行集群管理学习,管理五台实验机,分别为master,slave1,slave2,slave3,client. 此外,学习还涉及到以下工具的使用: 先来介绍下每个工具的作用之处: 1‘ google浏览器,JDK,eclipse,IDEA就不说明了(你们懂得): 2’ OPENVPN用来从操作的本机连接到服务器(下载注意操作系统的匹配),安装完成后,将下载的客户端配置压缩包解压,将其中的client…
前面三篇讲解了spring security的搭建以及简单的表单认证与授权原理.本篇将实现我们自定义的表单登录与认证.  本篇不会再讲项目的搭建过程,因为跟第二节的搭建如出一辙.本篇也不会将项目中所有的代码全部给出,因为代码量有点大.项目的代码被放在了github上,请拉下来根据讲解去看代码,代码的注释写的也比较详细.github地址https://github.com/wutianqi/spring_security_extend.git.另外,因为项目中使用了mysql数据库,对于表结构和数…
背景:双因子认证(简称:2FA,以下简称2FA),在这里其为SSH的第二重认证.2FA指的是密码以及实物(信用卡.SMS手机.令牌或指纹等生物标志)两种条件对用户进行认证的方法.通过两种不同的认证程序,可以降低密码泄露带来的风险,大大提高了linux系统的安全! 一.配置前准备 1. 准备一台运行着的OpenSSH服务的linux终端. 2. 安卓手机一台. 二.linux上安装Google身份验证器 1. ubuntu上安装Google身份认证器: $ sudo apt-get install…
1.华为设备配置主机名<Huawei>system    <Huawei>system-view Enter system view, return user view with Ctrl+Z.[Huawei]sys    [Huawei]sysname [Huawei]sysname route111[route111]sys    [route111]sysname r2[r2] 2.华为设备管理方式有两种本地管理和远程管理本地管理使用console线路远程管理使用vty线路那…
一.FTP简介 文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议.它工作于网络传输协议的应用层,使用客户/服务器模式,主要是用来在服务器与客户端之间进行数据传输.FTP 其实是以 TCP 封包的模式进行服务器与客户端计算机之间的联机,当联机建立后,使用者可以在客户端端连上 FTP 服务器来进行文件的下载与上传,此外,也可以对 FTP 服务器上面的文档进行管理等. FTP传输模式文件传输协议(File Transfer Pro…
1.一般ssh登录服务器,只需要输入账号和密码.2.本教程的目的:在账号和密码之间再增加一个验证码,只有输入正确的验证码之后,再输入密码才能登录.这样就增强了ssh登录的安全性.3.账号.验证码.密码三者缺一个都不能登录,即使账号和密码正确,验证码错误,同样登录失败.4.验证码:是动态验证码,并且是通过手机客户端自动获取(默认每隔30秒失效一次).5.最终目的:远程ssh登录一台服务器,需要正确的账号.密码.及一个可以获取到动态验证码的手机(目前支持Android和ios手机系统) 具体操作:操…
1.介绍 双因素认证:双因素身份认证就是通过你所知道再加上你所能拥有的这二个要素组合到一起才能发挥作用的身份认证系统.双因素认证是一种采用时间同步技术的系统,采用了基于时间.事件和密钥三变量而产生的一次性密码来代替传统的静态密码.每个动态密码卡都有一个唯一的密钥,该密钥同时存放在服务器端,每次认证时动态密码卡与服务器分别根据同样的密钥,同样的随机参数(时间.事件)和同样的算法计算了认证的动态密码,从而确保密码的一致性,从而实现了用户的认证.因每次认证时的随机参数不同,所以每次产生的动态密码也不同…
1.首先要确认安装了 mod_ssl模块 我的机器是centos是系统,执行下面命令 yum install -y mod_ssl 2.用openssl工具生成密钥,证书请求文件,证书 在/usr/local/httpd目下,执行以下命令. 2.1生成密钥 openssl genrsa 1024 > server.key 说明:这是用128位rsa算法生成密钥,得到server.key文件 2.2生成证书请求文件 openssl req -new -out server.csr 说明:这是用步骤…
最近一段时间发现好多网站都从http协议变成了加密的https协议,比如说百度.吾志等等.https看起来比http高端了好多,而且在不同的浏览器向上还会显示出不同于http的URL展示效果(比如说chrome 和QQ浏览器 使用https协议的网址就会变色). 于是自己就想着把自己的网站加一个ssl证书,使之变成https://iwenku.net 最开始我使用的是腾讯云的服务器,服务器系统是Windows,使用Windows虽然坏处挺多,但是也有好处,那就是Windows是图形化界面的,这样…
应用环境:Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作.   Jenkins官网:https://jenkins.io/ 测试环境:一台Centos 7.3 虚拟机 操作步骤: 一.安装Jenkins(RPM包方式安装) 1. 先安装Java环境(略) 2. 参考官网:https://pkg.jenkins.io/redhat-stable/ //简单明了 二.更改默认端口8080 1. 编辑文件/etc/sysconfig/jenkins //…
测试环境 注:进过测试,Jira6.3.6和Jira7.3.8界面和配置方法相同,不过7.3.x版本默认的用户组只有jira-software-users和jira-administrators,好在可以 新建自己默认的组名. 测试步骤 1. 准备好的openLdap服务器中的用户组 附上已经搭建好的Ldap用户组结构图(下图采用的LDAP Admin软件查看结果) 2. 在Jira页面找到配置的地方 3. 配置页面 其他都保持默认即可: 然后点击测试并保存: 也可以快速测试一下,如果没问题,如…
mongod默认启动不加任何参数时,是没有身份认证的,任何人都可以登录上进行任何操作 启动时添加--auth可以使用身份验证模式 使用mongod -f mongod.conf配置文件启动时,配置文件的security.authorization为enabled,也是使用身份认证模式 同时使用配置文件若想强制不使用身份验证则添加--noauth参数 若首次启动即添加身份认证,因为mongodb的身份只能使用客户端连接后 use admin 再在admin下使用 db.createUser(can…