in reply to CGI::Application with access control on certain functions/run modes
In general I'd suggest that scattering authorization logic around is somewhat fragile, and will make it hard to determine who can do what, and that someone who shouldn't be able to X really has no way to get that privilege. A missed authorization step is very easy to overlook both while coding and testing. So try to make that step very rarely.
Note that I'm drawing a critical but subtle distinction between authentication and authorization. When you authenticate someone you are determining that they are who they say they are. There are multiple ways that you can do that (cookies, Basic, Digest, etc). This is orthogonal to how you authorize that person to have permission to do critical things.
In your design, assume that there is a standard way of knowing who someone claims to be. In your authorization logic you don't have to care what that is, just that it must be available in some specified and convenient way. When you set up authentication, make sure that that is satisfied. (This can be as simple as turning on Digest authentication and having the webserver put the user name in an environment variable for you.)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: CGI::Application with access control on certain functions/run modes
by Golo (Friar) on Mar 28, 2004 at 14:19 UTC | |
by dragonchild (Archbishop) on Mar 28, 2004 at 17:22 UTC |