• spring security中@PreAuthorize注解的使用


    添加依赖
    <!-- oauth -->
    <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-oauth2</artifactId>
    </dependency>
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
    </dependency>
    <dependency>
    <groupId>org.springframework.security.oauth</groupId>
    <artifactId>spring-security-oauth2</artifactId>
    </dependency>
    <dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-jwt</artifactId>
    </dependency>


    配置oauth
    @Configuration
    @EnableGlobalMethodSecurity(prePostEnabled = true)
    public class OAuth2ResourceServerConfig extends GlobalMethodSecurityConfiguration
    {
    @Override
    protected MethodSecurityExpressionHandler createExpressionHandler()
    {
    OAuth2MethodSecurityExpressionHandler oAuth2MethodSecurityExpressionHandler = new OAuth2MethodSecurityExpressionHandler();
    return oAuth2MethodSecurityExpressionHandler;
    }
    }


    /**
    * 当@EnableGlobalMethodSecurity(prePostEnabled=true)的时候,@PreAuthorize可以使用
    * @PreAuthorize可以用来控制一个方法是否能够被调用。
    * @在controller层方法中添加权限配置(符合条件得才可以调用这个方法)
    * @return
    */
    @PreAuthorize(value = "#oauth2.hasAnyScope('A','B','C','D')")//添加机构编码权限,判断该机构是否有权限调用
    @PreAuthorize(value="isAuthenticated()")//添加登录权限判断,登录才可以调用
    public String getInformation(){
    return info;
    }

  • 相关阅读:
    C++虚继承内存布局
    编译OpenJDK记录
    Node.js + Express 调研
    软件工程开发工具
    Servlets & JSP & JavaBean 参考资料
    Eclipse AST 相关资料
    Git & github 最常用操作笔记
    Java入门学习资料整理
    从变量的类型转换看C语言的思维模式
    数学地图(1)
  • 原文地址:https://www.cnblogs.com/wueryuan/p/11401479.html
Copyright © 2020-2023  润新知