User
とGroup
のいくつかの基本認証フレームワークを検討してください。メソッドへのアクセスは、メソッドを実行するために必要なPriviledgeLevel
があることを確認するチェックで保護されていなければ失敗します。基本的にチェックするコードが、このようにそれを実装することが可能アノテーションを使用してメソッドレベルのアクセスチェックを実装することは可能ですか?
if(currentUser.getPriviledgeLevel >= PriviledgeLevel.ADMINISTRATOR ||
currentUser.getGroup.priviledgeLevel >= PriviledgeLevel.ADMINISTRATOR)
// Allow access
else
// Deny access
をだろうん
@AccessCheck(PriviledgeLevel.ADMINISTRATOR)
public static void secureMethod(){ ... }
:私が想像する何
はこのようなものでしょうか?
Security Annotation Framework(SAF)とSpring Securityを中心に、AspectJに基づいていくつかの既存のものを指しています。
SAFはもはやそれほどアクティブではないようで、ドキュメンテーションはそれほど大きくないので、少し気になります。
私はSpring Securityについてはわかりませんが、Web関連のトピックのセキュリティ上の問題に重点を置いているようです。
Java Authentication and Authorization Serviceは関連しているようですが、アノテーションアプローチを使用していません。
この宣言的なアプローチでこれらのセキュリティ要件を定義しようとすると意味がありますか?
私は紛失している別のライブラリ/フレームワークがありますか?既に必要なものやここで関連する技術を実装していますか?
(私自身のClassLoader
の実装のような)完全に異なる解決策がありますか?(ライブラリユーザーの簡潔さと可読性という点で)私が想像しているものより優れていますか?
スプリングセキュリティは、トップからボトムのソリューションであり、Web関連のセキュリティだけではありません。実際に私は、WebセキュリティでALSOを使用する前に、自分のビジネス層で春のセキュリティを使用し始めました。 – bluefoot