On 5/10/07, foobarmus <[EMAIL PROTECTED]> wrote:
> Unfortunately, pushing access control up the stack means I
> have to rewrite all the functionality has been carefully and
> comprehensively facilitated by my RDBMS. Also it means that access
> control logic has to be written into every app that connects to the
> database - instead of just having it in the database itself.

Ultimately, this is a tradeoff. What happens when another app wants to
use data from the same database but has less strict auth/access
requirements? So long as you know that only one application with only
one relatively-unchanging set of requirements will ever access the
database, you'll be OK, but the moment you have multiple apps,
multiple auth/access requirements or changes to the auth/access
requirements, the inflexible nature of hard-coding access at the DB
level will start causing you pain.

> 2. When my app gets installed in an organisation, developers outside
> my control will be modifying and maintaining that instance. It would
> be easy for them to write an incorrect script that gave too much power
> to a user, and nothing would stop it from corrupting the database
> because of course with these "modern applications" the database
> connection is always made by a super-like-user that can do anything
> inside the application's database.

By the same argument, the organization's DBA is also outside your
control and could just as easily wreak havoc. As the old saying goes:
when you invent an idiot-proof system, the world will compensate by
producing more advanced idiots.


-- 
"Bureaucrat Conrad, you are technically correct -- the best kind of correct."

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to django-developers@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to