Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>This is the "best practice" I have ended up with in most projects and am very happy with:</p> <p><strong>1. Roles</strong></p> <p>When it comes to roles, I recommend great flexibility, i.e. the ability to create and define user accounts and groups freely <strong>(roles like "contributor", "manager" etc. are not hard-coded, but put into a configuration file that can be changed per application)</strong>. The role configuration is unaccessible to the user, but the engine itself should be free from hard-coded roles. </p> <p><strong>2. Rights</strong></p> <p><em>Rights</em> is where things need to be <strong>easy to understand and implement</strong>. </p> <p>I have made very good experiences working with, and checking against, <strong>very fine-grained rights on the code / API level</strong>:</p> <ul> <li>see</li> <li>view</li> <li>edit</li> <li>change name</li> <li>rename</li> <li>delete</li> <li>move</li> <li>change rights</li> <li>etc.</li> </ul> <p>but <strong>the user never sees those</strong>. For them, they are <strong>grouped</strong> into a very small number of "right groups":</p> <ul> <li>Read Only</li> <li>Edit</li> <li>Administer = Move, rename.... </li> </ul> <p>The user never sees the "move" right, but only the "Administer" rights group. </p> <p>That way, you <strong>retain the full power of fine-grained rights</strong> in your code for the future - you can, for example, easily accommodate for a rule like "interns must be able to edit pages, but not be able to change their titles, nor to delete them", adding a valuable asset to the CMS. For the end user, this functionality remains invisible, and the rights system easy to use.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload