You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Repeat the same for [ui.content.example](https://central.sonatype.com/artifact/dev.vml.es/acm.ui.content.example) package if you want to install demonstrative ACM scripts to get you started quickly.
157
163
158
-
3. Consider refining the ACL settings
159
-
160
-
The default settings are defined in the [repo init OSGi config](https://github.com/wttech/acm/blob/main/ui.config/src/main/content/jcr_root/apps/acm-config/osgiconfig/config/org.apache.sling.jcr.repoinit.RepositoryInitializer~acmcore.config), which effectively restrict access to the tool and script execution to administrators only - a recommended practice for production environments.
161
-
If you require further customization, you can create your own repo init OSGi config to override or extend the default configuration.
162
-
163
-
For example:
164
-
```ini
165
-
service.ranking=I"100"
166
-
scripts=["
167
-
set ACL for everyone
168
-
deny jcr:read on /apps/acm
169
-
deny jcr:read on /apps/cq/core/content/nav/tools/acm
170
-
end
171
-
172
-
create group acm-users
173
-
set ACL for acm-users
174
-
allow jcr:read on /apps/acm
175
-
allow jcr:read on /apps/cq/core/content/nav/tools/acm
176
-
end
177
-
"]
178
-
```
164
+
### Tools Access Configuration
165
+
166
+
The default settings are defined in the [repo init OSGi config](https://github.com/wttech/acm/blob/main/ui.config/src/main/content/jcr_root/apps/acm-config/osgiconfig/config/org.apache.sling.jcr.repoinit.RepositoryInitializer~acmcore.config), which effectively restrict access to the tool and script execution to administrators only - a recommended practice for production environments.
167
+
168
+
If you require further customization, you can create your own repo init OSGi config to override or extend the default configuration.
169
+
170
+
#### Feature Permissions
171
+
172
+
ACM supports fine-grained permission control through individual features. This allows you to grant specific capabilities to different user groups without providing full access to ACM tool. For a complete list of available features, see the [ACM features directory](https://github.com/wttech/acm/tree/main/ui.apps/src/main/content/jcr_root/apps/acm/feature).
173
+
174
+
**Example: Create groups for full and limited access:**
175
+
176
+
```ini
177
+
service.ranking=I"100"
178
+
scripts=["
179
+
set ACL for everyone
180
+
deny jcr:read on /apps/cq/core/content/nav/tools/acm
181
+
deny jcr:read on /apps/acm
182
+
end
183
+
184
+
create group acm-admins
185
+
set ACL for acm-admins
186
+
allow jcr:read on /apps/cq/core/content/nav/tools/acm
187
+
allow jcr:read on /apps/acm
188
+
end
189
+
190
+
create group acm-script-users
191
+
set ACL for acm-script-users
192
+
allow jcr:read on /apps/cq/core/content/nav/tools/acm
193
+
allow jcr:read on /apps/acm/gui
194
+
allow jcr:read on /apps/acm/api
195
+
196
+
allow jcr:read on /apps/acm/feature/script/list
197
+
allow jcr:read on /apps/acm/feature/script/view
198
+
allow jcr:read on /apps/acm/feature/execution/view
199
+
200
+
allow jcr:read on /conf/acm/settings/script
201
+
end
202
+
"]
203
+
```
204
+
205
+
Later on when AEM is running, just assign users to the created groups (`acm-admins` or `acm-script-users`) to grant them the corresponding access.
206
+
207
+
#### API Permissions
208
+
209
+
Access to ACM's REST API endpoints is controlled through nodes under `/apps/acm/api`. For a complete list of available endpoints, see the [ACM API directory](https://github.com/wttech/acm/tree/main/ui.apps/src/main/content/jcr_root/apps/acm/api).
210
+
211
+
**Important:** Code execution requires authorization at three levels: API endpoint, feature, and e.g. script path. Example:
0 commit comments