美文网首页后端之路
一 . Spring Security介绍

一 . Spring Security介绍

作者: 任未然 | 来源:发表于2019-10-16 10:37 被阅读0次

    一. 简介

    Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反转Inversion of Control ,DI:Dependency Injection 依赖注入)和AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。

    什么是ACL和RBAC

    • ACL: Access Control List 访问控制列表
      • 以前盛行的一种权限设计,它的核心在于用户直接和权限挂钩
      • 优点:简单易用,开发便捷
      • 缺点:用户和权限直接挂钩,导致在授予时的复杂性,比较分散,不便于管理
      • 例子:常见的文件系统权限设计, 直接给用户加权限
    • RBAC: Role Based Access Control
      • 基于角色的访问控制系统。权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限
      • 优点:简化了用户与权限的管理,通过对用户进行分类,使得角色与权限关联起来
      • 缺点:开发对比ACL相对复杂
      • 例子:基于RBAC模型的权限验证框架与应用 Apache Shiro、spring Security
    • BAT企业 ACL,一般是对报表系统,阿里的ODPS

    二. 入门案例

    2.1 添加依赖

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.6.RELEASE</version>
      </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
            <!--spring-security-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
    </dependencies>
    

    2.2 请求

    我们任意编写一个接口,然后进行访问,会直接跳转到一个登录页面

    加入spring-boot-starter-security依赖包, 默认拦截所有请求 , 自动跳转到自带的登录界面

    相关文章

      网友评论

        本文标题:一 . Spring Security介绍

        本文链接:https://www.haomeiwen.com/subject/tuyymctx.html