shiro简介以及基本框架搭建

Shiro框架是一个基于java实现认证登录的安全框架,它是由Apache推出的,目前最新的版本是1.3.2版本。
Shiro主要的功能有:Authentication(身份认证/登录)、Authorization(授权)、Session Manager(会话管理)、Cryptography(加密)。
Shiro框架基本搭建:
首先使用Ecplise建立一个Maven的webapp项目,而后在pom.xml文件中配置shiro的相应的开发包:

<dependency>
          <groupId>org.apache.shiro</groupId>
          <artifactId>shiro-core</artifactId>
         <version>1.3.2</version>
    </dependency>

该程序代码可以在Apache Shiro的官方网站中直接取得(https://shiro.apache.org/down...
而后如果想要查看程序的有关日志,则可以增加日志相关的工作开发包,例如:

<dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
    <dependency>
        <groupId>com.mchange</groupId>
        <artifactId>mchange-commons-java</artifactId>
        <version>0.2.12</version>
    </dependency>
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.3</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.21</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.7.21</version>
    </dependency>

并且在Jave Resources下的src/main/resources下建立一个log4j.properties文件,具体文件如下:

# For JBoss: Avoid to setup Log4J outside $JBOSS_HOME/server/default/deploy/log4j.xml!
# For all other servers: Comment out the Log4J listener in web.xml to activate Log4J.
log4j.rootLogger=INFO, stdout, logfile
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.stdout.layout.ConversionPattern=%p [%c] - %m%n
log4j.appender.logfile=org.apache.log4j.RollingFileAppender
log4j.appender.logfile.File=logs/my.log
log4j.appender.logfile.MaxFileSize=512KB
# Keep three backup files.
log4j.appender.logfile.MaxBackupIndex=3
# Pattern to output: date priority [category] - message
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

完成之后,就可以在Jave Resources下的src/main/resources下建立一个shiro.ini文件,里面追价的是用户信息(用户名:admin,密码:admin123):

[users]
admin=admin123

下一步就可以建立一个测试类,用来观察shiro框架的实现,该测试类具体实现如下:

    Factory<org.apache.shiro.mgt.SecurityManager> factory = new IniSecurityManagerFactory("classpath:shiro.ini"); // 取得Factory接口对象,主要的目的是通过配置文件加载文件之中的信息
    SecurityManager securityManager = factory.getInstance(); // 取得里面所保存的所有的认证数据信息
    SecurityUtils.setSecurityManager(securityManager); // 利用一个专门认证操作的处理类,实现认证处理的具体的实现
    Subject subject = SecurityUtils.getSubject(); // 获取进行用户名和密码认证的接口对象
    UsernamePasswordToken token = new UsernamePasswordToken("admin","admin123"); // 定义了一个Token,里面保存要登录的用户名和密码信息
    subject.login(token); // 实现用户登录处理

如果项目配置成功,则会显示:

clipboard.png
就此一个最基本的shiro框架搭建成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值