C:\ReflectionTest>java -Djava.security.manager CallFoo Exception in thread "main" java.security.AccessControlException: access denied (java.lang.reflect.ReflectPermission suppressAccessChecks) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:264) at java.security.AccessController.checkPermission(AccessController.java:427) at java.lang.SecurityManager.checkPermission(SecurityManager.java:532) at java.lang.reflect.AccessibleObject.setAccessible(AccessibleObject.java:107) at CallFoo.main(CallFoo.java:8)
try { if (System.getSecurityManager() != null) { AccessController.checkPermission(fp); check.append("BeanRoot - success for WAR.txt; "); } else try { if (System.getSecurityManager() != null) { AccessController.checkPermission(fp); check.append("BeanRoot - success for EAR.txt; "); } else try { if (System.getSecurityManager() != null) { AccessController.checkPermission(p1); check.append("BeanRoot - success for EJB.txt; "); } else
try { if (System.getSecurityManager() != null) { AccessController.checkPermission(filePermission); checkReport.append("servlet - success for WAR.txt; "); } else try { if (System.getSecurityManager() != null) { AccessController.checkPermission(filePermission); checkReport.append("servlet - success for EAR.txt; "); } else try { if (System.getSecurityManager() != null) { AccessController.checkPermission(filePermission); checkReport.append("servlet - success for EJB.txt; "); } else
protected void checkPublishPermission() { SecurityManager sm = System.getSecurityManager(); boolean checkPublishEndpointPermissionWithSecurityManager = Boolean.parseBoolean( SystemPropertyAction.getProperty( CHECK_PUBLISH_ENDPOINT_PERMISSON_PROPERTY_WITH_SECURITY_MANAGER, "true")); if (checkPublishEndpointPermissionWithSecurityManager && sm != null) { sm.checkPermission(PUBLISH_PERMISSION); } else if (Boolean.getBoolean(CHECK_PUBLISH_ENDPOINT_PERMISSON_PROPERTY)) { AccessController.checkPermission(PUBLISH_PERMISSION); } }
public Boolean run() { try { AccessController.checkPermission( new RuntimePermission("getClassLoader")); return true; } catch (SecurityException e) { // Using SecurityException instead of AccessControlException. // See bug LOGBACK-760. return false; } } });
public AuthenticationInfo getLoginInfo() { AccessController.checkPermission(AuthenticationInfo.GET_CONFIG_ENTRY_PERM); return loginInfo; } public void setLoginInfo(AuthenticationInfo loginInfo)
/** Get an application authentication configuration. This requires an AuthPermission("getLoginConfiguration") access. */ public AppConfigurationEntry[] getAppConfigurationEntry() { AccessController.checkPermission(GET_CONFIG_ENTRY_PERM); return loginModules; } /** Set an application authentication configuration. This requires an
@Override public ServiceController<?> getService(ServiceName serviceName) { AccessController.checkPermission(PERMISSION); return delegate.getService(serviceName); }
@Override public ClassLoader getClassLoader() { AccessController.checkPermission(new RuntimePermission("getClassLoader")); return _classLoader; }
public Boolean run() { try { AccessController.checkPermission( new RuntimePermission("getClassLoader")); return true; } catch (AccessControlException e) { return false; } } });
private static void checkPermission(SystemPermission permission) { try { if (System.getSecurityManager() != null) AccessController.checkPermission(permission); } catch (AccessControlException e) { // Need to throw a simplified version as AccessControlException // will have a reference to Derby's SystemPermission which most likely // will not be available on the client. throw new SecurityException(e.getMessage()); } }
@Override public ClassLoader getClassLoader() { AccessController.checkPermission(new RuntimePermission("getClassLoader")); return _classLoader; }
@Override public ClassLoader getClassLoader() { AccessController.checkPermission(new RuntimePermission("getClassLoader")); return _classLoader; }
@Override public Object run() { for (int i = 0; i < dp.length; i++) { final String pname = dp[i].getClass().getName() + "." + dp[i].getName(); final Permission sdp = new SubjectDelegationPermission(pname); AccessController.checkPermission(sdp); } return null; } };
private static void checkPermission(SystemPermission permission) { try { if (System.getSecurityManager() != null) AccessController.checkPermission(permission); } catch (AccessControlException e) { // Need to throw a simplified version as AccessControlException // will have a reference to Derby's SystemPermission which most likely // will not be available on the client. throw new SecurityException(e.getMessage()); } }
public static void checkAccess(MemberInfo info) { if (!info.isPublic() && System.getSecurityManager() != null) AccessController.checkPermission(new ReflectPermission("suppressAccessChecks")); } }
@Override public void sendEmail(InternetAddress from, InternetAddress to, InternetAddress[] cc, InternetAddress[] bcc, String subject, GraphNode graphNode, List<MediaType> acceptableMediaTypes, String mode) throws MessagingException { AccessController.checkPermission( new MailManPermission("", MailManPermission.SEND_MAIL)); sendEmail(from, to, cc, bcc, subject, graphNode, null, acceptableMediaTypes, mode); }
public int countWorkItems (Subject s) throws StoreException { java.security.AccessController.checkPermission (StorePermission.newStorePermission(getName(), "browse")); return doCountWorkItems(s); }
/** * Returns the count of workitems found in this store. */ public int countWorkItems (final Subject s) throws StoreException { java.security.AccessController.checkPermission (StorePermission.newStorePermission(getName(), "browse")); return this.getStrategy.countWorkItems(s); }
public boolean onPreUpdate(PreUpdateEvent event) { EJBMethodPermission updatePermission = new EJBMethodPermission( event.getPersister().getEntityName(), HibernatePermission.UPDATE ); log.debug( "checking update permission on: " + updatePermission.getName() ); AccessController.checkPermission(updatePermission); return super.onPreUpdate(event); } }