Spring启动安全控制台/命令行应用程序

Fra*_*ère 6 spring-security spring-boot

Spring启动教程通常解释如何基于spring boot而不是控制台/命令行应用程序(从spring-boot-starter-remote-shell访问)来保护Web应用程序.

对于Web应用程序,我们只需要从WebSecurityConfigurerAdapter扩展,然后覆盖一些方法.

是否有一个等效的类来扩展控制台/命令行应用程序?如果没有,最好的方法是什么?

pas*_*kos 0

根据spring-boot 参考

如果您的应用程序使用 Spring Security,则 shell 默认情况下将使用相同的配置。

如果您希望 Crsh 使用您的身份验证管理器,您有 2 个选择

如果 shell.auth 设置为 spring 或未提供显式 shell.auth 并且 AuthenticationManager 可用,则将启用此身份验证方法。

如果您需要在 Csrh 中找到粒度访问决策管理,您还可以定义一个AccessDecisionManager名为 的 bean "shellAccessDecisionManager"

CrshAutoConfiguration

    @Autowired(required = false)
    @Qualifier("shellAccessDecisionManager")
    private AccessDecisionManager accessDecisionManager;
Run Code Online (Sandbox Code Playgroud)