Revert some changes to be more consistent with 2.6 version

This commit is contained in:
Aleksandr Mashchenko
2019-01-31 17:32:36 +02:00
parent 5524c579d2
commit 71267a9b4b
@@ -104,7 +104,7 @@ public class SecurityMemberAccess extends DefaultMemberAccess {
}
boolean allow = true;
if (!checkStaticMemberAccess(member)) {
if (!checkStaticMethodAccess(member)) {
LOG.warn("Access to static [{}] is blocked!", member);
allow = false;
}
@@ -118,38 +118,10 @@ public class SecurityMemberAccess extends DefaultMemberAccess {
return super.isAccessible(context, target, member, propertyName) && isAcceptableProperty(propertyName);
}
/**
* Retain backwards-compatibility for any implementations extending this class prior to 2.5.21.
*
* Deprecated as of 2.5.21.
*
* @param member
*
* @return
*/
@Deprecated
protected boolean checkStaticMethodAccess(Member member) {
return checkStaticMemberAccess(member);
}
/**
* Check access for static members
*
* Static non-field access result is a logical and of allowStaticMethodAccess and public.
* Static field access result is true if-and-only-if the field is public.
*
* @param member
*
* @return
*/
protected boolean checkStaticMemberAccess(Member member) {
final int modifiers = member.getModifiers();
int modifiers = member.getModifiers();
if (Modifier.isStatic(modifiers)) {
if (member instanceof Field) {
return Modifier.isPublic(modifiers);
} else {
return allowStaticMethodAccess && Modifier.isPublic(modifiers);
}
return allowStaticMethodAccess;
} else {
return true;
}