Re: Overriding pageWithName
Re: Overriding pageWithName
- Subject: Re: Overriding pageWithName
- From: Jonathan Rochkind <email@hidden>
- Date: Tue, 20 Jan 2004 18:01:16 -0600
At 6:00 PM -0500 1/20/04, arturo wrote:
I just reread David Neumann's WebObject and Security pdf from WWDC 2000.
His advice (override WOComponent.appendToResponse and
WODirectAction.performActionNamed()) don't seem secure enough to me. That
is, using his method, in order to remove the security from a secure
WOComponent you just need to re-override appendToResponse.
Um, right, because his security is meant to be security against the
_user_, not against other developers. A user can't "re-override"
anything, the user doesn't have access to the source code (in a web
application, anyway).
I mean, doesn't the same thing apply to putting 'security' in
WOApplication.pageWithName? To remove the security, you just need to
re-override WOApplication.pageWithName. I mean, if another
_developer_, who has access to your source code, is who you are
worried about---I'm not sure what the heck you could possibly do.
But it's outside the scope of the sort of security Neumann was
talking about, which was directed at users (or attackers), not
against developers.
I suppose you could declare a class 'final' in Java to prevent it
from being subclassed, but of course if the developer has access to
the source code he can just change that decleration anyway, or change
the original code. But I'm unfamiliar with the sort of thing you are
trying to do, so I guess I don't have much useful advice to provide.
[Is that really what JAAS is intended for? I had never heard of it
before, but looking it up on Sun's site, it seems to me to not be
directed at security of your source code, like you seem to be talking
about]. But much of what Neumann had to say may not apply, he was
definitely focused on providing security, assuming you have control
of the app's source code.
--Jonathan
So, to me, what I'd like to do is JAAS-ify pageWithName. But I firmly
believe that the responsibility for securing a component should be up to the
WOComponent. This makes it more useful in that I can add secure components
to an already existing application. So I don't want to subclass
WOApplication.
Perhaps I should just stick to JAAS-ifying the constructor. But that falls
afoul of stateless components.
Well, I can ramble quite a bit about this. But, to my mind, the trick is to
make a non-overrideable method that does the accesscontroller
checkpermission call. Without reducing the flexibility of WO (that is, I
can make appendToResponse()
final but that would make it useless).
-arturo
_______________________________________________
webobjects-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/webobjects-dev
Do not post admin requests to the list. They will be ignored.
_______________________________________________
webobjects-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/webobjects-dev
Do not post admin requests to the list. They will be ignored.