首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏云计算linux

    JAVAEE安全框架之shiro第一课

    jdbcrealm=org.apache.shiro.realm.jdbc.JdbcRealm #jdbcrealm需要用到的数据源 jdbcrealm.dataSource=$dataSource jdbcrealm=org.apache.shiro.realm.jdbc.JdbcRealm #jdbcrealm需要用到的数据源 jdbcrealm.dataSource=$dataSource #开启查找权限 jdbcrealm.permissionsLookupEnabled=true #设置安全管理器使用的jdbcrealm securityManager.realms=$jdbcrealm jdbcrealm=org.apache.shiro.realm.jdbc.JdbcRealm #jdbcrealm需要用到的数据源 jdbcrealm.dataSource=$dataSource #开启查找权限 jdbcrealm.permissionsLookupEnabled=true #设置安全管理器使用的jdbcrealm securityManager.realms=$jdbcrealm

    34210编辑于 2024-12-13
  • 来自专栏码神联盟

    Shiro系列 | 《Shiro开发详细教程》第四章:Shiro中Ini配置

    jdbcRealm = new JdbcRealm(); jdbcRealm.setDataSource(ds); jdbcRealm.setPermissionsLookupEnabled =org.apache.shiro.realm.jdbc.JdbcRealm jdbcRealm.dataSource=$dataSource jdbcRealm.permissionsLookupEnabled 会自动调用 jdbcRealm.setPermissionsLookupEnabled(true),对于这种常量值会自动类型转换。 Array/Set/List setter 注入 authenticator.array=1,2,3 authenticator.set=$jdbcRealm,$jdbcRealm 多个之间通过 “,” Map setter 注入 authenticator.map=$jdbcRealm:$jdbcRealm,1:1,key:abc 即格式是:map=key:value,key:value,可以注入常量及引用值

    1K20发布于 2018-12-11
  • 来自专栏全栈程序员必看

    Shiro | 实现权限验证完整版

    第一种: // JdbcRealm 测试 Shiro SQL @Test public void testAuthenticationShiroSQL() { JdbcRealm jdbcRealm = new JdbcRealm(); jdbcRealm.setDataSource(druidDataSource); jdbcRealm.setPermissionsLookupEnabled 测试 Custom SQL @Test public void testAuthenticationCustomSQL() { JdbcRealm jdbcRealm = new JdbcRealm (); jdbcRealm.setDataSource(druidDataSource); jdbcRealm.setPermissionsLookupEnabled(true); ; jdbcRealm.setAuthenticationQuery(sql); DefaultSecurityManager defaultSecurityManager = new

    64420编辑于 2022-06-29
  • 来自专栏程序编程之旅

    【Shiro】Shiro从小白到大神(二)-Subject认证结合MySQL

    数据库文件在项目src\sql目录下) 注意事项: 表名一定要是: users 用户名列名必须是: userName(大小写不区分) ** jdbc_realm.ini配置文件 [main] jdbcRealm =org.apache.shiro.realm.jdbc.JdbcRealm ;定义JdbcRealm实例-固定语法 dataSource=com.mchange.v2.c3p0.ComboPooledDataSource ;数据库链接池-查看JdbcRealm类的源码可以看到需要dataSource数据源 在om.xml导入c3p0的jar包 dataSource.driverClass=com.mysql.jdbc.Driver mysql://localhost:3306/db_shiroD ;数据库连接地址 dataSource.user=root ;数据库账号 dataSource.password=123456 ;数据库密码 jdbcRealm.dataSource =$dataSource ;为jdbcRealm赋值dataSource,jdbcRealm调用set securityManager.realms=$jdbcRealm ;这个realms可以有多个,

    87710发布于 2021-01-21
  • 来自专栏赵俊的Java专栏

    Shiro Realm

    DefaultSecurityManager defaultSecurityManager = new DefaultSecurityManager(); // 构建 JdbcRelam JdbcRealm jdbcRealm = new JdbcRealm(); // 为 JdbcRelam 设置数据源 jdbcRealm.setDataSource(dataSource (jdbcRealm); SecurityUtils.setSecurityManager(defaultSecurityManager); Subject subject 但在实际项目开发中,我们不可能完全按照 Shiro 提供的这种方式来建表,我们可以通过修改 JdbcRealm 的默认查询语句来实现: jdbcRealm.setAuthenticationQuery( String authenticationQuery); jdbcRealm.setPermissionsQuery(String permissionsQuery); jdbcRealm.setUserRolesQuery

    98120发布于 2018-08-27
  • 来自专栏企业平台构建

    安全验证框架shiro(一)

    artifactId>mysql-connector-java</artifactId> <version>5.1.38</version> </dependency> 同时ini文件如下: [main] jdbcRealm =org.apache.shiro.realm.jdbc.JdbcRealm #数据库指定自己的表和字段 #jdbcRealm=com.shiro.realm.jdbcrealm.UserJdbcRealm dataSource.jdbcUrl=jdbc:mysql://localhost:3306/shiro dataSource.user=root dataSource.password=123456 jdbcRealm.dataSource =$dataSource securityManager.realms=$jdbcRealm 其余的处理都是相同的,可以打开 org.apache.shiro.realm.jdbc.JdbcRealm

    80820发布于 2019-08-07
  • 来自专栏玩转JavaEE

    其实我不仅会 Spring Security,Shiro 也略懂一二!

    JdbcRealm实际上是AuthenticatingRealm的子类,关于AuthenticatingRealm我们在后面还会详细说到,这里先不展开。接下来我们就来详细说说这个JdbcRealm。 4.2 JdbcRealm 准备工作 使用JdbcRealm,涉及到数据库操作,要用到数据库连接池,这里我使用Druid数据库连接池,因此首先添加如下依赖: <dependency> <groupId =$dataSource jdbcRealm.permissionsLookupEnabled=true # 修改JdbcRealm中的credentialsMatcher属性 jdbcRealm.credentialsMatcher 7.3 非JdbcRealm如何配置盐 OK,刚刚是在JdbcRealm中配置了盐,如果没用JdbcRealm,而是自己定义的普通Realm,要怎么解决配置盐的问题? 13.4 测试 由于我这里使用了JdbcRealm,如果使用了自定义Realm那么可以通过打日志看是否使用了缓存,使用了JdbcRealm之后,我们可以通过打断点来查看是否应用了缓存,比如我执行如下代码

    1.3K10发布于 2021-04-22
  • 来自专栏别先生

    Shiro安全框架入门学习

    ; 64 } 65 66 } 8、Shiro内置的Realm,比如 IniRealm、JdbcRealm。 35 JdbcRealm jdbcRealm = new JdbcRealm(); 36 // 设置jdbc的数据源 37 jdbcRealm.setDataSource 39 jdbcRealm.setPermissionsLookupEnabled(true); 40 41 // 1、认证第一步,构建SecurityManager环境 35 JdbcRealm jdbcRealm = new JdbcRealm(); 36 // 设置jdbc的数据源 37 jdbcRealm.setDataSource "; 48 jdbcRealm.setUserRolesQuery(userRoleSql); 49 50 // 角色权限自定义表 51 String

    59520发布于 2020-09-01
  • 来自专栏Java 源码分析

    Shiro安全框架:认证

    数据库(JdbcRealm) 首先需要创建表,这里我们采用了默认的查询方式,但是这种查询方式是不可用的,这里只做演示用。后面会说到关于自定义 Realm ,会详细说数据库的设计。 public class AuthenticationJdbcRealmTest { // 创建一个简单的认证 realm 也就是认证信息存放在对象中的 JdbcRealm jdbcRealm = new JdbcRealm(); @Test public void authentication(){ DruidDataSource dataSource = (dataSource); jdbcRealm.setPermissionsLookupEnabled(true);//这是一个坑 ,默认权限表不进行查找 // 创建一个 securityManager 环境 SecurityManager securityManager = new DefaultSecurityManager(jdbcRealm);

    78240发布于 2018-06-13
  • 来自专栏企业平台构建

    安全验证框架shiro(三)

    dataSource.url=jdbc:mysql://127.0.0.1:3306/shiro dataSource.username=root dataSource.password=123456 jdbcRealm =org.apache.shiro.realm.jdbc.JdbcRealm jdbcRealm.dataSource=$dataSource myRealm=com.sucl.shiro.realm.MyRealm securityManager.realms=$jdbcRealm #多realm #覆盖默认的securityManager #securityManager=org.apache.shiro.mgt.DefaultSecurityManager

    75940发布于 2019-08-07
  • 来自专栏全栈程序员必看

    Shiro框架学习

    07-02 14:06 * @todo 创建一个测试类,测试认证 */ public class AuthenticationTest { //除了SimpleAccountRealm还有JdbcRealm "123123"); } @Test public void testAutentication() { //1.创建jdbcReaml对象 JdbcRealm jdbcRealm = new JdbcRealm(); //2.设置数据源 jdbcRealm.setDataSource(dataSource); //这里需要注意的是,在使用JdbcRealm的时候要设置权限的开关,只有设置为true时才会去查询权限数据 jdbcRealm.setPermissionsLookupEnabled( 八、自定义Realm 通过查看JdbcRealm或者IniRealm的源码可以发现,它们都继承自AuthorizingRealm,所以要自定义Realm也要使自定义的Realm继承AuthorizingRealm

    59230编辑于 2022-10-05
  • 来自专栏梅花的学习记录

    Shiro学习笔记(二)

    主要的文件就是这两个,一个是配置的,一个是用来进行测试的 jdbc_realm.ini配置文件中的内容如下 [main] jdbcRealm=org.apache.shiro.realm.jdbc.JdbcRealm dataSource.jdbcUrl=jdbc:mysql://localhost:3306/db_shiro dataSource.user=root dataSource.password=root jdbcRealm.dataSource =$dataSource securityManager.realms=$jdbcRealm TestJdbc_realm.java文件中的内容如下 package com.zuoyan.shiro;

    55820发布于 2020-09-28
  • 来自专栏玩转JavaEE

    初识Shiro

    JdbcRealm 定义数据库 上面的数据源都是我们提前定义好,写死的,当然我们也可以将数据定义在数据库中,比如,我创建如下三张表,并预设一条数据: drop database if exists shiro1 ,如下: jdbcRealm=org.apache.shiro.realm.jdbc.JdbcRealm dataSource=com.alibaba.druid.pool.DruidDataSource useUnicode=true&characterEncoding=UTF-8 dataSource.username=root dataSource.password=123 jdbcRealm.dataSource =$dataSource securityManager.realm=$jdbcRealm jdbcRealm定义了我们要用的JdbcRealm,在最后将之设置给SecurityManager的realm 属性,jdbcRealm中还有dataSource,就是我们自定义的数据源,其他的都是数据库连接的东西,我就不再赘述。

    1K50发布于 2018-04-02
  • 来自专栏Java学习网

    Shiro框架学习,Shiro 编码/加密

    另外可以参考配置shiro-jdbc-passwordservice.ini,提供了JdbcRealm的测试用例,测试前请先调用sql/shiro-init-data.sql初始化用户数据。 如果使用JdbcRealm,需要修改获取用户信息(包括盐)的sql:“select password, password_salt from users where username = ?” jdbcRealm.saltStyle=COLUMN jdbcRealm.authenticationQuery=select password, concat(username,password_salt jdbcRealm.credentialsMatcher=$credentialsMatcher 1、saltStyle表示使用密码+盐的机制,authenticationQuery第一列是密码, 另外可以参考配置shiro-jdbc-passwordservice.ini,提供了JdbcRealm的测试用例,测试前请先调用sql/shiro-init-data.sql初始化用户数据。

    1.5K20发布于 2021-05-06
  • 来自专栏张志敏的技术专栏

    在 Java Spring 应用中使用 ASP.NET Core Identity 的数据库进行用户认证

    driver-class-name: org.postgresql.Driver 根据 Shiro 的文档, 需要配置 Realm 和 ShiroFilterChainDefinition , Shiro 提供了内置的 JdbcRealm 设置 JdbcRealm 的 authenticationQuery 查询 aspnet_users 表中的用户信息; 设置 JdbcRealm 的 userRolesQuery 查询 aspnet_roles 表中的角色信息; 设置 JdbcRealm 的 permissionsQuery 查询 aspnet_role_claims 表中的角色权限信息; 代码如下: @Bean public Realm realm(DataSource dataSource) { var realm = new JdbcRealm(); realm.setDataSource(dataSource);

    1.6K30发布于 2021-03-30
  • 来自专栏Java架构师必看

    如何自定义Tomcat Realm实现我们的用户认证需求「建议收藏」

    Tomcat 7中提供了六种标准Realm,用来支持与各个认证信息来源的连接: * JDBCRealm - 通过JDBC驱动来访问贮存在关系数据库里的认证信息。 ** 我们知道Tomcat自带的JNDIRealm可以实现LDAP认证,JDBCRealm可以实现关系数据库认证,那么我们可不可以首先通过LDAP认证,认证通过后,到数据库中读取角色信息呢? 需求:自定义一个Realm,使得能够像JNDIRealm一样可以实现LDAP认证,又像JDBCRealm一样可以从数据库中读取我们用户的角色信息进行认证。 而JDBCRealm你可以这样声明: <Realm className="org.apache.catalina.realm.<em>JDBCRealm</em>" driverName="org.gjt.mm.mysql.Driver 配置(<em>JDBCRealm</em>配置使用) Apache Tomcat 5.5 Servlet/JSP 容器的权限管理 - 域(Realm)的设置

    1.5K30编辑于 2022-03-10
  • 来自专栏程序员的时光

    深入浅出Shiro系列

    配置文件jdbc_realm.ini,这与上文的shiro.ini是一样的; [main] jdbcRealm=org.apache.shiro.realm.jdbc.JdbcRealm dataSource dataSource.url=jdbc:mysql://localhost:3306/db_shiro dataSource.username=root dataSource.password=123456 jdbcRealm.dataSource =$dataSource securityManager.realms=$jdbcRealm 导入依赖 <!

    68120发布于 2020-07-14
  • 来自专栏后端开发随笔

    细说shiro之五:在spring框架中集成shiro

    -- security datasource: --> <bean id="myRealm" class="org.apache.shiro.realm.jdbc.<em>JdbcRealm</em>"> <property 在此,以org.apache.shiro.realm.jdbc.JdbcRealm为例,将用户信息存放在关系型数据库中。 在使用org.apache.shiro.realm.jdbc.JdbcRealm时,必须要在关系型数据库中存在3张表,分别是: (1)users表,存放认证用户基本信息,在该表中必须存在2个字段:username 实际上,在更加复杂的应用场景下,通常需要扩展org.apache.shiro.realm.jdbc.JdbcRealm。 4.

    85740发布于 2019-09-11
  • 来自专栏架构之巅

    tomcat优化

    -- <Realm className="org.apache.catalina.realm.<em>JDBCRealm</em>" debug="99" driverName -- <Realm className="org.apache.catalina.realm.<em>JDBCRealm</em>" debug="99" driverName -- <Realm className="org.apache.catalina.realm.<em>JDBCRealm</em>" debug="99" driverName

    51220发布于 2020-11-09
  • 来自专栏Lambda

    Redis在Window服务下的安装

    dataSource.setPassword("123456"); } @Test public void testAuthentication() { JdbcRealm jdbcRealm = new JdbcRealm(); jdbcRealm.setDataSource(dataSource); jdbcRealm.setPermissionsLookupEnabled ; jdbcRealm.setAuthenticationQuery(sql); //自定义角色查询 String roleSql = "select ; jdbcRealm.setUserRolesQuery(roleSql); //自定义权限认证 String permissionSql = "select ; jdbcRealm.setPermissionsQuery(permissionSql); //1.

    1.3K30发布于 2019-06-20
领券