ConfigAccessorPlugin
Display configuration values, roles, permissions, and system settings on any page. See Plugins for a complete list of available plugins.
Syntax
[{ConfigAccessor key='ngdpbase.server.port'}]
[{ConfigAccessor type='roles'}]
You must supply either key or type.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
key | string | *(required or type)* | Dot-notation config key. Supports * wildcards. |
type | string | *(required or key)* | Named display type — see [Types](#types) below. |
valueonly | boolean | false | Return plain text instead of a formatted card. |
before | string | *(none)* | Prefix before each value (use with valueonly). |
after | string | '' / \n | Suffix after each value. Default: '' for single keys, \n for wildcards. |
caption | string | *(none)* | Descriptive text shown below a single key value. |
table | boolean | false | Force a single key result into table format. |
noheader | boolean | false | Suppress the card header on wildcard and single-key results. |
pageSize | number | 0 | Rows per page for wildcard results. 0 shows all rows (no pagination). |
page | number | 1 | Page number when using pageSize. Also reads from the ?page= query string. |
manager | string | *(none)* | Manager name — required when type='manager'. |
feature | string | *(none)* | Feature name — required when type='feature'. |
enabled | boolean | *(none)* | Filter keywords or categories by enabled state. |
category | string | *(none)* | Filter by category (use with userKeywords, systemKeywords). |
storageLocation | string | *(none)* | regular or required — filter system categories. |
Key Examples
Single config value
[{ConfigAccessor key='ngdpbase.server.port'}] renders as:
Key: ngdpbase.server.port
Value: 3000
Single value with caption
[{ConfigAccessor key='ngdpbase.server.port' caption='Port the server binds to'}] renders as:
Key: ngdpbase.server.port
Value: 3000
Port the server binds to
Single value forced into table format
[{ConfigAccessor key='ngdpbase.server.port' table='true'}] renders as:
| Key | Value |
|---|---|
ngdpbase.server.port |
3000 |
Single value without header
[{ConfigAccessor key='ngdpbase.server.port' noheader='true'}] renders as:
Key: ngdpbase.server.port
Value: 3000
Inline value in text
Running [{ConfigAccessor key='ngdpbase.application-name' valueonly='true'}] version [{ConfigAccessor key='ngdpbase.version' valueonly='true'}].
Running GeoHazardWatch version 3.46.1.
Wildcard — all server keys
[{ConfigAccessor key='ngdpbase.server.*'}] renders as:
ngdpbase.server.*
| Key | Value |
|---|---|
ngdpbase.server.host |
0.0.0.0 |
ngdpbase.server.port |
3000 |
Wildcard without header
[{ConfigAccessor key='ngdpbase.server.*' noheader='true'}] renders as:
| Key | Value |
|---|---|
ngdpbase.server.host |
0.0.0.0 |
ngdpbase.server.port |
3000 |
Wildcard with pagination
Use pageSize to break large wildcard results into pages. Prev/Next links appear automatically when there is more than one page.
[{ConfigAccessor key='ngdpbase.*' pageSize='10'}] renders as:
ngdpbase.*
| Key | Value |
|---|---|
ngdpbase.access-control.business-hours.days |
monday,tuesday,wednesday,thursday,friday |
ngdpbase.access-control.business-hours.enabled |
false |
ngdpbase.access-control.business-hours.end |
17:00 |
ngdpbase.access-control.business-hours.start |
09:00 |
ngdpbase.access-control.context-aware.enabled |
true |
ngdpbase.access-control.context-aware.time-zone |
UTC |
ngdpbase.access-control.custom-schedules.enabled |
false |
ngdpbase.access-control.custom-schedules.schedules |
./config/schedules.json |
ngdpbase.access-control.holidays.calendar |
./config/holidays.json |
ngdpbase.access-control.holidays.enabled |
false |
Types
The type parameter selects a named display mode. Valid values:
| Type | Description |
|---|---|
roles | All configured roles with display name, description, and type |
permissions | Role × permission matrix showing which roles have which permissions |
policy-summary | Alias for permissions |
permissionsList | All permissions grouped by target with name, icon, and description |
actions | All unique actions defined in ACL policies |
policies | ACL policies sorted by priority |
authMethods | Authentication providers (sensitive fields masked for non-admins) |
features | Feature flags grouped by feature name |
user-summary | Current user's login status, roles, and permissions |
userKeywords | User-defined keywords for content tagging |
systemKeywords | System-defined controlled vocabulary keywords |
systemCategories | System categories that determine page storage location |
manager | Configuration for a named manager (requires manager=) |
feature | Configuration for a named feature (requires feature=) |
Type Examples
Roles
[{ConfigAccessor type='roles'}] renders as:
Available Roles
System and user-defined roles| Role Name | Display Name | Description | Type | Icon |
|---|---|---|---|---|
admin |
Administrator | Full system access to all features | System | |
anonymous |
Anonymous | Public access without authentication | System | |
contributor |
Contributor | Can create and edit pages | System | |
editor |
Editor | Can create, edit, delete, and rename pages | System | |
member |
Member | Community member — same read access as reader, placeholder for community-specific permissions | System | |
reader |
Reader | Read-only access to content | System | |
user-admin |
User Administrator | Can manage users — create, edit, deactivate, delete | System |
Permissions matrix (role × permission)
[{ConfigAccessor type='permissions'}] renders as:
Security Policy Summary
Permissions matrix showing which roles have which permissions| Permission | Administrator | User Administrator | Editor | Contributor | Reader | Member | Anonymous |
|---|---|---|---|---|---|---|---|
page-read
View pages |
|||||||
page-edit
Edit pages |
|||||||
page-create
Create new pages |
|||||||
page-delete
Delete pages |
|||||||
page-rename
Rename pages |
|||||||
page-export
Export pages |
|||||||
asset-read
View assets (attachments) |
|||||||
asset-upload
Upload assets |
|||||||
asset-delete
Delete assets |
|||||||
search-page
Search pages |
|||||||
search-user
Search users |
|||||||
user-read
View user list and profiles |
|||||||
user-edit
Edit user accounts |
|||||||
user-create
Create user accounts |
|||||||
user-delete
Delete user accounts |
|||||||
admin-system
System administration |
|||||||
admin-roles
Role management |
Permissions list (all permissions with descriptions)
[{ConfigAccessor type='permissionsList'}] renders as:
Admin Permissions
| Permission | Name | Icon | Description |
|---|---|---|---|
admin-system |
admin-system | System administration | |
admin-roles |
admin-roles | Role management |
Asset Permissions
| Permission | Name | Icon | Description |
|---|---|---|---|
asset-read |
asset-read | View assets (attachments) | |
asset-upload |
asset-upload | Upload assets | |
asset-delete |
asset-delete | Delete assets |
Page Permissions
| Permission | Name | Icon | Description |
|---|---|---|---|
page-read |
page-read | View pages | |
page-edit |
page-edit | Edit pages | |
page-create |
page-create | Create new pages | |
page-delete |
page-delete | Delete pages | |
page-rename |
page-rename | Rename pages | |
page-export |
page-export | Export pages |
Search Permissions
| Permission | Name | Icon | Description |
|---|---|---|---|
search-page |
search-page | Search pages | |
search-user |
search-user | Search users |
User Permissions
| Permission | Name | Icon | Description |
|---|---|---|---|
user-read |
user-read | View user list and profiles | |
user-edit |
user-edit | Edit user accounts | |
user-create |
user-create | Create user accounts | |
user-delete |
user-delete | Delete user accounts |
Total: 17 permissions in 5 groups
Actions (from ACL policies)
[{ConfigAccessor type='actions'}] renders as:
Available Actions (Permissions)
All unique actions defined in access control policies| Category | Actions |
|---|---|
* |
*
|
admin-roles |
admin-roles
|
admin-system |
admin-system
|
asset-delete |
asset-delete
|
asset-read |
asset-read
|
asset-upload |
asset-upload
|
page-create |
page-create
|
page-delete |
page-delete
|
page-edit |
page-edit
|
page-export |
page-export
|
page-read |
page-read
|
page-rename |
page-rename
|
search-page |
search-page
|
search-user |
search-user
|
user-create |
user-create
|
user-delete |
user-delete
|
user-edit |
user-edit
|
user-read |
user-read
|
[{ConfigAccessor type='actions' valueonly='true' before='* ' after='\n'}] renders as:
* *
* admin-roles
* admin-system
* asset-delete
* asset-read
* asset-upload
* page-create
* page-delete
* page-edit
* page-export
* page-read
* page-rename
* search-page
* search-user
* user-create
* user-delete
* user-edit
* user-read
ACL Policies
[{ConfigAccessor type='policies'}] renders as:
Access Policies
Sorted by priority (highest first)| Name | Priority | Effect | Subjects | Resources | Actions |
|---|---|---|---|---|---|
| Administrator Full Access Full system access for administrators - all page and admin permissions |
100 | allow | admin | * |
page-readpage-editpage-createpage-deletepage-renamepage-exportasset-readasset-uploadasset-deletesearch-pagesearch-useruser-readuser-edituser-createuser-deleteadmin-rolesadmin-system |
| User Administrator Permissions Can manage users — create, edit, deactivate, delete |
95 | allow | user-admin | * |
user-readuser-edituser-createuser-deletesearch-user |
| Deny Anonymous System Pages Block anonymous access to system and admin category pages |
90 | deny | anonymous | category category |
* |
| Editor Permissions Can create, edit, delete, and rename pages plus manage assets |
80 | allow | editor | * |
page-readpage-editpage-createpage-deletepage-renamepage-exportasset-readasset-uploadasset-deletesearch-page |
| Contributor Permissions Can create and edit pages, upload assets (no delete/rename) |
70 | allow | contributor | * |
page-readpage-editpage-createpage-exportasset-readasset-uploadsearch-page |
| Reader Permissions Read-only access - can view pages and assets, search, and export |
60 | allow | reader | * |
page-readpage-exportasset-readsearch-page |
| Member Permissions Community member read-only access |
55 | allow | member | * |
page-readasset-readsearch-page |
| Anonymous Read Access Anonymous users can only read pages |
50 | allow | anonymous | * |
page-read |
| Default View Access for All Fallback - all authenticated users can at minimum view pages |
1 | allow | All | * |
page-read |
Authentication Methods
[{ConfigAccessor type='authMethods'}] renders as:
application-aud | — |
default-role | occupant |
group-map | {} |
team-domain | — |
auto-provision | true |
callback-url | — |
client-id | — |
client-secret | [not set] |
default-roles | ["occupant"] |
deny-redirect | /login?error=Access+denied |
hd | — |
ttl-minutes | 15 |
default-external | false |
required-factors | ["password"] |
Features
[{ConfigAccessor type='features'}] renders as:
Features
html | true |
odt | false |
pdf | false |
allowed-types | image/jpeg,image/png,image/gif,image/webp |
default-alt | Uploaded image |
default-class | wiki-image |
max-size | 5MB |
upload-dir | ./public/images |
endpoint | http://localhost:11434 |
model | llama2 |
allow-admins | true |
estimated-duration | null |
message | System is currently under maintenance. Please try again later. |
Current User Summary
[{ConfigAccessor type='user-summary'}] renders as:
Current User Summary
Your roles and permissionsLogin Status
User Information
| Username: | Anonymous |
| Display Name: | Anonymous User |
Your Roles
No roles assigned
Your Permissions
No permissions assigned (no roles with permissions)
User Keywords
[{ConfigAccessor type='userKeywords'}] renders as:
User Keywords
User-defined keywords for content tagging and organization| Label | Description | Category | Enabled | Restrict Editing | Allowed Roles |
|---|---|---|---|---|---|
anthropology |
Human culture and society content | subject | Yes | No | - |
default |
Default keyword with no special restrictions | general | Yes | No | - |
draft |
Work in progress content | status | Yes | No | - |
economics |
Economic and financial content | subject | Yes | No | - |
geology |
Geological and earth science content | subject | Yes | No | - |
medicine |
Medical and healthcare-related content | subject | Yes | No | - |
meteorology |
Weather and atmospheric science content | subject | Yes | No | - |
oceanography |
Ocean and marine science content | subject | Yes | No | - |
political-science |
Political science and governance content | subject | Yes | No | - |
psychology |
Psychological and behavioral science content | subject | Yes | No | - |
published |
Finalized and approved content | status | Yes | No | - |
review |
Content under review | status | Yes | No | - |
sociology |
Social science and society-related content | subject | Yes | No | - |
[{ConfigAccessor type='userKeywords' enabled='true' valueonly='true' before='* ' after='\n'}] renders as:
* default
* draft
* review
* published
* medicine
* geology
* meteorology
* oceanography
* psychology
* sociology
* anthropology
* economics
* political-science
System Keywords
[{ConfigAccessor type='systemKeywords'}] renders as:
System Keywords
System-defined keywords for controlled vocabulary| Label | Description | Category | Enabled | Default | Schema.org |
|---|---|---|---|---|---|
anthropology |
Human culture and society content | subject | Yes | No | - |
draft |
Work in progress content | workflow-status | Yes | No | - |
economics |
Economic and financial content | subject | Yes | No | - |
general |
General-purpose keyword for standard wiki content | content-type | Yes | Yes | - |
geology |
Geological and earth science content | subject | Yes | No | - |
medicine |
Medical and healthcare-related content | subject | Yes | No | - |
meteorology |
Weather and atmospheric science content | subject | Yes | No | - |
oceanography |
Ocean and marine science content | subject | Yes | No | - |
political-science |
Political science and governance content | subject | Yes | No | - |
psychology |
Psychological and behavioral science content | subject | Yes | No | - |
published |
Finalized and approved content | workflow-status | Yes | No | - |
review |
Content under review | workflow-status | Yes | No | - |
sociology |
Social science and society-related content | subject | Yes | No | - |
System Categories
[{ConfigAccessor type='systemCategories'}] renders as:
System Categories
System categories that determine page storage location| Label | Description | Storage Location | Enabled | Default |
|---|---|---|---|---|
addon |
Pages seeded by an installed add-on | pages | Yes | No |
developer |
Developer documentation and technical note Only in GitHub | pages | Yes | No |
documentation |
End-User documentation | required-pages | Yes | No |
general |
General User pages | pages | Yes | Yes |
journal |
Personal journal entries — schema.org BlogPosting at JSON-LD render time (#791) | pages | Yes | No |
system |
System configuration and infrastructure pages | required-pages | Yes | No |
user-profile |
User profile pages | pages | Yes | No |
[{ConfigAccessor type='systemCategories' storageLocation='required'}] renders as:
System Categories (storageLocation=required)
System categories that determine page storage location| Label | Description | Storage Location | Enabled | Default |
|---|---|---|---|---|
documentation |
End-User documentation | required-pages | Yes | No |
system |
System configuration and infrastructure pages | required-pages | Yes | No |
Manager config
[{ConfigAccessor type='manager' manager='PageManager'}] renders as:
PageManager Configuration
| Property | Value |
|---|---|
enabled |
true |
Feature config
[{ConfigAccessor type='feature' feature='search'}] renders as:
search Feature Configuration
| Property | Value |
|---|---|
enabled |
false |
Notes
type='authMethods'— sensitive fields (client secret, tokens) are masked for non-admin users.- Plugin name is case-insensitive:
[{configaccessor}]and[{ConfigAccessor}]are equivalent. captiononly applies to singlekeylookups — ignored on wildcards andtypeinvocations.noheaderapplies to both single and wildcardkeylookups.pageSizeonly applies to wildcardkeylookups — ignored on single keys andtypeinvocations.- Pages that expose sensitive configuration should be restricted to admin or editor roles.
No comments yet.