[cap-talk] David Wagner's Google techtalk is now up!
Mike Samuel
mikesamuel at gmail.com
Mon Dec 17 04:57:28 EST 2007
On 15/12/2007, David Wagner <daw at cs.berkeley.edu> wrote:
>
> Mike Samuel writes:
> >Public classes, and classes within the same package are ambiently
> available,
> >but you contradict a lot of people's assumptions if you make private
> inner
> >classes ambiently available.
>
> Oh dear. Well, in trying to concisely hint at Joe-E stance on this,
> my attempt at brevity came with a corresponding loss of accuracy, which
> unsurprisingly seems to have caused confusion. My apologies.
Thanks for responding. I assumed that since all classes were treated as
ambient, that your tamed proxy stuff didn't discriminate between classes
based on accessLevel which sounds pretty silly now that I think about it.
Thanks for following up on this. Let me try again, this time in a bit
> more detail. Hopefully it will alleviate your concerns.
>
> In Java, one can write
> Class c = Foo.class;
> where Foo is any class you can name. (For instance, you can name a
> public class, but you generally cannot name private inner classes.)
> Joe-E allows you to write Foo.class in the same cases where Java does.
>
> As for the use of runtime reflection, Joe-E will provide libraries that
> act as a wrapper around the Java reflection libraries. Joe-E's libraries
> will include access control checks to enforce our security policy.
> The intended security policy is that you can do something at runtime
> using reflection only if you could have done it statically by writing it
> in the source code. For instance, if the Java compiler wouldn't let you
> write foo.m() (e.g., because m() is a private method of Foo and foo's
> static declared type is Foo), then you shouldn't be able to use Joe-E's
> reflection libraries to invoke m() on foo at runtime, either.
>
> Hopefully this will be sufficient to avoid violating people's
> expectations.
>
> Does this seem like a reasonable stance?
Sounds reasonable to me.
>Proxying allows you to do things with private inner classes and
> >package private classes that you can't do statically.
>
> Joe-E's proxy libraries had better not let you do that.
> (If they do, it's a bug, but I don't think they do.)
Note that Joe-E does not expose Java reflection libraries directly;
> instead, Joe-E provides wrapper classes (written by Tyler) that enforce
> the necessary security checks.
> _______________________________________________
> cap-talk mailing list
> cap-talk at mail.eros-os.org
> http://www.eros-os.org/mailman/listinfo/cap-talk
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.eros-os.org/pipermail/cap-talk/attachments/20071217/54f1f729/attachment.html
More information about the cap-talk
mailing list