相关疑难解决方法(0)

sec:授权在thymeleaf视图中为isAuthenticated()和isAnonymous()返回true

在我目前的spring-boot项目中,我在我的视图中看到了一段代码:

<div class="account">
    <ul>
        <li id="your-account" sec:authorize="isAnonymous()">
            ... code 1 ...
        </li>
        <li id="your-account" sec:authorize="isAuthenticated()">
            ... code 2 ...
        </li>
        <li th:if="${cart}">
            ...
        </li>
    </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

其中只应在同一时间显示其中一个片段1或2.但是现在,当我在浏览器中打开此视图时,正在显示这两个区域.

任何人都可以看到这里有什么问题?

ps:我的thymeleaf配置类是这样的:

@Configuration
public class Thymeleaf {

  @Bean
  public SpringTemplateEngine templateEngine() {
    SpringTemplateEngine engine  =  new SpringTemplateEngine();

    final Set<IDialect> dialects = new HashSet<IDialect>();
    dialects.add( new SpringSecurityDialect() );
    engine.setDialects( dialects );

    return engine;
  }

}
Run Code Online (Sandbox Code Playgroud)

ps.:我的spring-security配置类是:

@Configuration
@ComponentScan(value="com.spring.loja")
@EnableGlobalMethodSecurity(prePostEnabled=true)
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
        @Autowired
        private UserDetailsService userDetailsService;

        @Autowired
        private SocialUserDetailsService socialUserDetailsService; …
Run Code Online (Sandbox Code Playgroud)

spring spring-security thymeleaf

6
推荐指数
2
解决办法
9319
查看次数

Thymeleaf没有解析"sec:authorize"属性

我正在使用thymeleaf-spring3 2.0.18Spring 3.1.1.我已经完成了一个工作正常的登录页面,但是,在解析其他Thymeleaf属性时,"sec:authorize"不是,因为如果我查看生成的视图的源代码,我可以看到它们.

是否有我缺少的东西,如依赖或特定配置?

这是我的login.html:

<!DOCTYPE html>
<head>
...
</head> 

<body>
<div class="top">
    <div class="container">         
        <ul class="loginbar pull-right">
            <li sec:authorize="isAnonymous()"><a href="/login" class="login-btn">Login</a></li>   
            <li sec:authorize="isAuthenticated()" class="login-btn">Welcome <span sec:authentication="name">Bob</span></li>   
        </ul>
    </div>      
</div><!--/top-->

<!--=== Content Part ===-->
<div class="container">     
    <div class="row-fluid">
        <form name="f" th:action="@{/j_spring_security_check}" method="post" class="log-page">
            <h3>Login</h3>
            <div th:if="${loginError}" th:with="errorMsg=${session['SPRING_SECURITY_LAST_EXCEPTION'].message}" class="alert alert-error">
                Bad user or password.<br/>
                Cause: <span th:text="${errorMsg}">Wrong input!</span>
            </div>    
            <div class="input-prepend">
                <span class="add-on"><i class="icon-user"></i></span>
                <input name="j_username" class="input-xlarge" type="text" placeholder="Username" />
            </div>
            <div class="input-prepend">
                <span class="add-on"><i class="icon-lock"></i></span>
                <input …
Run Code Online (Sandbox Code Playgroud)

spring-mvc spring-security thymeleaf

3
推荐指数
1
解决办法
5540
查看次数

未定义的属性名称(秒:身份验证)

我在春季安全简单的POC中使用Thymleaf.下面是我在home.html文件中的示例代码.

Hello <span sec:authentication="name">User</span>!i
Run Code Online (Sandbox Code Playgroud)

如何摆脱HTML警告

Undefined attribute name (sec:authentication).
Run Code Online (Sandbox Code Playgroud)

spring-security thymeleaf

1
推荐指数
1
解决办法
4029
查看次数

标签 统计

spring-security ×3

thymeleaf ×3

spring ×1

spring-mvc ×1