On 10/07/2010 09:57 PM, Michal Kleczek wrote:
1. We annotate classes with an object implementing Module interface:
interface Module {
   //methods copied from ClassLoading but there is no annotation argument
   Class loadClass(...);
   Class loadProxyClass();
}
This makes class loading pluggable - a service can designate it's own class
loading mechanism.
Note that the methods take boolean verifyCodebaseIntegrity argument. I think
it could be replaced by placing constraints on a Module.

I still need some convincing on providing remote classloaders.

Wouldn't we solve the problem 'trust by signing code', by modifying ClassLoading.loadClass()?

We can have a URL handler for downloading code over any medium. We could enforce only downloading code over trusted endpoints.

Once we have the jar in the localvm, we can verify the codesigning of the classes. The only thing we need to do is to enrich the information passed to verifyIntegrity() from codebase to code.

[or we could just have a caching url handler, and retrieve the code again (but this time from the cache) in a IntegrityVerifier. This would change nothing in the current river code. Any worms in this can?]

Gr. Sim

Reply via email to