Wednesday, November 26, 2008

Multi tenant authentication

Hello,
i've been reading and reading, but cannot find insight on how to
achieve the following:

I'm (trying to...) designing a multi tenant application where i will:
- host multiple organisations
- each organisation will have access to a range of modules (not all
will have access to all modules). The modules might be a portal, a
module to host course (with x courses)
- There will be a few different types of users (trainer, trainee,
admin...)
- of course, each user can only access all or part of the data of its
own organisation (i.e the org admin can do anything, a trainee can
only access the trainee part of a course, a trainer can access all the
parts of its courses...)

Then, 2 issues:
- how, using the Auth component, segregate between an admin and a
"standard" user. I thought about adding a "status" session variable,
but then I'm not sure how to check for that (shall it be done in all
the controller functions or is there a more generic way to do that)
- Then, I've thought that ACL might be the way. I've tried to build
the ACOs and AROs but that's a bit tricky (especially for the ACOs)

AROs:
- org 1
-- Admins
--- admin 1
-- Trainers
--- trainer 1
--- Trainer 2

and so on.

but for ACO, would it be wiser to put the organisation at the top, or
at the lowest level of the tree?
i.e.
-Org 1
--Course
--Portal
Org 2
-- Course

OR
- Course
-- org 1
-- Org 2
- Portal
-- Org 2

any idea on that?
(and i'm not yet talking about coding that :))

Thanks!
P

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To post to this group, send email to cake-php@googlegroups.com
To unsubscribe from this group, send email to cake-php+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

No comments: