1
我用瞭如下我的應用程序的角色授權,如何在EJB動態設置@RolesAllowed 3
**@RolesAllowed("Admin")**
public class ExampleResource {
//
@GET
@Produces(MediaType.APPLICATION_JSON)
**@RolesAllowed({"Admin", "User"})**
public Response getUsers(){
}
}
授權工作正常時,登錄爲「管理/用戶」。同樣,我也應用了許多資源類的角色。
但我想處理@RolesAllowed動態設置,而不是將其定義爲聲明註釋。或者是否有其他方法來處理使用EJB3或Java ee安全性的角色授權?
請給出你的想法或範例來實現它。
感謝,
問候, 烏拜
Hi @bKail,謝謝你的回覆。是的根據您的回覆,我嘗試使用SessionContext檢查角色isCallerInRole(String roleName)。但是我得到了一個異常:引發java.lang.IllegalStateException:沒有可用於角色引用Admin的映射。你能回答這是什麼原因嗎? –
我不確定。這聽起來像是特定於供應商的例外情況。你是否可以通過'@ DeclareRoles'在其他地方聲明角色?也許用完整的堆棧跟蹤來更新你的描述? –