Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Sign In with Google Sign In with OpenID

RBAC

edited May 2012 in Framework

I have been debating how to build a more robust Role based access system into the framework for an app I need to write.

Anyone have any ideas whether I should build out a full RBAC app, or should I just tie it in to the app I am working on. Johnny, there isnt a whole lot of information provided on app dependencies and how we could handle that.

Any thoughts or suggestions from anyone before I start writing this? (or should we look at actually tying this straight into the core framework libraries?)

Comments

  • I think a separate app may be the best way to go initially, and if it should become part of the core then we can easily bundle it later that way. Take a look at lib/Acl.php which may give you a small start too.

    Dependencies between apps don't auto-install from the web-based app/theme installer, but they could by using Composer for the installs. Here's a sample composer.json from the Analytics app:

    https://github.com/jbroadway/analytics/blob/master/composer.json

    To add another app as a dependency, you'd simply add it to the "require" list and Composer will handle it.

    You could also add an install handler that checks for the app dependency before letting you complete the install:

    http://www.elefantcms.com/wiki/Installing-and-upgrading-apps

  • edited May 2012

    Seperate app it is! I did look at the ACL earlier, but it doesn't provide the flexibility I need, but it has a great start.

    Is there no way to utilize composer from the web installs at all? Just curious, I will most likely utilize the the install handler checks, because I don't want people to have to run composer in my organization (Basically, I don't want to give them command line access. I am just thinking in advance for how I wish to utilize this). I'll include it for other devs for sure though.

  • Composer is cli-only I'm afraid, but dependencies are something that could be added to the web installer too. I was already planning on trying to merge the two install file formats (composer.json and elefant.json) into one at some point, and other than adding to an already long-running script I don't think there's anything preventing it from handling dependencies in the web installer too.

Sign In or Register to comment.