Last modified by Agnease on 2026/05/26 15:27

From version 1.1
edited by Agnease
on 2026/05/26 07:41
Change comment: There is no comment for this version
To version 1.8
edited by Agnease
on 2026/05/26 09:29
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -xwiki-security-review
1 +What an XWiki Security Review Should Actually Include
Content
... ... @@ -1,0 +1,337 @@
1 +{{velocity}}
2 +#set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
3 +{{html clean="false"}}
4 +
5 + <section class="resource-header" aria-labelledby="hero-title">
6 + <div class="container">
7 + <div class="text-center">
8 + <div class="hero-kicker">
9 + <i class="fa fa-shield" aria-hidden="true"></i>
10 + XWiki security review
11 + </div>
12 + </div>
13 +
14 + <h1 id="hero-title">What an XWiki security review should actually include</h1>
15 +
16 + <p class="resource-summary">
17 + A working XWiki instance is not automatically a secure one. A proper review should look at versions,
18 + access rights, authentication, extensions, custom code, infrastructure and operational practices.
19 + </p>
20 + </div>
21 + </section>
22 +
23 + <section class="resource-page">
24 + <div class="container">
25 + <div class="resource-layout">
26 +
27 + <aside class="resource-sidebar" aria-label="Page summary">
28 + <h4>In this guide</h4>
29 + <ul>
30 + <li><a href="#why-it-matters">Why it matters</a></li>
31 + <li><a href="#what-to-review">What to review</a></li>
32 + <li><a href="#security-checklist">Security checklist</a></li>
33 + <li><a href="#review-output">What the review should produce</a></li>
34 + <li><a href="#when-to-review">When to run a review</a></li>
35 + <li><a href="#security-review-faq">FAQ</a></li>
36 + </ul>
37 + </aside>
38 +
39 + <article class="resource-content">
40 +
41 + <p>
42 + Many XWiki instances continue to work well from a user perspective while slowly accumulating security
43 + and governance risks. Users can still log in, search, edit pages and access documents, but that does not
44 + always mean the instance is properly secured or easy to maintain.
45 + </p>
46 +
47 + <p>
48 + Security risks are often hidden in less visible areas: outdated versions, inherited permissions,
49 + forgotten administrator accounts, overly powerful rights, old extensions, undocumented scripts,
50 + weak fallback access or backup assumptions that were never tested.
51 + </p>
52 +
53 + <div class="resource-note">
54 + <p>
55 + <strong>In practice:</strong> an XWiki security review should evaluate the XWiki version,
56 + access rights, authentication setup, installed extensions, custom code, infrastructure,
57 + backups, restore expectations and the operational practices used to maintain the instance.
58 + </p>
59 + </div>
60 +
61 + <p>
62 + An XWiki security review is a structured assessment of the wiki platform, its configuration,
63 + access model, authentication mechanisms, extensions, customizations and operational setup.
64 + The goal is to identify risks, maintenance weaknesses and upgrade blockers before they affect
65 + users or business-critical content.
66 + </p>
67 +
68 + <div class="resource-note">
69 + <p>
70 + <strong>The main point:</strong> an XWiki security review should not only check whether the application
71 + is online. It should evaluate the platform, the access model and the operational practices around it.
72 + </p>
73 + </div>
74 +
75 + <h2 id="why-it-matters">Why an XWiki security review matters</h2>
76 +
77 + <p>
78 + XWiki is often used as an internal knowledge base, intranet, documentation platform or controlled
79 + document system. In these cases, the platform may contain sensitive procedures, internal decisions,
80 + customer information, technical documentation, compliance records or business-critical workflows.
81 + </p>
82 +
83 + <p>
84 + The more important the content becomes, the more important it is to understand who can access it, who can
85 + change it, which customizations influence it and how safely the instance can be upgraded or restored.
86 + </p>
87 +
88 + <p>
89 + A security review helps identify risks before they become incidents, upgrade blockers or maintenance
90 + surprises. It also gives administrators a clearer view of the current state of the instance.
91 + </p>
92 +
93 + <h2 id="what-to-review">What should be reviewed</h2>
94 +
95 + <h3>1. Version and upgrade status</h3>
96 + <p>
97 + The current XWiki version should be reviewed together with the target upgrade path, installed extensions
98 + and infrastructure dependencies. An outdated instance is not only a maintenance concern. It can also mean
99 + that security fixes, compatibility improvements and platform hardening are missing.
100 + </p>
101 +
102 + <p>
103 + The review should also check whether upgrades are performed regularly or only when something breaks.
104 + A repeatable upgrade process is part of the security posture of a long-running XWiki instance.
105 + </p>
106 +
107 + <p>
108 + For more details on upgrade planning, see
109 + <a href="$xwiki.getURL('resources.why-upgrade-xwiki')">why regular XWiki upgrades matter</a>.
110 + </p>
111 +
112 + <h3>2. Access rights and permission model</h3>
113 + <p>
114 + XWiki has a powerful access-rights system, but this flexibility needs a clear governance model. A review
115 + should check who has administration rights, who has script or programming rights, whether rights are
116 + assigned through groups, and whether page-level exceptions are still understandable.
117 + </p>
118 +
119 + <p>
120 + It is also important to review inherited rights, public areas, restricted spaces, old groups, inactive
121 + users and sensitive pages. Many permission problems do not come from one obvious mistake, but from years
122 + of small exceptions that nobody reviewed later.
123 + </p>
124 +
125 + <h3>3. Authentication and identity management</h3>
126 + <p>
127 + Authentication should be reviewed beyond the simple question of whether users can log in. LDAP, Active
128 + Directory, OIDC, SAML, SSO and MFA setups all need to be checked together with group synchronization,
129 + fallback login options, local administrator accounts and recovery procedures.
130 + </p>
131 +
132 + <p>
133 + SSO is useful, but it does not automatically guarantee a clean access model. Authentication confirms who
134 + the user is. Authorization still depends on how XWiki groups and rights are configured.
135 + </p>
136 +
137 + <h3>4. Extensions and custom code</h3>
138 + <p>
139 + Installed extensions, custom applications, Velocity scripts, Groovy scripts, macros, sheets, templates,
140 + UI extensions and Java components are all part of the security and maintenance surface of the instance.
141 + </p>
142 +
143 + <p>
144 + A review should identify what is installed, what is customized, what is still used, what is documented and
145 + what needs special validation during upgrades. Custom code should be tracked, explained and tested, not
146 + discovered accidentally during an incident or a production upgrade.
147 + </p>
148 +
149 + <p>
150 + Customizations should also be reviewed from a maintenance perspective. See
151 + <a href="$xwiki.getURL('resources.xwiki-custom-development')">how to keep XWiki custom development maintainable across upgrades</a>.
152 + </p>
153 +
154 + <h3>5. Configuration, infrastructure and operations</h3>
155 + <p>
156 + The review should also cover the environment around XWiki: HTTPS and reverse proxy configuration, database
157 + access, filesystem and attachment storage, mail configuration, PDF export services, logs, monitoring,
158 + server access and separation between production and staging.
159 + </p>
160 +
161 + <p>
162 + Backups should be reviewed together with restore expectations. A backup strategy is incomplete if nobody
163 + knows what is included, how long recovery would take or whether the restore process has ever been tested.
164 + </p>
165 +
166 + <h2 id="security-checklist">XWiki security review checklist</h2>
167 +
168 + <p>
169 + A practical XWiki security review should cover both application-level and operational risks.
170 + The following checklist can be used as a starting point when reviewing a production instance.
171 + </p>
172 +
173 + <ul class="resource-checklist">
174 + <li>Check the current XWiki version, target version and upgrade path.</li>
175 + <li>Review installed extensions, outdated components and unsupported customizations.</li>
176 + <li>Audit administrator, script and programming rights.</li>
177 + <li>Review groups, inherited permissions and page-level exceptions.</li>
178 + <li>Validate authentication, SSO, MFA, fallback access and administrator recovery options.</li>
179 + <li>Identify custom scripts, templates, macros, UI extensions and Java components.</li>
180 + <li>Review public, internal and restricted areas.</li>
181 + <li>Check infrastructure, HTTPS, reverse proxy, database, filesystem and mail configuration.</li>
182 + <li>Confirm backup coverage, restore expectations and rollback procedures.</li>
183 + <li>Document findings and prioritize remediation actions.</li>
184 + </ul>
185 +
186 + <h2 id="review-output">What the review should produce</h2>
187 +
188 + <p>
189 + A useful security review should not only produce a list of detected problems. It should produce a practical action
190 + plan. Each finding should explain the risk, the affected area, the recommended action and the priority.
191 + </p>
192 +
193 + <p>
194 + Some findings may require immediate action, such as exposed administration rights or unsafe fallback
195 + access. Others may become planned improvements, such as cleaning old groups, documenting custom code,
196 + reviewing extensions or preparing the next upgrade.
197 + </p>
198 +
199 + <div class="resource-note">
200 + <p>
201 + <strong>A useful review should separate findings by priority:</strong> immediate risks,
202 + planned remediation, maintenance improvements and documentation gaps. This makes the result
203 + easier to act on instead of producing a generic list of observations.
204 + </p>
205 + </div>
206 +
207 + <p>
208 + The best outcome is a clearer, safer and more maintainable XWiki instance: one where administrators
209 + understand the access model, critical features are documented and future upgrades can be planned with
210 + fewer surprises.
211 + </p>
212 +
213 + <h2 id="when-to-review">When should an XWiki security review be done?</h2>
214 +
215 + <p>
216 + A review is especially useful before a major upgrade, after years of organic growth, after an authentication
217 + change, before exposing the instance more broadly, after a migration, or when the wiki becomes more
218 + business-critical than it was when first installed.
219 + </p>
220 +
221 + <p>
222 + It is also useful when administration responsibilities change. A new team should not have to guess how
223 + permissions, extensions, customizations and recovery procedures were configured years earlier.
224 + </p>
225 +
226 + <h2 id="security-review-faq">XWiki security review FAQ</h2>
227 +
228 + <h3>What should an XWiki security review include?</h3>
229 + <p>
230 + An XWiki security review should include the installed XWiki version, upgrade path,
231 + access rights, groups, authentication setup, installed extensions, custom code,
232 + infrastructure, backups, restore expectations and operational procedures.
233 + </p>
234 +
235 + <h3>Is an updated XWiki instance automatically secure?</h3>
236 + <p>
237 + No. Updating XWiki is important, but security also depends on permissions,
238 + authentication, extensions, custom code, infrastructure configuration, backups
239 + and how the instance is maintained.
240 + </p>
241 +
242 + <h3>Does SSO solve XWiki access control?</h3>
243 + <p>
244 + No. SSO helps authenticate users, but access control still depends on XWiki groups,
245 + inherited permissions, page-level rights and administrative privileges.
246 + </p>
247 +
248 + <h3>Why should custom code be reviewed?</h3>
249 + <p>
250 + Custom scripts, templates, macros, UI extensions and Java components can affect
251 + permissions, workflows, rendering, integrations and upgrade behavior. They should
252 + be identified, documented and tested.
253 + </p>
254 +
255 + <h3>When should an XWiki security review be done?</h3>
256 + <p>
257 + A review is useful before a major upgrade, after years of organic growth, after
258 + authentication changes, before exposing the wiki more broadly, or when the instance
259 + becomes business-critical.
260 + </p>
261 +
262 + <div class="resource-note">
263 + <p>
264 + Related resources:
265 + <a href="$xwiki.getURL('resources.why-upgrade-xwiki')">why regular XWiki upgrades matter</a>
266 + and
267 + <a href="$xwiki.getURL('resources.xwiki-custom-development')">how to keep XWiki custom development maintainable across upgrades</a>.
268 + </p>
269 + </div>
270 +
271 + <div class="resource-cta">
272 + <h3>Need an XWiki security review?</h3>
273 + <p>
274 + If your XWiki instance has grown over time, contains sensitive content, uses custom code or depends on
275 + SSO, extensions and business-critical workflows, a structured review can help identify risks and define
276 + the safest next steps.
277 + </p>
278 + <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Request a security review</a>
279 + </div>
280 +
281 + </article>
282 +
283 + </div>
284 + </div>
285 + </section>
286 +
287 + <script type="application/ld+json">
288 + {
289 + "@context": "https://schema.org",
290 + "@type": "FAQPage",
291 + "mainEntity": [
292 + {
293 + "@type": "Question",
294 + "name": "What should an XWiki security review include?",
295 + "acceptedAnswer": {
296 + "@type": "Answer",
297 + "text": "An XWiki security review should include the installed XWiki version, upgrade path, access rights, groups, authentication setup, installed extensions, custom code, infrastructure, backups, restore expectations and operational procedures."
298 + }
299 + },
300 + {
301 + "@type": "Question",
302 + "name": "Is an updated XWiki instance automatically secure?",
303 + "acceptedAnswer": {
304 + "@type": "Answer",
305 + "text": "No. Updating XWiki is important, but security also depends on permissions, authentication, extensions, custom code, infrastructure configuration, backups and how the instance is maintained."
306 + }
307 + },
308 + {
309 + "@type": "Question",
310 + "name": "Does SSO solve XWiki access control?",
311 + "acceptedAnswer": {
312 + "@type": "Answer",
313 + "text": "No. SSO helps authenticate users, but access control still depends on XWiki groups, inherited permissions, page-level rights and administrative privileges."
314 + }
315 + },
316 + {
317 + "@type": "Question",
318 + "name": "Why should custom code be reviewed in XWiki?",
319 + "acceptedAnswer": {
320 + "@type": "Answer",
321 + "text": "Custom scripts, templates, macros, UI extensions and Java components can affect permissions, workflows, rendering, integrations and upgrade behavior. They should be identified, documented and tested."
322 + }
323 + },
324 + {
325 + "@type": "Question",
326 + "name": "When should an XWiki security review be done?",
327 + "acceptedAnswer": {
328 + "@type": "Answer",
329 + "text": "A review is useful before a major upgrade, after years of organic growth, after authentication changes, before exposing the wiki more broadly, or when the instance becomes business-critical."
330 + }
331 + }
332 + ]
333 + }
334 + </script>
335 +
336 +{{/html}}
337 +{{/velocity}}
Agnease.Code.SEODetailsClass[0]
metaDescription
... ... @@ -1,0 +1,1 @@
1 +Learn what an XWiki security review should include: version status, access rights, authentication, extensions, custom code, infrastructure, backups and operational practices.
metaTitle
... ... @@ -1,0 +1,1 @@
1 +What an XWiki Security Review Should Actually Include | Agnease