1
給出了Apache Shiro的權限格式domain:action:instance
我如何定義一個用戶只能更改它的自己的帳戶數據?我如何配置用戶只能更改它自己的帳戶數據?
我可以做到以下幾點,但是這會導致權限的一個巨大的爆炸:
useraccountdata:write:user1
許可證user1
... useraccountdata:write:userN
許可證userN
我需要的反而是許可規則的東西動態配置它。
是這樣的:useraccountdata:write:user{n}
許可證自動user{n}
所有n
這是支持在某種程度上還是我在這裏完全錯誤的道路上?如果不是,你會怎麼做?
所以你有一些自定義代碼,以用戶爲基礎動態添加用戶的權限?我希望有一個陳述的方式,噢,我猜不可能。 –
是的。但是您可以自己對類PermissionAnnotationHandler和AuthorizingAnnotationMethodInterceptor進行一些自定義。創建您自己的變體@RequiresPermission,它提供基本權限並從上下文(方法簽名或參數)中派生出其餘部分。這將涉及一些面向方面的編程 – Wouter