tracker issue : CF-3042714

select a category, or use search below
(searches all categories and all time range)
Title:

Bug 84986:(Watson Migration Closure)Disabling the createClassLoader runtime permission on a sandbox sometimes results in errors when trying to instantiate CFCs

| View in Tracker

Status/Resolution/Reason: Closed/Withdrawn/

Reporter/Name(from Bugbase): Mike Nicholls / Mike Nicholls (mikenicholls)

Created: 11/10/2010

Components: Security, Sandbox

Versions: 9.0.1

Failure Type: Unspecified

Found In Build/Fixed In Build: 9,0,1,274733 /

Priority/Frequency: Major / Unknown

Locale/System: English / Win All

Vote Count: 0

Problem:

Disabling the createClassLoader runtime permission on a sandbox sometimes results in errors when trying to instantiate CFCs.
Method:

1.) Create a directory, place two files in it:index.cfm: <cfset thing = CreateObject("Component", "test")><cfset thing.hello()>test.cfc: <cfcomponent><cffunction name="hello">hullo</cffunction></cfcomponent>2.) Create a sandbox in ColdFusion Administrator for the directory you created.  Use the "New sandbox" option with the default settings.3.) Visit the page, it should work.4.) Go back into ColdFusion Administrator and edit the sandbox.  On the "Others" tab, disable all runtime permissions and click "Finish".5.) Visit the page again - it may (or may not) give an error.  It seems intermittent.
Result:

Security: The requested template has been denied access to createClassLoader.The following is the internal exception message: access denied (java.lang.RuntimePermission createClassLoader) The error occurred in F:\inetpub\wwwroot\sandboxTest\index.cfm: line 11 : <cfset thing = CreateObject("Component", "test")>2 : <cfset thing.hello()>Stack Traceat cfindex2ecfm1820544515.runPage(F:\inetpub\wwwroot\sandboxTest\index.cfm:1)java.security.AccessControlException: access denied (java.lang.RuntimePermission createClassLoader)at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)at java.security.AccessController.checkPermission(AccessController.java:546)at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)at java.lang.SecurityManager.checkCreateClassLoader(SecurityManager.java:594)at java.lang.ClassLoader.checkCreateClassLoader(ClassLoader.java:178)at java.lang.ClassLoader.<init>(ClassLoader.java:207)at java.security.SecureClassLoader.<init>(SecureClassLoader.java:53)at coldfusion.runtime.TemplateClassLoader.<init>(TemplateClassLoader.java:63)at coldfusion.runtime.TemplateClassLoader$TemplateCache$1.fetch(TemplateClassLoader.java:476)at coldfusion.util.LruCache.get(LruCache.java:180)at coldfusion.runtime.TemplateClassLoader$TemplateCache.fetchSerial(TemplateClassLoader.java:362)at coldfusion.util.AbstractCache.fetch(AbstractCache.java:58)at coldfusion.util.SoftCache.get_statsOff(SoftCache.java:133)at coldfusion.util.SoftCache.get(SoftCache.java:81)at coldfusion.runtime.TemplateClassLoader.findClass(TemplateClassLoader.java:609)at coldfusion.cfc.ComponentProxyFactory.getProxy(ComponentProxyFactory.java:56)at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4827)at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4841)at cfindex2ecfm1820544515.runPage(F:\inetpub\wwwroot\sandboxTest\index.cfm:1)at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:231)at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:416)at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65)at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:381)at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)at coldfusion.filter.PathFilter.invoke(PathFilter.java:94)at coldfusion.filter.LicenseFilter.invoke(LicenseFilter.java:27)at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70)at coldfusion.filter.BrowserDebugFilter.invoke(BrowserDebugFilter.java:79)at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62)at coldfusion.CfmServlet.service(CfmServlet.java:200)at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)at jrun.servlet.FilterChain.service(FilterChain.java:101)at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320)at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266)at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)

----------------------------- Additional Watson Details -----------------------------

Watson Bug ID:	3042714

External Customer Info:
External Company:  
External Customer Name: Mike Nicholls
External Customer Email: 1932664644160A2F992015D5
External Test Config: 11/10/2010

Attachments:

Comments: