SlideShare uma empresa Scribd logo
1 de 86
Baixar para ler offline
Rechtenbeheer in Joomla! 2.5


            Sander Potjer
             @sanderpotjer
           www.sanderpotjer.nl




        Joomla!dagen 2012 - 21 april 2012
Who is Sander Potjer?
• Involved in the local Joomla community

• Joomla Community Leadership Team
  (CLT) member

• Company: Sander Potjer
  Webdevelopment

• E-mail: sander.potjer@community.joomla.org
Who is Sander Potjer?
• Involved in the local Joomla community

• Joomla Community Leadership Team
  (CLT) member

• Company: Sander Potjer
  Webdevelopment

• E-mail: sander.potjer@community.joomla.org

• Slides: http://www.slideshare.net/sanderpotjer
Joomla! ACL
It took a while...                                          DrupalCon, October 2005
                                                                      Johan Janssens




•   http://www.slideshare.net/JohanJanssens/drupalcon-2005-joomla-drupal-and-you-presentation
ACL?!?!
• ACL = Access Control List
ACL?!?!
• ACL = Access Control List

• Access to parts of the website
 – e.g. menu / module visibility
 – “view” action
ACL?!?!
• ACL = Access Control List

• Access to parts of the website
 – e.g. menu / module visibility
 – “view” action


• User actions on objects
 – example: create / edit / edit state / delete article
ACL - Groups


• 7 fixed Groups
 – Public, Registered, Author,
   Editor, Publisher, Manager,
   Administrator and Super-
   Administrator


• Hierarchical structure
ACL - Groups


• 7 fixed Groups                 • Unlimited Groups
 – Public, Registered, Author,    – user defined
   Editor, Publisher, Manager,
   Administrator and Super-
                                 • No Hierarchical Structure
   Administrator
                                   required

• Hierarchical structure
ACL - User in Group


• User can be assigned to
  one group
ACL - User in Group


• User can be assigned to   • User can be assigned to
  one group                   multiple groups
ACL - Access Levels


• 3 fixed Access Levels
 – Public
 – Registered
 – Special
ACL - Access Levels


• 3 fixed Access Levels   • Unlimited Access Levels
 – Public                  – user defined
 – Registered
 – Special
ACL - Access Levels & Groups relation


• Fixed relation between
  Groups and Access
  Levels
ACL - Access Levels & Groups relation


• Fixed relation between   • Any combination of User
  Groups and Access          Groups can be assigned
  Levels                     to any Access Level
ACL - Actions


• Fixed Actions per group
 – Create / edit / delete /
   admin access / etc.
• Permission scope for
  entire site
 – Same permission for all objects
• Permission inheritance
  not applicable
ACL in Joomla! 1.5 & 1.6 (Actions)




•   http://brian.teeman.net/joomla-gps/joomla-15-acl-explained.html
ACL - Actions


• Fixed Actions per group            • Defined Actions per group
 – Create / edit / delete /           – Create / edit / delete /
   admin access / etc.                  admin access / etc.
• Permission scope for               • Permission scope at
  entire site                          multiple levels
 – Same permission for all objects    – Site/Component/Category/Item
• Permission inheritance             • Permission can be
  not applicable                       inherited
                                      – Parent Groups / Categories
Joomla! 2.5
ACL Overview
•   http://community.joomla.org/blogs/community/1252-16-acl.html
•   http://community.joomla.org/blogs/community/1252-16-acl.html
User
       • Guest is also a
         user

       • Users can be
         assigned to one or
         multiple groups
•   http://community.joomla.org/blogs/community/1252-16-acl.html
Permissions
• Assigned to group (not to a user!)

                                       • 10 Actions
                                       –   Site Login
                                       –   Admin Login
                                       –   Offline Access (since 1.7)
                                       –   Super Admin / Configure
                                       –   Access Component
                                       –   Create
                                       –   Delete
                                       –   Edit
                                       –   Edit State
                                       –   Edit Own
•   http://community.joomla.org/blogs/community/1252-16-acl.html
Group

        • Users with same permissions

        • Inherited permissions from
          parent groups

        • Unlimited nested groups

        • Keep it simple! Only use
          nested groups if needed
•   http://community.joomla.org/blogs/community/1252-16-acl.html
Access Level

               • What is visible for the group
                 (article, menu, module, etc.)

               • Permissions are not
                 inherited between Access
                 Levels

               • Even Super Users can not
                 view content on frontend if
                 not assigned
•   http://community.joomla.org/blogs/community/1252-16-acl.html
Permissions
Permissions
• 4 possible permission settings

 – Not Set

 – Inherited

 – Allowed

 – Denied
Permissions - Not Set
• ‘soft’ deny
• can be overridden by ‘Allowed’ or ‘Denied’
Permissions - Inherited
• Value from a parent Permission level
• Value from a parent User Group
• Can be overridden by ‘Allowed’ or ‘Denied’
Permissions - Allowed
• Action for current permission level and lower levels
• Action for current user group and child groups
• Can be overridden by ‘Denied’
Permissions - Denied
•   Action for current Permission level and lower levels
•   Action for current User Group and child Groups
•   Can not be overridden at all
•   Always win!
Permission Hierarchy (levels)
• Level 1: Global configuration
 – default permissions settings for actions for a group
Permission Hierarchy (levels)
• Level 1: Global configuration
 – default permissions settings for actions for a group
• Level 2: Component Options
 – can override the permissions of Level 1
Permission Hierarchy (levels)
• Level 1: Global configuration
 – default permissions settings for actions for a group
• Level 2: Component Options
 – can override the permissions of Level 1
• Level 3: Category
 – can override the permissions of Level 1 & Level 2
 – available for components with categories (Articles, Banners, etc...)
Permission Hierarchy (levels)
• Level 1: Global configuration
 – default permissions settings for actions for a group
• Level 2: Component Options
 – can override the permissions of Level 1
• Level 3: Category
 – can override the permissions of Level 1 & Level 2
 – available for components with categories (Articles, Banners, etc...)
• Level 4: Item
 – can override the permissions of Level 1 & Level 2 & Level 3
 – only available for article manager in Joomla core
Permission Hierarchy (levels)
• Level 1: Global configuration
 – default permissions settings for actions for a group
• Level 2: Component Options
 – can override the permissions of Level 1
• Level 3: Category
 – can override the permissions of Level 1 & Level 2
 – available for components with categories (Articles, Banners, etc...)
• Level 4: Item
 – can override the permissions of Level 1 & Level 2 & Level 3
 – only available for article manager in Joomla core
Permission Hierarchy (levels)
• Level 1: Global configuration
 – default permissions settings for actions for a group
• Level 2: Component Options
 – can override the permissions of Level 1
• Level 3: Category
 – can override the permissions of Level 1 & Level 2
 – available for components with categories (Articles, Banners, etc...)
• Level 4: Item
 – can override the permissions of Level 1 & Level 2 & Level 3
 – only available for article manager in Joomla core
• Override permissions of higher levels only works
  if permission setting is not ‘Denied’!
Inheriting example for ‘Create’ Action


    Level 1


    Level 2


    Level 3


    Level 4


•   http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new-permissions-in-joomla-16.html
Inheriting example for ‘Create’ Action


    Level 1


    Level 2


    Level 3


    Level 4


•   http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new-permissions-in-joomla-16.html
Inheriting example for ‘Create’ Action


    Level 1


    Level 2


    Level 3


    Level 4


•   http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new-permissions-in-joomla-16.html
Inheriting example for ‘Create’ Action


    Level 1


    Level 2


    Level 3


    Level 4


•   http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new-permissions-in-joomla-16.html
Available Permissions and Levels
        for a Group of Users
Action: Edit State
ACL Manager for Joomla! 1.6
ACL Manager for Joomla! 1.6
ACL Manager for Joomla! 1.6




        www.aclmanager.net
50% et
                                                gm
                                                 in
                                             kort a!dagen




                                                                              !
                                                                             la
                                                   l
                                             Joom upon!




                                                                            m
                                                 co




                                                                          o

                                                                                  et
                                                                       Jo

                                                                                .n
                                                                       or

                                                                              er
                                                                   vo

                                                                            ag
                                                                  er

                                                                         an
                                                                  ag

                                                                       m
                                                              an


                                                                       cl
                                                                    .a
                                                             M

                                                                   w
                                                              L

                                                                  w
                                                            AC

                                                                  w




Potjer Webdevelopment - www.aclmanager.net
Debug Permissions
Debug Permissions
• Turn on the ‘Debug System’ in the
  Global Configuration


• Go to ‘User Manager’ or ‘Groups’




• Click on ‘Debug Permission Report’ next to the User
  or User Group
Debug Permissions
• Need to turn ‘Debug System’ on...
So, what about the database?
Database: #__assets
Plan your ACL implementation
Viewing or Action problem
• Define the problem, is it a viewing problem or action
  problem (create/delete/edit/etc..)? Or both?

• Viewing: define the Viewing Access Levels

• Action: define the permissions for all actions
Describe the problem
• Most of the website is public available, specific
  content only for a group of users (e.g. teachers &
  students)

• A teacher can see content specifically for teachers, all
  student content and all public content

• Students can see content specifically for students and
  all public content
<workshops>
  Joomla! ACL in de praktijk                                                                    pagina 32 - 35



 Joomla! ACL
                                                               L
                                     DE EXPERT                                   ange tijd was het één van de
                                                                                 meest gewilde nieuwe
                                                                                 functionaliteiten in Joomla en




 in de praktijk
                                                                                 sinds de beschikbaarheid van
                                                                                 Joomla 1.6 is het er dan eindelijk:
                                                                                 uitgebreid toegangs- en
                                                                                 rechtenbeheer, ook wel Access
                                                                                 Control List (ACL) genoemd.
                                                               Joomla 1.0 en 1.5 beschikten al over een ACL-
                                                               systeem, maar dit was nog erg beperkt. De
                                     Sander Potjer is
                                                               gebruikersgroepen, toegangsniveaus en rechten
 Met de Access Control List          voorzitter van Stiching
                                     Sympathy en actief
                                                               konden niet ingesteld worden. In Joomla 1.6, 1.7 en
                                                               2.5 kan dit nu wel, waardoor het ACL-systeem
 maak je snel onderscheid in         met JoomlaCommu-
                                     nity.eu, de Joomla-       weliswaar complexer is geworden, maar er tevens
                                                               veel nieuwe mogelijkheden zijn ontstaan.
 het toegangsniveau van              gebruikersgroepen en
                                     de Joomla!Dagen. Op          Voor deze workshop gaan we een ACL-
                                     international gebied      configuratie opzetten voor een kleine school in een
 verschillende gebruikers-           maakt Sander deel uit     Joomla 2.5-installatie, zonder Joomlavoorbeelddata.
                                     van het Joomla            De school heeft drie klassen met leerlingen en
 groepen. Zo zet je je ACL op…       Leadership Team.
                                     Sander is ook de
                                                               diverse docenten. Een docent kan voor meerdere
                                                               klassen staan.
                                     ontwikkelaar van ACL
                                                                  De school wil graag dat iedere klas een eigen
                                     Manager waarmee het
                                                               klasblog heeft waar de leerlingen uit de klas
                                     Joomla ACL-beheer
 tools | tech | trends Joomla! 2.5   wordt vereenvoudigd.      artikelen kunnen toevoegen en alleen de zelf
 experts Sander Potjer                                         geschreven artikelen kunnen bewerken. Beide via
                                                               de voorzijde van de website. De artikelen zijn voor
                                                               iedereen zichtbaar op de website.
                                                                  De docent van een klas moet alle artikelen voor
                                                               publicatie eerst goedkeuren, kan alle artikelen van
                                                               de leerlingen in de klas bewerken en eventueel
                                                               verwijderen, zowel via de voorzijde als het
                                                               beheergedeelte van de website. In het
                                                               beheergedeelte mag de docent alleen bij de
                                                               artikelen van de eigen klas(sen) komen. De docent
                                                               moet zelf ook artikelen kunnen plaatsen.
                                                                  Als laatste wens is er dat voor de docenten een
                                                               aparte blog is voor intern gebruik waar de docenten
                                                               artikelen kunnen plaatsen, een klein intranet dus. Dit
                                                               mag alleen voor de docenten zichtbaar zijn.
Think ahead! Maintenance?
• Structure your content properly to handle the
  permissions

• Make usage of parent categories with nested
  categories with same permissions

• No need to set permissions per article
Some Notes
User in multiple User Groups
• The Netherlands
 – Allowed on edit ‘The Netherlands’ category
 – Denied on edit ‘Belgium’ category
• Belgium
 – Allowed on edit ‘Belgium’ category
 – Denied on edit ‘The Netherlands’ category
• User in The Netherlands & Belgium group
 –   Denied on edit ‘The Netherlands’ category
 –   Denied on edit ‘Belgium’ category
 –   Denied always win (again)
 –   Solution: don’t use denied but not set/inherited (=soft deny)
What if I locked myself out?
What if I locked myself out?
• No need to access your database
• Open your configuration.php and add:
 – public $root_user = 'username';
• You can login again and perform all actions
• Great for playing around with the new ACL
• Don’t forget to remove the $root_user line!
Practical ACL Tips
ACL Tips
• Write down your ACL requirements for a website
  before implementing

• Joomla 1.5 User Groups are for backward
  compatibility in Joomla 2.5, you may remove them!

• Use multi-nested Groups only if needed / know what
  you are doing
 (so inheriting value only between levels, not groups as well)
ACL Tips
• Assign User Group with backend access to a Viewing
  Access Level

• Keep flexible for lower permission levels/groups:
 Avoid the ‘Denied’ permission setting as long as possible

• Idea: Make a Group for each Action so you can assign
  actions directly to a user
Quick ACL example
Resources
•   http://community.joomla.org/blogs/community/1252-16-acl.html
•   http://docs.joomla.org/ACL_Tutorial_for_Joomla_1.6
•   http://docs.joomla.org/Access_Control_System_In_Joomla_1.6
•   http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new-
    permissions-in-joomla-16.html
•   http://www.theartofjoomla.com/home/38-talks/101-the-joomla-16-video-
    access-controls.html
•   http://www.aclmanager.net
•   http://www.aclmanager.net/news/general/28-is-your-extension-really-
    joomla-17-ready
•   http://www.aclmanager.net/news/general/31-how-to-add-basic-acl-support-to-
    your-extension

Mais conteúdo relacionado

Destaque

JMonitoring, powertool voor Joomla!
JMonitoring, powertool voor Joomla!JMonitoring, powertool voor Joomla!
JMonitoring, powertool voor Joomla!René Kreijveld
 
Joomla Extensions Kung Fu
Joomla Extensions Kung FuJoomla Extensions Kung Fu
Joomla Extensions Kung FuOleg Nesterov
 
Moving from Wordpress to Joomla
Moving from Wordpress to JoomlaMoving from Wordpress to Joomla
Moving from Wordpress to JoomlaPete Rossetti
 
Rapid application development using Akeeba FOF and Joomla 3.2
Rapid application development using Akeeba FOF and Joomla 3.2Rapid application development using Akeeba FOF and Joomla 3.2
Rapid application development using Akeeba FOF and Joomla 3.2Tim Plummer
 
FOF Rapid Application Development on Joomla! - Joomla! Day Denmark 2012
FOF Rapid Application Development on Joomla! - Joomla! Day Denmark 2012FOF Rapid Application Development on Joomla! - Joomla! Day Denmark 2012
FOF Rapid Application Development on Joomla! - Joomla! Day Denmark 2012Nicholas Dionysopoulos
 
Hexagonal architecture - message-oriented software design
Hexagonal architecture  - message-oriented software designHexagonal architecture  - message-oriented software design
Hexagonal architecture - message-oriented software designMatthias Noback
 
Website foundations for a good digital marketing plan
Website foundations for a good digital marketing planWebsite foundations for a good digital marketing plan
Website foundations for a good digital marketing planPeter Bui
 
Shika 1.0 Launch Presentation
Shika 1.0 Launch PresentationShika 1.0 Launch Presentation
Shika 1.0 Launch PresentationParth Lawate
 

Destaque (9)

JMonitoring, powertool voor Joomla!
JMonitoring, powertool voor Joomla!JMonitoring, powertool voor Joomla!
JMonitoring, powertool voor Joomla!
 
Joomla Extensions Kung Fu
Joomla Extensions Kung FuJoomla Extensions Kung Fu
Joomla Extensions Kung Fu
 
Moving from Wordpress to Joomla
Moving from Wordpress to JoomlaMoving from Wordpress to Joomla
Moving from Wordpress to Joomla
 
Rapid application development using Akeeba FOF and Joomla 3.2
Rapid application development using Akeeba FOF and Joomla 3.2Rapid application development using Akeeba FOF and Joomla 3.2
Rapid application development using Akeeba FOF and Joomla 3.2
 
FOF Rapid Application Development on Joomla! - Joomla! Day Denmark 2012
FOF Rapid Application Development on Joomla! - Joomla! Day Denmark 2012FOF Rapid Application Development on Joomla! - Joomla! Day Denmark 2012
FOF Rapid Application Development on Joomla! - Joomla! Day Denmark 2012
 
Hexagonal architecture - message-oriented software design
Hexagonal architecture  - message-oriented software designHexagonal architecture  - message-oriented software design
Hexagonal architecture - message-oriented software design
 
Website foundations for a good digital marketing plan
Website foundations for a good digital marketing planWebsite foundations for a good digital marketing plan
Website foundations for a good digital marketing plan
 
Git basics
Git basicsGit basics
Git basics
 
Shika 1.0 Launch Presentation
Shika 1.0 Launch PresentationShika 1.0 Launch Presentation
Shika 1.0 Launch Presentation
 

Semelhante a Joomla 2.5 ACL @ Dutch Joomla!Days #jd12nl

Joomla! ACL - Joomla!Day Germany
Joomla! ACL - Joomla!Day GermanyJoomla! ACL - Joomla!Day Germany
Joomla! ACL - Joomla!Day GermanySander Potjer
 
Joomla! 1.6 ACL at #jd10uk
Joomla! 1.6 ACL at #jd10ukJoomla! 1.6 ACL at #jd10uk
Joomla! 1.6 ACL at #jd10ukSander Potjer
 
Enrich your extensions with Joomla! ACL support
Enrich your extensions with Joomla! ACL supportEnrich your extensions with Joomla! ACL support
Enrich your extensions with Joomla! ACL supportSander Potjer
 
Joomla ACL introduction, limit site access
Joomla ACL introduction, limit site accessJoomla ACL introduction, limit site access
Joomla ACL introduction, limit site accessSander Potjer
 
Joomla 4 custom fields and workflow
Joomla 4 custom fields and workflowJoomla 4 custom fields and workflow
Joomla 4 custom fields and workflowTim Plummer
 
Joomla Workshop.pptx
Joomla Workshop.pptxJoomla Workshop.pptx
Joomla Workshop.pptxOslworkshop
 
Synapse india reviews on drupal intro
Synapse india reviews on drupal introSynapse india reviews on drupal intro
Synapse india reviews on drupal introTarunsingh198
 
Necto 16 training 17 - administration
Necto 16 training 17 -  administrationNecto 16 training 17 -  administration
Necto 16 training 17 - administrationPanorama Software
 
recordsharingmodelinsalesforce-170519074428.pdf
recordsharingmodelinsalesforce-170519074428.pdfrecordsharingmodelinsalesforce-170519074428.pdf
recordsharingmodelinsalesforce-170519074428.pdfrohitgupt1
 
Record sharing model in salesforce
Record sharing model in salesforceRecord sharing model in salesforce
Record sharing model in salesforceSunil kumar
 
Yes It Can: Leverage Workflow in Plone to Bring Business Process Online
Yes It Can: Leverage Workflow in Plone to Bring Business Process OnlineYes It Can: Leverage Workflow in Plone to Bring Business Process Online
Yes It Can: Leverage Workflow in Plone to Bring Business Process OnlineCristopher Ewing
 
Drupal intro-training-in-mumbai
Drupal intro-training-in-mumbaiDrupal intro-training-in-mumbai
Drupal intro-training-in-mumbaivibrantuser
 
Sharing and security in Salesforce
Sharing and security in SalesforceSharing and security in Salesforce
Sharing and security in SalesforceSaurabh Kulkarni
 
Joomla Modules with Permissions and Front-End Editing
Joomla Modules with Permissions and Front-End EditingJoomla Modules with Permissions and Front-End Editing
Joomla Modules with Permissions and Front-End EditingRandy Carey
 
Develop Basic joomla! MVC component for version 3
Develop Basic joomla! MVC component for version 3Develop Basic joomla! MVC component for version 3
Develop Basic joomla! MVC component for version 3Gunjan Patel
 
Oracle Enterprise Manager Security A Practitioners Guide
Oracle Enterprise Manager Security A Practitioners GuideOracle Enterprise Manager Security A Practitioners Guide
Oracle Enterprise Manager Security A Practitioners GuideCourtney Llamas
 
SFDC Database Security
SFDC Database SecuritySFDC Database Security
SFDC Database SecuritySujit Kumar
 

Semelhante a Joomla 2.5 ACL @ Dutch Joomla!Days #jd12nl (20)

Joomla! ACL - Joomla!Day Germany
Joomla! ACL - Joomla!Day GermanyJoomla! ACL - Joomla!Day Germany
Joomla! ACL - Joomla!Day Germany
 
Joomla! 1.6 ACL at #jd10uk
Joomla! 1.6 ACL at #jd10ukJoomla! 1.6 ACL at #jd10uk
Joomla! 1.6 ACL at #jd10uk
 
Enrich your extensions with Joomla! ACL support
Enrich your extensions with Joomla! ACL supportEnrich your extensions with Joomla! ACL support
Enrich your extensions with Joomla! ACL support
 
Joomla ACL introduction, limit site access
Joomla ACL introduction, limit site accessJoomla ACL introduction, limit site access
Joomla ACL introduction, limit site access
 
Joomla 4 custom fields and workflow
Joomla 4 custom fields and workflowJoomla 4 custom fields and workflow
Joomla 4 custom fields and workflow
 
Joomla Workshop.pptx
Joomla Workshop.pptxJoomla Workshop.pptx
Joomla Workshop.pptx
 
Synapse india reviews on drupal intro
Synapse india reviews on drupal introSynapse india reviews on drupal intro
Synapse india reviews on drupal intro
 
Necto 16 training 17 - administration
Necto 16 training 17 -  administrationNecto 16 training 17 -  administration
Necto 16 training 17 - administration
 
recordsharingmodelinsalesforce-170519074428.pdf
recordsharingmodelinsalesforce-170519074428.pdfrecordsharingmodelinsalesforce-170519074428.pdf
recordsharingmodelinsalesforce-170519074428.pdf
 
Record sharing model in salesforce
Record sharing model in salesforceRecord sharing model in salesforce
Record sharing model in salesforce
 
Yes It Can: Leverage Workflow in Plone to Bring Business Process Online
Yes It Can: Leverage Workflow in Plone to Bring Business Process OnlineYes It Can: Leverage Workflow in Plone to Bring Business Process Online
Yes It Can: Leverage Workflow in Plone to Bring Business Process Online
 
Drupal intro-training-in-mumbai
Drupal intro-training-in-mumbaiDrupal intro-training-in-mumbai
Drupal intro-training-in-mumbai
 
Sharing and security in Salesforce
Sharing and security in SalesforceSharing and security in Salesforce
Sharing and security in Salesforce
 
CMS Joomla
CMS JoomlaCMS Joomla
CMS Joomla
 
Joomla Modules with Permissions and Front-End Editing
Joomla Modules with Permissions and Front-End EditingJoomla Modules with Permissions and Front-End Editing
Joomla Modules with Permissions and Front-End Editing
 
Drupal intro (1)
Drupal intro (1)Drupal intro (1)
Drupal intro (1)
 
Develop Basic joomla! MVC component for version 3
Develop Basic joomla! MVC component for version 3Develop Basic joomla! MVC component for version 3
Develop Basic joomla! MVC component for version 3
 
Oracle Enterprise Manager Security A Practitioners Guide
Oracle Enterprise Manager Security A Practitioners GuideOracle Enterprise Manager Security A Practitioners Guide
Oracle Enterprise Manager Security A Practitioners Guide
 
SFDC Database Security
SFDC Database SecuritySFDC Database Security
SFDC Database Security
 
OOP in JS
OOP in JSOOP in JS
OOP in JS
 

Mais de Sander Potjer

Daarom Joomla! - Makkelijk content publiceren
Daarom Joomla! - Makkelijk content publicerenDaarom Joomla! - Makkelijk content publiceren
Daarom Joomla! - Makkelijk content publicerenSander Potjer
 
Daarom Joomla! - Inspiratie uit de praktijk
Daarom Joomla! - Inspiratie uit de praktijkDaarom Joomla! - Inspiratie uit de praktijk
Daarom Joomla! - Inspiratie uit de praktijkSander Potjer
 
Daarom Joomla! - Een fantastische basis
Daarom Joomla! - Een fantastische basisDaarom Joomla! - Een fantastische basis
Daarom Joomla! - Een fantastische basisSander Potjer
 
Performance budget @ Joomla! Performance Expert Sessie
Performance budget @ Joomla! Performance Expert SessiePerformance budget @ Joomla! Performance Expert Sessie
Performance budget @ Joomla! Performance Expert SessieSander Potjer
 
Technieken & tools @ Joomla! Performance Expert Sessie
Technieken & tools @ Joomla! Performance Expert SessieTechnieken & tools @ Joomla! Performance Expert Sessie
Technieken & tools @ Joomla! Performance Expert SessieSander Potjer
 
CDN @ Joomla! Performance Expert Sessie
CDN @ Joomla! Performance Expert SessieCDN @ Joomla! Performance Expert Sessie
CDN @ Joomla! Performance Expert SessieSander Potjer
 
Proxy caching @ Joomla! Performance Expert Sessie
Proxy caching @ Joomla! Performance Expert SessieProxy caching @ Joomla! Performance Expert Sessie
Proxy caching @ Joomla! Performance Expert SessieSander Potjer
 
Server performance @ Joomla! Performance Expert Sessie
Server performance @ Joomla! Performance Expert SessieServer performance @ Joomla! Performance Expert Sessie
Server performance @ Joomla! Performance Expert SessieSander Potjer
 
.htaccess performance @ Joomla! Performance Expert Sessie
.htaccess performance @ Joomla! Performance Expert Sessie.htaccess performance @ Joomla! Performance Expert Sessie
.htaccess performance @ Joomla! Performance Expert SessieSander Potjer
 
Google AMP @ Joomla! Performance Expert Sessie
Google AMP @ Joomla! Performance Expert SessieGoogle AMP @ Joomla! Performance Expert Sessie
Google AMP @ Joomla! Performance Expert SessieSander Potjer
 
Optimaliseer afbeeldingen @ Joomla! Performance Expert Sessie
Optimaliseer afbeeldingen @ Joomla! Performance Expert SessieOptimaliseer afbeeldingen @ Joomla! Performance Expert Sessie
Optimaliseer afbeeldingen @ Joomla! Performance Expert SessieSander Potjer
 
Optimalisatie plugins @ Joomla! Performance Expert Sessie
Optimalisatie plugins @ Joomla! Performance Expert SessieOptimalisatie plugins @ Joomla! Performance Expert Sessie
Optimalisatie plugins @ Joomla! Performance Expert SessieSander Potjer
 
Cache handlers @ Joomla! Performance Expert Sessie
Cache handlers @ Joomla! Performance Expert SessieCache handlers @ Joomla! Performance Expert Sessie
Cache handlers @ Joomla! Performance Expert SessieSander Potjer
 
Performance & Joomla! core @ Joomla! Performance Expert Sessie
Performance & Joomla! core @ Joomla! Performance Expert SessiePerformance & Joomla! core @ Joomla! Performance Expert Sessie
Performance & Joomla! core @ Joomla! Performance Expert SessieSander Potjer
 
Joomla! First - JoomlaDagen 2017 #jd17nl
Joomla! First - JoomlaDagen 2017 #jd17nlJoomla! First - JoomlaDagen 2017 #jd17nl
Joomla! First - JoomlaDagen 2017 #jd17nlSander Potjer
 
Complexe pagina's gebruiksvriendelijk (Joomla Page Builders)
Complexe pagina's gebruiksvriendelijk (Joomla Page Builders)Complexe pagina's gebruiksvriendelijk (Joomla Page Builders)
Complexe pagina's gebruiksvriendelijk (Joomla Page Builders)Sander Potjer
 
Performance & SEO - Joomla SEO Expert Sessie
Performance & SEO - Joomla SEO Expert SessiePerformance & SEO - Joomla SEO Expert Sessie
Performance & SEO - Joomla SEO Expert SessieSander Potjer
 
Social Media & SEO - Joomla SEO Expert Sessie
Social Media & SEO - Joomla SEO Expert SessieSocial Media & SEO - Joomla SEO Expert Sessie
Social Media & SEO - Joomla SEO Expert SessieSander Potjer
 
Joomla 3.6: nieuwe router - Joomla SEO Expert Sessie
Joomla 3.6: nieuwe router - Joomla SEO Expert SessieJoomla 3.6: nieuwe router - Joomla SEO Expert Sessie
Joomla 3.6: nieuwe router - Joomla SEO Expert SessieSander Potjer
 
SEO Audit - Joomla SEO Expert Sessie
SEO Audit - Joomla SEO Expert SessieSEO Audit - Joomla SEO Expert Sessie
SEO Audit - Joomla SEO Expert SessieSander Potjer
 

Mais de Sander Potjer (20)

Daarom Joomla! - Makkelijk content publiceren
Daarom Joomla! - Makkelijk content publicerenDaarom Joomla! - Makkelijk content publiceren
Daarom Joomla! - Makkelijk content publiceren
 
Daarom Joomla! - Inspiratie uit de praktijk
Daarom Joomla! - Inspiratie uit de praktijkDaarom Joomla! - Inspiratie uit de praktijk
Daarom Joomla! - Inspiratie uit de praktijk
 
Daarom Joomla! - Een fantastische basis
Daarom Joomla! - Een fantastische basisDaarom Joomla! - Een fantastische basis
Daarom Joomla! - Een fantastische basis
 
Performance budget @ Joomla! Performance Expert Sessie
Performance budget @ Joomla! Performance Expert SessiePerformance budget @ Joomla! Performance Expert Sessie
Performance budget @ Joomla! Performance Expert Sessie
 
Technieken & tools @ Joomla! Performance Expert Sessie
Technieken & tools @ Joomla! Performance Expert SessieTechnieken & tools @ Joomla! Performance Expert Sessie
Technieken & tools @ Joomla! Performance Expert Sessie
 
CDN @ Joomla! Performance Expert Sessie
CDN @ Joomla! Performance Expert SessieCDN @ Joomla! Performance Expert Sessie
CDN @ Joomla! Performance Expert Sessie
 
Proxy caching @ Joomla! Performance Expert Sessie
Proxy caching @ Joomla! Performance Expert SessieProxy caching @ Joomla! Performance Expert Sessie
Proxy caching @ Joomla! Performance Expert Sessie
 
Server performance @ Joomla! Performance Expert Sessie
Server performance @ Joomla! Performance Expert SessieServer performance @ Joomla! Performance Expert Sessie
Server performance @ Joomla! Performance Expert Sessie
 
.htaccess performance @ Joomla! Performance Expert Sessie
.htaccess performance @ Joomla! Performance Expert Sessie.htaccess performance @ Joomla! Performance Expert Sessie
.htaccess performance @ Joomla! Performance Expert Sessie
 
Google AMP @ Joomla! Performance Expert Sessie
Google AMP @ Joomla! Performance Expert SessieGoogle AMP @ Joomla! Performance Expert Sessie
Google AMP @ Joomla! Performance Expert Sessie
 
Optimaliseer afbeeldingen @ Joomla! Performance Expert Sessie
Optimaliseer afbeeldingen @ Joomla! Performance Expert SessieOptimaliseer afbeeldingen @ Joomla! Performance Expert Sessie
Optimaliseer afbeeldingen @ Joomla! Performance Expert Sessie
 
Optimalisatie plugins @ Joomla! Performance Expert Sessie
Optimalisatie plugins @ Joomla! Performance Expert SessieOptimalisatie plugins @ Joomla! Performance Expert Sessie
Optimalisatie plugins @ Joomla! Performance Expert Sessie
 
Cache handlers @ Joomla! Performance Expert Sessie
Cache handlers @ Joomla! Performance Expert SessieCache handlers @ Joomla! Performance Expert Sessie
Cache handlers @ Joomla! Performance Expert Sessie
 
Performance & Joomla! core @ Joomla! Performance Expert Sessie
Performance & Joomla! core @ Joomla! Performance Expert SessiePerformance & Joomla! core @ Joomla! Performance Expert Sessie
Performance & Joomla! core @ Joomla! Performance Expert Sessie
 
Joomla! First - JoomlaDagen 2017 #jd17nl
Joomla! First - JoomlaDagen 2017 #jd17nlJoomla! First - JoomlaDagen 2017 #jd17nl
Joomla! First - JoomlaDagen 2017 #jd17nl
 
Complexe pagina's gebruiksvriendelijk (Joomla Page Builders)
Complexe pagina's gebruiksvriendelijk (Joomla Page Builders)Complexe pagina's gebruiksvriendelijk (Joomla Page Builders)
Complexe pagina's gebruiksvriendelijk (Joomla Page Builders)
 
Performance & SEO - Joomla SEO Expert Sessie
Performance & SEO - Joomla SEO Expert SessiePerformance & SEO - Joomla SEO Expert Sessie
Performance & SEO - Joomla SEO Expert Sessie
 
Social Media & SEO - Joomla SEO Expert Sessie
Social Media & SEO - Joomla SEO Expert SessieSocial Media & SEO - Joomla SEO Expert Sessie
Social Media & SEO - Joomla SEO Expert Sessie
 
Joomla 3.6: nieuwe router - Joomla SEO Expert Sessie
Joomla 3.6: nieuwe router - Joomla SEO Expert SessieJoomla 3.6: nieuwe router - Joomla SEO Expert Sessie
Joomla 3.6: nieuwe router - Joomla SEO Expert Sessie
 
SEO Audit - Joomla SEO Expert Sessie
SEO Audit - Joomla SEO Expert SessieSEO Audit - Joomla SEO Expert Sessie
SEO Audit - Joomla SEO Expert Sessie
 

Último

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 

Último (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Joomla 2.5 ACL @ Dutch Joomla!Days #jd12nl

  • 1. Rechtenbeheer in Joomla! 2.5 Sander Potjer @sanderpotjer www.sanderpotjer.nl Joomla!dagen 2012 - 21 april 2012
  • 2. Who is Sander Potjer? • Involved in the local Joomla community • Joomla Community Leadership Team (CLT) member • Company: Sander Potjer Webdevelopment • E-mail: sander.potjer@community.joomla.org
  • 3. Who is Sander Potjer? • Involved in the local Joomla community • Joomla Community Leadership Team (CLT) member • Company: Sander Potjer Webdevelopment • E-mail: sander.potjer@community.joomla.org • Slides: http://www.slideshare.net/sanderpotjer
  • 5. It took a while... DrupalCon, October 2005 Johan Janssens • http://www.slideshare.net/JohanJanssens/drupalcon-2005-joomla-drupal-and-you-presentation
  • 6. ACL?!?! • ACL = Access Control List
  • 7. ACL?!?! • ACL = Access Control List • Access to parts of the website – e.g. menu / module visibility – “view” action
  • 8. ACL?!?! • ACL = Access Control List • Access to parts of the website – e.g. menu / module visibility – “view” action • User actions on objects – example: create / edit / edit state / delete article
  • 9. ACL - Groups • 7 fixed Groups – Public, Registered, Author, Editor, Publisher, Manager, Administrator and Super- Administrator • Hierarchical structure
  • 10. ACL - Groups • 7 fixed Groups • Unlimited Groups – Public, Registered, Author, – user defined Editor, Publisher, Manager, Administrator and Super- • No Hierarchical Structure Administrator required • Hierarchical structure
  • 11. ACL - User in Group • User can be assigned to one group
  • 12. ACL - User in Group • User can be assigned to • User can be assigned to one group multiple groups
  • 13. ACL - Access Levels • 3 fixed Access Levels – Public – Registered – Special
  • 14. ACL - Access Levels • 3 fixed Access Levels • Unlimited Access Levels – Public – user defined – Registered – Special
  • 15. ACL - Access Levels & Groups relation • Fixed relation between Groups and Access Levels
  • 16. ACL - Access Levels & Groups relation • Fixed relation between • Any combination of User Groups and Access Groups can be assigned Levels to any Access Level
  • 17. ACL - Actions • Fixed Actions per group – Create / edit / delete / admin access / etc. • Permission scope for entire site – Same permission for all objects • Permission inheritance not applicable
  • 18. ACL in Joomla! 1.5 & 1.6 (Actions) • http://brian.teeman.net/joomla-gps/joomla-15-acl-explained.html
  • 19. ACL - Actions • Fixed Actions per group • Defined Actions per group – Create / edit / delete / – Create / edit / delete / admin access / etc. admin access / etc. • Permission scope for • Permission scope at entire site multiple levels – Same permission for all objects – Site/Component/Category/Item • Permission inheritance • Permission can be not applicable inherited – Parent Groups / Categories
  • 21. http://community.joomla.org/blogs/community/1252-16-acl.html
  • 22. http://community.joomla.org/blogs/community/1252-16-acl.html
  • 23. User • Guest is also a user • Users can be assigned to one or multiple groups
  • 24. http://community.joomla.org/blogs/community/1252-16-acl.html
  • 25. Permissions • Assigned to group (not to a user!) • 10 Actions – Site Login – Admin Login – Offline Access (since 1.7) – Super Admin / Configure – Access Component – Create – Delete – Edit – Edit State – Edit Own
  • 26. http://community.joomla.org/blogs/community/1252-16-acl.html
  • 27. Group • Users with same permissions • Inherited permissions from parent groups • Unlimited nested groups • Keep it simple! Only use nested groups if needed
  • 28. http://community.joomla.org/blogs/community/1252-16-acl.html
  • 29. Access Level • What is visible for the group (article, menu, module, etc.) • Permissions are not inherited between Access Levels • Even Super Users can not view content on frontend if not assigned
  • 30. http://community.joomla.org/blogs/community/1252-16-acl.html
  • 32. Permissions • 4 possible permission settings – Not Set – Inherited – Allowed – Denied
  • 33. Permissions - Not Set • ‘soft’ deny • can be overridden by ‘Allowed’ or ‘Denied’
  • 34. Permissions - Inherited • Value from a parent Permission level • Value from a parent User Group • Can be overridden by ‘Allowed’ or ‘Denied’
  • 35. Permissions - Allowed • Action for current permission level and lower levels • Action for current user group and child groups • Can be overridden by ‘Denied’
  • 36. Permissions - Denied • Action for current Permission level and lower levels • Action for current User Group and child Groups • Can not be overridden at all • Always win!
  • 37. Permission Hierarchy (levels) • Level 1: Global configuration – default permissions settings for actions for a group
  • 38.
  • 39. Permission Hierarchy (levels) • Level 1: Global configuration – default permissions settings for actions for a group • Level 2: Component Options – can override the permissions of Level 1
  • 40.
  • 41.
  • 42. Permission Hierarchy (levels) • Level 1: Global configuration – default permissions settings for actions for a group • Level 2: Component Options – can override the permissions of Level 1 • Level 3: Category – can override the permissions of Level 1 & Level 2 – available for components with categories (Articles, Banners, etc...)
  • 43.
  • 44.
  • 45. Permission Hierarchy (levels) • Level 1: Global configuration – default permissions settings for actions for a group • Level 2: Component Options – can override the permissions of Level 1 • Level 3: Category – can override the permissions of Level 1 & Level 2 – available for components with categories (Articles, Banners, etc...) • Level 4: Item – can override the permissions of Level 1 & Level 2 & Level 3 – only available for article manager in Joomla core
  • 46.
  • 47.
  • 48. Permission Hierarchy (levels) • Level 1: Global configuration – default permissions settings for actions for a group • Level 2: Component Options – can override the permissions of Level 1 • Level 3: Category – can override the permissions of Level 1 & Level 2 – available for components with categories (Articles, Banners, etc...) • Level 4: Item – can override the permissions of Level 1 & Level 2 & Level 3 – only available for article manager in Joomla core
  • 49. Permission Hierarchy (levels) • Level 1: Global configuration – default permissions settings for actions for a group • Level 2: Component Options – can override the permissions of Level 1 • Level 3: Category – can override the permissions of Level 1 & Level 2 – available for components with categories (Articles, Banners, etc...) • Level 4: Item – can override the permissions of Level 1 & Level 2 & Level 3 – only available for article manager in Joomla core • Override permissions of higher levels only works if permission setting is not ‘Denied’!
  • 50. Inheriting example for ‘Create’ Action Level 1 Level 2 Level 3 Level 4 • http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new-permissions-in-joomla-16.html
  • 51. Inheriting example for ‘Create’ Action Level 1 Level 2 Level 3 Level 4 • http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new-permissions-in-joomla-16.html
  • 52. Inheriting example for ‘Create’ Action Level 1 Level 2 Level 3 Level 4 • http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new-permissions-in-joomla-16.html
  • 53. Inheriting example for ‘Create’ Action Level 1 Level 2 Level 3 Level 4 • http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new-permissions-in-joomla-16.html
  • 54. Available Permissions and Levels for a Group of Users
  • 56.
  • 57.
  • 58.
  • 59.
  • 60. ACL Manager for Joomla! 1.6
  • 61. ACL Manager for Joomla! 1.6
  • 62.
  • 63.
  • 64. ACL Manager for Joomla! 1.6 www.aclmanager.net
  • 65. 50% et gm in kort a!dagen ! la l Joom upon! m co o et Jo .n or er vo ag er an ag m an cl .a M w L w AC w Potjer Webdevelopment - www.aclmanager.net
  • 67. Debug Permissions • Turn on the ‘Debug System’ in the Global Configuration • Go to ‘User Manager’ or ‘Groups’ • Click on ‘Debug Permission Report’ next to the User or User Group
  • 68.
  • 69. Debug Permissions • Need to turn ‘Debug System’ on...
  • 70. So, what about the database?
  • 72. Plan your ACL implementation
  • 73. Viewing or Action problem • Define the problem, is it a viewing problem or action problem (create/delete/edit/etc..)? Or both? • Viewing: define the Viewing Access Levels • Action: define the permissions for all actions
  • 74. Describe the problem • Most of the website is public available, specific content only for a group of users (e.g. teachers & students) • A teacher can see content specifically for teachers, all student content and all public content • Students can see content specifically for students and all public content
  • 75.
  • 76. <workshops> Joomla! ACL in de praktijk pagina 32 - 35 Joomla! ACL L DE EXPERT ange tijd was het één van de meest gewilde nieuwe functionaliteiten in Joomla en in de praktijk sinds de beschikbaarheid van Joomla 1.6 is het er dan eindelijk: uitgebreid toegangs- en rechtenbeheer, ook wel Access Control List (ACL) genoemd. Joomla 1.0 en 1.5 beschikten al over een ACL- systeem, maar dit was nog erg beperkt. De Sander Potjer is gebruikersgroepen, toegangsniveaus en rechten Met de Access Control List voorzitter van Stiching Sympathy en actief konden niet ingesteld worden. In Joomla 1.6, 1.7 en 2.5 kan dit nu wel, waardoor het ACL-systeem maak je snel onderscheid in met JoomlaCommu- nity.eu, de Joomla- weliswaar complexer is geworden, maar er tevens veel nieuwe mogelijkheden zijn ontstaan. het toegangsniveau van gebruikersgroepen en de Joomla!Dagen. Op Voor deze workshop gaan we een ACL- international gebied configuratie opzetten voor een kleine school in een verschillende gebruikers- maakt Sander deel uit Joomla 2.5-installatie, zonder Joomlavoorbeelddata. van het Joomla De school heeft drie klassen met leerlingen en groepen. Zo zet je je ACL op… Leadership Team. Sander is ook de diverse docenten. Een docent kan voor meerdere klassen staan. ontwikkelaar van ACL De school wil graag dat iedere klas een eigen Manager waarmee het klasblog heeft waar de leerlingen uit de klas Joomla ACL-beheer tools | tech | trends Joomla! 2.5 wordt vereenvoudigd. artikelen kunnen toevoegen en alleen de zelf experts Sander Potjer geschreven artikelen kunnen bewerken. Beide via de voorzijde van de website. De artikelen zijn voor iedereen zichtbaar op de website. De docent van een klas moet alle artikelen voor publicatie eerst goedkeuren, kan alle artikelen van de leerlingen in de klas bewerken en eventueel verwijderen, zowel via de voorzijde als het beheergedeelte van de website. In het beheergedeelte mag de docent alleen bij de artikelen van de eigen klas(sen) komen. De docent moet zelf ook artikelen kunnen plaatsen. Als laatste wens is er dat voor de docenten een aparte blog is voor intern gebruik waar de docenten artikelen kunnen plaatsen, een klein intranet dus. Dit mag alleen voor de docenten zichtbaar zijn.
  • 77. Think ahead! Maintenance? • Structure your content properly to handle the permissions • Make usage of parent categories with nested categories with same permissions • No need to set permissions per article
  • 79. User in multiple User Groups • The Netherlands – Allowed on edit ‘The Netherlands’ category – Denied on edit ‘Belgium’ category • Belgium – Allowed on edit ‘Belgium’ category – Denied on edit ‘The Netherlands’ category • User in The Netherlands & Belgium group – Denied on edit ‘The Netherlands’ category – Denied on edit ‘Belgium’ category – Denied always win (again) – Solution: don’t use denied but not set/inherited (=soft deny)
  • 80. What if I locked myself out?
  • 81. What if I locked myself out? • No need to access your database • Open your configuration.php and add: – public $root_user = 'username'; • You can login again and perform all actions • Great for playing around with the new ACL • Don’t forget to remove the $root_user line!
  • 83. ACL Tips • Write down your ACL requirements for a website before implementing • Joomla 1.5 User Groups are for backward compatibility in Joomla 2.5, you may remove them! • Use multi-nested Groups only if needed / know what you are doing (so inheriting value only between levels, not groups as well)
  • 84. ACL Tips • Assign User Group with backend access to a Viewing Access Level • Keep flexible for lower permission levels/groups: Avoid the ‘Denied’ permission setting as long as possible • Idea: Make a Group for each Action so you can assign actions directly to a user
  • 86. Resources • http://community.joomla.org/blogs/community/1252-16-acl.html • http://docs.joomla.org/ACL_Tutorial_for_Joomla_1.6 • http://docs.joomla.org/Access_Control_System_In_Joomla_1.6 • http://www.theartofjoomla.com/home/5-commentary/84-introducing-the-new- permissions-in-joomla-16.html • http://www.theartofjoomla.com/home/38-talks/101-the-joomla-16-video- access-controls.html • http://www.aclmanager.net • http://www.aclmanager.net/news/general/28-is-your-extension-really- joomla-17-ready • http://www.aclmanager.net/news/general/31-how-to-add-basic-acl-support-to- your-extension