私は私のプロジェクトでこのケースを持っています:
Spring Security アクセス ルールを定義する次の 2 行があるとします。
<intercept-url pattern="/xxx/*" access="isAuthenticated() and (hasRole('roleA') or hasRole('roleB'))" />
<intercept-url pattern="/xxx/yyy*" access="isAuthenticated() and (hasRole('role1') or hasRole('role2'))" />
これら 2 つのパターンはネストされており、ユーザーは "roleA" と "role1"、または "roleA" と "role2" のような役割の組み合わせを持つことができます。私が達成したいのは、ユーザーに「roleC」と「role1」がアクセスできないようにすること/xxx/yyy*
です。
だから私の質問は:
「roleC」と「role1」を持つユーザーがパターン「xxx/yyy222.html」でアクセスしたい場合、アクセスルールのすべての行をチェックしますか、それとも 2 行目だけをチェックしますか? 2 行目のアクセス ルールを検討するとき、ユーザーが URL「xxx/yyy*」にアクセスできるのは「roleA」と「roleB」しかないことを当然のことと見なすことができますか、それとも、ルール?