Skip to content

Admin Guide: Wiki Permissions for WikiJs

Gabriel Vîjială edited this page Mar 5, 2024 · 22 revisions

WikiJs is EIC network's collaborative knowledge base. A detailed guide to Wiki.js is available here: https://docs.requarks.io/.

Home Page permissions

Add permissions in the liquid investigations home page admin to allow groups and users to use the Wiki.js app.





Log into the Wikijs app and assign group permissions.

Group Permissions and Page Rules

Create Groups

Go to the Admin page by clicking on the settings icon



Go to Groups and create new group.



Click on the group of your choice to assign users.



Assign Permissions to your specific groups; these allow or deny users specific actions on all wiki pages.

First, remove all Permissions from the "Guest" group.



Afterwards you can assign permissions to groups other than Guest on a case by case basis.



Assign Page Rules to a group; A page rule specifies exactly where permissions are applicable.



The 'Permissions' and 'Page Rules' system is a bit confusing: each permission should be enabled in the 'Permissions' tab as well as in the 'Page Rules' tab, to make sure all these permissions will be applied.

Only adding permissions on the 'Permissions' tab does not give default / implicit permissions - it merely allows the 'Page Rules' permissions to actually work.

Caveat: The UI doesn't alert you on this:

  • it lets the user to enable some permissions in 'Page Rules' even if the user forgets to enable them in 'Permissions'
  • it doesn't warn the user after permissions were added under 'Permissions' without ever using them under 'Page Rules'

Other Caveats

  • If the "Guest" group has permission to do see/do anything on the homepage, then Wiki.js will not auto-login the user into their SSO account, and they will need to manually click the "Login" button in the corner every time they sign in.
  • The administration of permissions should only happen on 1 browser tab. If you have 2 browser tabs open and toggle between 'Permissions' and 'Page Rules', the permissions or rules often don't stick.
  • Please double-check every single admin change by force-refreshing admin page with Ctrl-Shift-R. It's easy to ignore the green "Update User" / "Update Group" button in the top-right corner of the page. Changing anything in the page has no effect until that button is clicked, even if there are green popups on the screen.

For more details around 'Permissions' and 'Page Rules', please check out https://docs.requarks.io/groups

Asset permissions

An admin can control assets permissions (image uploads) with read:asset and write:asset permissions.

If users upload assets to the default path / then everyone can see that folder, so the screenshots are not secret anymore

Recommendation: Remove asset:write and page:write permissions from / folder, making users use their own namespaces

Import from DokuWiki

  • with SSH access:
    • download pandoc version 3 from their website: https://github.com/jgm/pandoc/releases/tag/3.1.2
      • use the binary pandoc -3.1.2-linux-amd64.tar.gz
    • set the PANDOC environment variable to the unpacked binary
    • if needed, set the IMPORT_DOKU_ROOT variable to the dokuwiki data root (by default /opt/node/volumes/dokuwiki)
    • run script: ./scripts/export-dokuwiki-into-wikijs.sh
    • follow instructions printed on screen using Administrator account\
  • imported pages links are red?
    • Click "Page Actions > Edit page"
    • Click the greyed out " ✅ SAVED" button
    • Click the red " ✖ CLOSE"
    • Links are now blue.

Create existing users in Wiki.js

  • On first wiki creation, user database is empty
  • Admin needs to execute script when running first time: ./scripts/migrate_wikijs_users.sh
Clone this wiki locally