|
|
|
||||||
|
Quote:
This allows much more flexibility and protection than simple access control lists. Method parameters can be validated. More protection from denial of service attacks can be provided. Interfaces more representative of the actual business-logic that clients wish to perform can be exposed via the facade. Regards, Matthew Last edited by matthew : 02-17-2005 at 05:34 AM. |
|
||||||
|
Hi Matthew
I'm not sure of understand well the method that you are describing how can i do that all request go through the facade object . for example in my actual aplication when client make a request over a proxy, i have no control of this operation until the request arrive at the corresponding servant. What you trying say me is that my client must invoke operations over a facade proxy and this make the request to the object proxy? in theese way i think that a lot of extra code is needed or are you thinking in a simple way of doing the same? thanks for all |
|
||||||
|
No, no extra code is needed on the client side. Simply implement the server using a default servant. The default servant can extract the object identity, match it against the ACL, and then forward the actual operation to the "real" servant if the operation is permitted. That way, the existence of the facade object is completely transparent to the client.
Cheers, Michi. |
|
||||||
|
thanks michi i now understand what you and mathew says. I using a Freeze::evictor as my servant locator because all my busniss objects are persistents using Freeze. if i understand well the Ice RunTime . when a request arrive to the adapter it call locate on the Locator that match with the current.id.category that in my case is a FreezeEvictor and the the FreezeEvictor takes responsavility of restoring the object fron the FreezeDB if needed and add it to the servant active map and dispatch the request to corresponding servant. I wan to continue with use Freeze as my persistence engine. in this case i think that what i need is creating my custom implementation of FreezeEvictor and add here the stuf to check Acl objects.
is this correct aproach? and other cuestion about this is can a custom locator trows an AuthDeniedExcetion to client in any way or i can only throws IceObjectNotExist |
|
||||||
|
Quote:
Quote:
Because locate() actually returns a servant in this case, this makes the marshaling knowledge available to the run time that is needed to return AuthDeniedException to the client, so the exception won't be translated into UnknownLocalException. Cheers, Michi. |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|