簡體   English   中英

Jhipster 4中的角色

[英]Roles in Jhipster 4

我正在使用jhipster 4 ,我對此表示懷疑,我嘗試放置一個沒有模式ROLE_ *的新角色,當我使用java批注@Secured時,該角色不起作用

public final class AuthoritiesConstants {   
  public static final String SUPERVISED = "SUPERVISED";
  ...

我在許多網站上檢查了有關此問題的信息,但找不到任何建議。 我需要放置一個名為SUPERVISED的角色,因為我的應用程序需要與其他應用程序集成。

@Secured({AuthoritiesConstants.SUPERVISED)
public class GreatResource {
...

當Web客戶端以SUPERVISED角色執行請求時,該操作將被拒絕

為什么會這樣?

使用@Secured批注時,默認情況下,如果提供的角色不是以ROLE_ ,則將其添加。 篩選器正在檢查ROLE_SUPERVISED而不是SUPERVISED ,這就是為什么它無法按預期工作的原因。

使用基於表達式的訪問控制 ,您可以檢查用戶的權限,包括沒有ROLE_前綴的權限。 @PreAuthorize批注與hasAuthority表達式結合使用:

@PreAuthorize("hasAuthority('SUPERVISED')")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM