gpt4 book ai didi

java - Spring EL 身份验证中没有 "principle"

转载 作者:行者123 更新时间:2023-12-02 03:20:58 26 4
gpt4 key购买 nike

我遇到了 Spring 文档与我所看到的实验结果之间的差异。我有一些方法,我需要在方法调用之前检查权限,并根据 spring 文档我准备了以下内容:

@PreAuthorize("authentication.principle.company == #company.company")
public CompanyForm getCompanyForm(Company company) {
//some code here
}

但令人惊讶的是,由于以下错误,方法调用被拒绝:

org.springframework.expression.spel.SpelEvaluationException:EL1008E:(pos 15):在“org.springframework.security.authentication.UsernamePasswordAuthenticationToken”类型的对象上找不到属性或字段“原理” - 也许不是公开?

有人可以指出我的错误吗?

最佳答案

根据 Spring Security Javadocs ,身份验证 token 中的字段是principal。你拼错了。

@PreAuthorize("authentication.principal.company == #company.company")
public CompanyForm getCompanyForm(Company company) {
//some code here
}

关于java - Spring EL 身份验证中没有 "principle",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39622198/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com