acl
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
acl [2021-11-05 23:18] – Added a minimal user file for manual configuration setting gerardnico | acl [2024-08-07 07:50] (current) – [Access Control Lists (ACL)s] 37.128.247.102 | ||
---|---|---|---|
Line 3: | Line 3: | ||
[[DokuWiki]] --- like most wikis --- is very open by default. Everyone is allowed to create, edit and delete pages. However sometimes it makes sense to restrict access to certain or all pages. This is when the //Access Control List// (ACL) comes into play. This page gives an overview of how ACLs work in DokuWiki and how they are configured. | [[DokuWiki]] --- like most wikis --- is very open by default. Everyone is allowed to create, edit and delete pages. However sometimes it makes sense to restrict access to certain or all pages. This is when the //Access Control List// (ACL) comes into play. This page gives an overview of how ACLs work in DokuWiki and how they are configured. | ||
- | {{: | ||
===== Configuration and Setup ===== | ===== Configuration and Setup ===== | ||
Line 13: | Line 12: | ||
<file php conf/ | <file php conf/ | ||
- | # login: | + | # login: |
admin: | admin: | ||
Line 61: | Line 60: | ||
Existing rules can be modified or deleted in the table at the bottom of the ACL manager. | Existing rules can be modified or deleted in the table at the bottom of the ACL manager. | ||
+ | conf/ | ||
==== ACLs by Example ==== | ==== ACLs by Example ==== | ||
Line 73: | Line 73: | ||
- User //bigboss// is given full rights. | - User //bigboss// is given full rights. | ||
- Now the access for the '' | - Now the access for the '' | ||
- | - Well not nobody really---we give members of the //devel// group full rights here. | + | - Well not nobody really---we give members of the //devel// group almost |
- | - And of course | + | - User // |
- | - And the // | + | - The // |
- However the devel team doesn' | - However the devel team doesn' | ||
- | - And finally the // | + | - And finally the // |
- | - Then the permissions for the namespace '' | + | - Then the permissions for the namespace '' |
- | - The last line finally restricts the start page to readonly for everyone. Only superusers will be able to ever edit that page. | + | * other users will be matched by line #1 so they can still create and edit. |
+ | * Rights for // | ||
+ | - The last line finally restricts the start page to readonly for everyone. Even for //bigboss//. Only superusers will be able to ever edit that page. | ||
Let's have a look at a second example to better understand **specific matching**: | Let's have a look at a second example to better understand **specific matching**: | ||
Line 85: | Line 87: | ||
{{: | {{: | ||
- | FIXME - Should the group be changed to @user in the table, which I thought was the default group? | ||
This time we look what rules will match for different users when trying to access the page '' | This time we look what rules will match for different users when trying to access the page '' | ||
Line 146: | Line 147: | ||
Please note that **order does not matter** in the file. The file is parsed as whole, then a perfect match for the current page/user combo is searched for. When a match is found further matching is aborted. If no match is found, group permissions for the current page are checked. If no match is found the check continues in the next higher namespace. | Please note that **order does not matter** in the file. The file is parsed as whole, then a perfect match for the current page/user combo is searched for. When a match is found further matching is aborted. If no match is found, group permissions for the current page are checked. If no match is found the check continues in the next higher namespace. | ||
- | :!: **Note: | + | :!: **Note: |
+ | |||
+ | ==== User/Group Encoding ==== | ||
+ | |||
+ | Because the ACL configuration uses a few special | ||
+ | |||
+ | When you use the ACL Manager you don't have to think about this, it will do it automatically for you. | ||
+ | |||
+ | When manually editing ACLs, user and group names need to be encoded. Internally this is done using the [[xref> | ||
+ | |||
+ | The encoding uses URL encoding for all non-letter/ | ||
+ | |||
+ | Example: '' | ||
- | :!: **Note:** When using $conf[' | ||
- | :!: **Note:** The delete permission affects media files only. Pages can be deleted (and restored) by everyone with at least edit permission. Someone who has upload permissions but no delete permissions can only overwrite existing media files if the [[config: | ||
==== User Wildcards ==== | ==== User Wildcards ==== |
acl.1636150697.txt.gz · Last modified: 2021-11-05 23:18 by gerardnico