Changes for page XWiki Two-Factor Authentication
Last modified by Agnease on 2026/06/24 16:39
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,9 +1,83 @@ 1 1 {{velocity}} 2 2 #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome')) 3 3 #set ($discard = $xwiki.ssx.use('products.WebHome')) 4 + 5 +#set ($mainCapabilityItems = [{ 6 + 'title': 'Second verification step', 7 + 'icon': 'key', 8 + 'content': 'Add an additional verification screen after the normal XWiki username and password login.' 9 +},{ 10 + 'title': 'Authenticator app codes', 11 + 'icon': 'mobile', 12 + 'content': 'Let users verify access with time-based TOTP codes generated by authenticator applications.' 13 +},{ 14 + 'title': 'Email verification codes', 15 + 'icon': 'envelope-o', 16 + 'content': 'Send one-time verification codes by email when this method is enabled or combined with app codes.' 17 +}]) 18 + 19 +#set ($adminExperienceItems = [{ 20 + 'title': 'MFA policy', 21 + 'icon': 'cog', 22 + 'content': 'Make MFA optional or required for all users from the XWiki Administration section.' 23 +},{ 24 + 'title': 'Recovery and trusted devices', 25 + 'icon': 'shield', 26 + 'content': 'Configure recovery-code count and trusted-device duration according to the organization security policy.' 27 +},{ 28 + 'title': 'Administration overview', 29 + 'icon': 'table', 30 + 'content': 'Review MFA adoption across users with summary indicators and a filterable Live Data table.' 31 +}]) 32 + 33 +#set ($userExperienceItems = [{ 34 + 'title': 'Self-service setup', 35 + 'icon': 'qrcode', 36 + 'content': 'Users configure MFA from their profile by scanning a QR code or entering the setup key manually.' 37 +},{ 38 + 'title': 'Familiar login flow', 39 + 'icon': 'sign-in', 40 + 'content': 'After the normal login, users enter the configured verification code before accessing XWiki.' 41 +},{ 42 + 'title': 'Profile management', 43 + 'icon': 'user', 44 + 'content': 'Users can review MFA status, manage recovery codes and remove trusted devices from their profile.' 45 +}]) 46 + 47 +#set ($recoveryItems = [{ 48 + 'title': 'Recovery codes', 49 + 'icon': 'life-ring', 50 + 'content': 'Recovery codes provide backup access when a user loses access to the authenticator application.' 51 +},{ 52 + 'title': 'Trusted devices', 53 + 'icon': 'desktop', 54 + 'content': 'Trusted browsers or devices can skip repeated MFA prompts for a configured period.' 55 +},{ 56 + 'title': 'Administrator reset', 57 + 'icon': 'refresh', 58 + 'content': 'Administrators can reset a user MFA setup when the user needs to restart the configuration process.' 59 +}]) 60 + 61 +#set ($rolloutItems = [{ 62 + 'title': 'Start with a pilot group', 63 + 'content': 'Test the extension with administrators or a small user group before enabling it widely.' 64 +},{ 65 + 'title': 'Define the MFA policy', 66 + 'content': 'Decide whether MFA should be optional, required for administrators, or required for all users.' 67 +},{ 68 + 'title': 'Configure recovery options', 69 + 'content': 'Choose whether recovery codes and trusted devices should be enabled.' 70 +},{ 71 + 'title': 'Inform users', 72 + 'content': 'Explain how users configure MFA, save recovery codes and manage trusted devices.' 73 +},{ 74 + 'title': 'Monitor adoption', 75 + 'content': 'Use the administration overview to identify users who still need to configure MFA.' 76 +}]) 77 + 4 4 {{html clean="false"}} 5 5 6 -<section class="hero hero-centered" aria-labelledby=" hero-title">80 +<section class="hero hero-centered" aria-labelledby="product-title"> 7 7 <div class="container hero-inner"> 8 8 <div class="hero-kicker"> 9 9 <i class="fa fa-lock" aria-hidden="true"></i> ... ... @@ -31,20 +31,16 @@ 31 31 <h2 id="overview-title">Two-factor authentication built into XWiki</h2> 32 32 33 33 <p> 34 - XWiki Two-Factor Authentication adds anadditional verificationscreen afterthe standard35 - XWiki username and passwordlogin.Itimprovesaccount protectionwithout replacing the36 - familiarXWikiauthenticationflow.108 + XWiki Two-Factor Authentication adds MFA/2FA support to the standard XWiki login flow. 109 + Users continue to sign in with their normal username and password, then confirm access with 110 + an additional verification method. 37 37 </p> 38 38 39 39 <p> 40 - Users can verify access with TOTP codes generated by an authenticator app, with one-time 41 - codes delivered by email, or with a combined setup requiring both methods. 114 + The extension supports authenticator app codes, email-delivered verification codes, or a combined 115 + setup where both methods are required. It improves account protection without replacing the familiar 116 + XWiki authentication experience. 42 42 </p> 43 - 44 - <p> 45 - Trusted browsers or devices can be remembered for a configured period, reducing repeated 46 - verification prompts on known clients while still requiring verification from new or untrusted ones. 47 - </p> 48 48 </article> 49 49 50 50 <aside class="product-info-card" aria-labelledby="quick-facts-title"> ... ... @@ -51,11 +51,12 @@ 51 51 <h3 id="quick-facts-title">Quick facts</h3> 52 52 <ul> 53 53 <li>Works with the standard XWiki login flow</li> 54 - <li>Supports authenticator app codes using TOTP</li> 55 - <li>Supports email-delivered one-time verification codes</li> 56 - <li>Can require app code and email code together</li> 124 + <li>Supports TOTP authenticator applications</li> 125 + <li>Supports email-delivered one-time codes</li> 126 + <li>Can require app and email verification together</li> 127 + <li>Includes recovery codes for backup access</li> 57 57 <li>Can remember trusted browsers or devices</li> 58 - <li>Includes administration and user setupcontrols</li>129 + <li>Includes administration and user controls</li> 59 59 </ul> 60 60 </aside> 61 61 </div> ... ... @@ -62,9 +62,9 @@ 62 62 </div> 63 63 </section> 64 64 65 -<section aria-labelledby=" features-title">136 +<section aria-labelledby="capabilities-title"> 66 66 <div class="container"> 67 - <h2 id=" features-title">Main capabilities</h2>138 + <h2 id="capabilities-title">Main capabilities</h2> 68 68 69 69 <p class="section-intro"> 70 70 A focused set of MFA/2FA features for stronger XWiki account protection without changing the standard login experience. ... ... @@ -71,82 +71,209 @@ 71 71 </p> 72 72 73 73 <div class="product-feature-grid"> 74 - <article class="product-feature"> 75 - <div class="card-heading"> 76 - <div class="feature-icon"> 77 - <i class="fa fa-key" aria-hidden="true"></i> 145 + #foreach ($entry in $mainCapabilityItems) 146 + <article class="product-feature"> 147 + <div class="card-heading"> 148 + <div class="feature-icon"> 149 + <i class="fa fa-$entry.icon" aria-hidden="true"></i> 150 + </div> 151 + <h3>$entry.title</h3> 78 78 </div> 79 - <h3>Second verification step</h3> 80 - </div> 81 81 154 + <p>$entry.content</p> 155 + </article> 156 + #end 157 + </div> 158 + </div> 159 +</section> 160 + 161 +<section class="product-section-muted" aria-labelledby="security-title"> 162 + <div class="container"> 163 + <div class="product-layout"> 164 + <article class="product-summary-card"> 165 + <h2 id="security-title">Useful for XWiki security and access protection</h2> 166 + 82 82 <p> 83 - Afterusernameandpasswordverification,userscompleteanadditionalstepbefore accessing XWiki.84 - Theflowcan requireone verificationmethodorbothapp andemailcodes.168 + Many organizations need multi-factor authentication for internal tools, knowledge bases, 169 + intranets, documentation platforms and systems containing operational or sensitive information. 85 85 </p> 86 - </article> 87 87 88 - <article class="product-feature"> 89 - <div class="card-heading"> 90 - <div class="feature-icon"> 91 - <i class="fa fa-mobile" aria-hidden="true"></i> 92 - </div> 93 - <h3>Authenticator app codes</h3> 94 - </div> 95 - 96 96 <p> 97 - Users can verify access with TOTP codes generated by authenticator applications on mobile or desktop devices. 173 + For XWiki, adding two-factor authentication directly to the standard login flow helps protect 174 + administrator accounts, remote users, private knowledge bases and customer or partner portals. 98 98 </p> 99 99 </article> 100 100 101 - <article class="product-feature"> 102 - <div class="card-heading"> 103 - <div class="feature-icon"> 104 - <i class="fa fa-envelope-o" aria-hidden="true"></i> 178 + <aside class="product-info-card" aria-labelledby="use-cases-title"> 179 + <h3 id="use-cases-title">Typical use cases</h3> 180 + <ul> 181 + <li>Administrator account protection</li> 182 + <li>Internal knowledge base security</li> 183 + <li>Private documentation platforms</li> 184 + <li>Remote user access protection</li> 185 + <li>Customer or partner portals</li> 186 + <li>Security review and NIS 2 readiness initiatives</li> 187 + </ul> 188 + </aside> 189 + </div> 190 + </div> 191 +</section> 192 + 193 +<section aria-labelledby="admin-experience-title"> 194 + <div class="container"> 195 + <h2 id="admin-experience-title">Administrator experience</h2> 196 + 197 + <p class="section-intro"> 198 + Administrators can configure the MFA policy, monitor adoption and reset user MFA setups when needed. 199 + </p> 200 + 201 + <div class="product-feature-grid"> 202 + #foreach ($entry in $adminExperienceItems) 203 + <article class="product-feature"> 204 + <div class="card-heading"> 205 + <div class="feature-icon"> 206 + <i class="fa fa-$entry.icon" aria-hidden="true"></i> 207 + </div> 208 + <h3>$entry.title</h3> 105 105 </div> 106 - <h3>Email verification codes</h3> 107 - </div> 108 108 109 - <p> 110 - Users can receive one-time verification codes by email when an authenticator app is not available or preferred. 111 - </p> 112 - </article> 211 + <p>$entry.content</p> 212 + </article> 213 + #end 113 113 </div> 215 + 216 +{{/html}} 217 + 218 +{{gallery}} 219 +[[image:mfa-admin-configuration.png]] 220 +[[image:mfa-admin-overview.png]] 221 +{{/gallery}} 222 + 223 +{{html clean="false"}} 224 + 225 + <p class="product-gallery-caption"> 226 + Administration screens for configuring MFA and reviewing MFA adoption across users. 227 + </p> 228 + 114 114 </div> 115 115 </section> 116 116 117 -<section class="product-section-muted" aria-labelledby="se curity-title">232 +<section class="product-section-muted" aria-labelledby="user-experience-title"> 118 118 <div class="container"> 234 + <h2 id="user-experience-title">User experience</h2> 235 + 236 + <p class="section-intro"> 237 + Users can configure MFA from their profile and complete the second verification step during login. 238 + </p> 239 + 240 + <div class="product-feature-grid"> 241 + #foreach ($entry in $userExperienceItems) 242 + <article class="product-feature"> 243 + <div class="card-heading"> 244 + <div class="feature-icon"> 245 + <i class="fa fa-$entry.icon" aria-hidden="true"></i> 246 + </div> 247 + <h3>$entry.title</h3> 248 + </div> 249 + 250 + <p>$entry.content</p> 251 + </article> 252 + #end 253 + </div> 254 + 255 + <p class="product-gallery-caption"> 256 + User setup and login verification screens. 257 + </p> 258 + 259 +{{/html}} 260 + 261 +{{gallery}} 262 +[[image:mfa-user-setup-qr.png]] 263 +[[image:mfa-login-verification.png]] 264 +{{/gallery}} 265 + 266 +{{html clean="false"}} 267 + 268 + </div> 269 +</section> 270 + 271 +<section aria-labelledby="recovery-title"> 272 + <div class="container"> 273 + <h2 id="recovery-title">Recovery codes and trusted devices</h2> 274 + 275 + <p class="section-intro"> 276 + Recovery codes and trusted devices help balance stronger access protection with a smoother user experience. 277 + </p> 278 + 279 + <div class="product-feature-grid"> 280 + #foreach ($entry in $recoveryItems) 281 + <article class="product-feature"> 282 + <div class="card-heading"> 283 + <div class="feature-icon"> 284 + <i class="fa fa-$entry.icon" aria-hidden="true"></i> 285 + </div> 286 + <h3>$entry.title</h3> 287 + </div> 288 + 289 + <p>$entry.content</p> 290 + </article> 291 + #end 292 + </div> 293 + 294 + <p class="product-gallery-caption"> 295 + Recovery codes, trusted devices and user profile management. 296 + </p> 297 + 298 +{{/html}} 299 + 300 +{{gallery}} 301 +[[image:mfa-recovery-codes.png]] 302 +[[image:mfa-trusted-devices.png]] 303 +[[image:mfa-user-profile-overview.png]] 304 +[[image:mfa-admin-user-management.png]] 305 +{{/gallery}} 306 + 307 +{{html clean="false"}} 308 + 309 + </div> 310 +</section> 311 + 312 +<section class="product-section-muted" aria-labelledby="rollout-title"> 313 + <div class="container"> 119 119 <div class="product-layout"> 120 120 <article class="product-summary-card"> 121 - <h2 id=" security-title">Usefulfor XWiki securityand NIS 2readiness</h2>316 + <h2 id="rollout-title">Rollout recommendations</h2> 122 122 123 123 <p> 124 - Many organizations need multi-factor authentication for enterprise software, including internal 125 - knowledge bases, intranets, documentation platforms and systems containing operational procedures 126 - or sensitive business information. 319 + For a smooth rollout, start with a small administrator or pilot group before requiring MFA for everyone. 320 + This helps validate the configuration, prepare user communication and reduce support issues. 127 127 </p> 128 128 129 - <p> 130 - For organizations using XWiki, adding two-factor authentication directly to the standard login flow 131 - can help close a practical access-control gap. It can be useful for administrator accounts, remote users, 132 - private knowledge bases and broader security readiness initiatives such as NIS 2 preparation. 133 - </p> 323 + <ol class="process-list"> 324 + #foreach ($entry in $rolloutItems) 325 + <li> 326 + <strong>$entry.title</strong> 327 + $entry.content 328 + </li> 329 + #end 330 + </ol> 331 + </article> 134 134 135 - <p> 136 - This extension is not a complete compliance solution on its own, but it can provide an important 137 - technical control for protecting access to XWiki. 333 + <aside class="product-info-card" aria-labelledby="planning-title"> 334 + <h3 id="planning-title">Useful information before installation</h3> 335 + 336 + <p class="product-card-note"> 337 + These details help evaluate compatibility, rollout scope and configuration options. 138 138 </p> 139 - </article> 140 140 141 - <aside class="product-info-card" aria-labelledby="security-controls-title"> 142 - <h3 id="security-controls-title">Useful for</h3> 143 143 <ul> 144 - <li>XWiki 2FA rollout</li> 145 - <li>XWiki MFA adoption</li> 146 - <li>Administrator account protection</li> 147 - <li>Remote user access protection</li> 148 - <li>Private knowledge base security</li> 149 - <li>NIS 2 readiness initiatives</li> 341 + <li>XWiki version</li> 342 + <li>Single wiki or wiki farm with subwikis</li> 343 + <li>Current authentication setup</li> 344 + <li>Optional or globally required MFA policy</li> 345 + <li>Trusted-device policy</li> 346 + <li>Recovery-code policy</li> 347 + <li>Rollout communication needs</li> 150 150 </ul> 151 151 </aside> 152 152 </div> ... ... @@ -157,10 +157,11 @@ 157 157 <div class="container"> 158 158 <div class="cta-panel"> 159 159 <h2 id="cta-title">Interested in using this extension?</h2> 358 + 160 160 <p> 161 - Send a short message with your XWiki version, authentication setup, and whether you need 162 - authenticator app codes, email verification codes, combined verification, or trusted-device remembering. 360 + Send a short message with your XWiki version, current authentication setup and MFA rollout goal. 163 163 </p> 362 + 164 164 <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Contact Agnease</a> 165 165 </div> 166 166 </div>
- mfa-admin-configuration.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Admin - Size
-
... ... @@ -1,0 +1,1 @@ 1 +123.2 KB - Content