Changes for page XWiki Two-Factor Authentication
Last modified by Agnease on 2026/06/29 13:22
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 12 removed)
- mfa-admin-configuration.png
- mfa-admin-full.png
- mfa-admin-overview.png
- mfa-admin-user-management.png
- mfa-login-verification-code.png
- mfa-login-verification-setup.png
- mfa-recovery-codes-generated.png
- mfa-recovery-codes-not-generated.png
- mfa-trusted-devices.png
- mfa-user-profile-full.png
- mfa-user-profile-overview.png
- mfa-user-setup-qr.png
-
Objects (0 modified, 0 added, 1 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - XWikiTwo-FactorAuthentication1 +xwiki-two-factor-authentication - Content
-
... ... @@ -1,460 +1,31 @@ 1 -{{velocity}} 2 -#set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome')) 3 -#set ($discard = $xwiki.ssx.use('products.WebHome')) 1 +<article class="product-card"> 2 + <div class="product-card-icon"> 3 + <i class="fa fa-lock" aria-hidden="true"></i> 4 + </div> 4 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': 'Recovery and trusted devices', 15 -'icon': 'shield', 16 -'content': 'Provide backup access with recovery codes and reduce repeated prompts on trusted browsers.' 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': 'Configuration options', 25 -'icon': 'sliders', 26 -'content': 'Set the authenticator issuer name, recovery-code count and trusted-device duration.' 27 -},{ 28 -'title': 'Administration overview', 29 -'icon': 'table', 30 -'content': 'Review MFA adoption 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': 'Login verification', 39 -'icon': 'sign-in', 40 -'content': 'After the normal login, users enter the code generated by their authenticator app.' 41 -},{ 42 -'title': 'Trusted browser option', 43 -'icon': 'desktop', 44 -'content': 'Users can trust the current browser for the configured duration after successful verification.' 45 -}]) 46 - 47 -#set ($selfServiceItems = [{ 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 devices can be reviewed and removed from the user profile.' 55 -},{ 56 -'title': 'Profile management', 57 -'icon': 'user', 58 -'content': 'Users can review MFA status, generate recovery codes, manage trusted devices and reset MFA.' 59 -}]) 60 - 61 -#set ($adminSupportItems = [{ 62 -'title': 'User MFA status', 63 -'icon': 'user', 64 -'content': 'Administrators can open a user profile and check the MFA status for that account.' 65 -},{ 66 -'title': 'MFA reset', 67 -'icon': 'refresh', 68 -'content': 'Administrators can reset MFA when a user needs to restart the configuration process.' 69 -},{ 70 -'title': 'Controlled recovery', 71 -'icon': 'unlock-alt', 72 -'content': 'Resetting MFA removes the authenticator setup, recovery codes and trusted devices for that user.' 73 -}]) 74 - 75 -#set ($rolloutItems = [{ 76 -'title': 'Start with a pilot group', 77 -'content': 'Test the extension with administrators or a small user group before enabling it widely.' 78 -},{ 79 -'title': 'Define the MFA policy', 80 -'content': 'Decide whether MFA should be optional at first or required for all users.' 81 -},{ 82 -'title': 'Configure recovery options', 83 -'content': 'Choose the number of recovery codes and whether trusted devices should be allowed.' 84 -},{ 85 -'title': 'Inform users', 86 -'content': 'Explain how users configure MFA, save recovery codes and manage trusted devices.' 87 -},{ 88 -'title': 'Monitor adoption', 89 -'content': 'Use the administration overview to identify users who still need to configure MFA.' 90 -}]) 91 - 92 -{{html clean="false"}} 93 - 94 -<section class="hero hero-centered" aria-labelledby="product-title"> 95 - <div class="container hero-inner"> 96 - <div class="hero-kicker"> 6 + <div class="product-card-body"> 7 + <div class="hero-kicker product-card-kicker"> 97 97 <i class="fa fa-lock" aria-hidden="true"></i> 98 - XWiki2FA and MFA9 + Security extension 99 99 </div> 100 100 101 -``` 102 -<h1 id="product-title">XWiki Two-Factor Authentication</h1> 12 + <h3>XWiki Two-Factor Authentication</h3> 103 103 104 -<p class="lead"> 105 - Protect XWiki logins with a second verification step using authenticator app codes, 106 - recovery codes and trusted devices. 107 -</p> 108 - 109 -<div class="hero-actions"> 110 - <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Ask about this extension</a> 111 - <a class="btn btn-secondary" href="$xwiki.getURL('products.WebHome')">View all products</a> 112 -</div> 113 -``` 114 - 115 - </div> 116 -</section> 117 - 118 -<section aria-labelledby="overview-title"> 119 - <div class="container"> 120 - <div class="product-layout"> 121 - <article class="product-summary-card"> 122 - <h2 id="overview-title">Two-factor authentication built into XWiki</h2> 123 - 124 -``` 125 125 <p> 126 - XWiki Two-Factor Authentication adds MFA support to the standard XWiki login flow. 127 - Users continue to sign in with their normal username and password, then confirm access 128 - with a time-based verification code from an authenticator application. 15 + Add XWiki 2FA/MFA protection to the standard login flow with authenticator app codes, 16 + email verification codes, optional combined verification, and trusted-device remembering. 129 129 </p> 130 130 131 - <p> 132 - The extension is designed for organizations that want stronger access protection for 133 - internal knowledge bases, intranets, documentation platforms, customer portals and other 134 - XWiki-based applications. 135 - </p> 136 - </article> 137 - 138 - <aside class="product-info-card" aria-labelledby="quick-facts-title"> 139 - <h3 id="quick-facts-title">Quick facts</h3> 140 - <ul> 141 - <li>Works with the standard XWiki login flow</li> 142 - <li>Supports TOTP authenticator applications</li> 143 - <li>Can require MFA for all users</li> 144 - <li>Includes one-time recovery codes</li> 145 - <li>Can remember trusted browsers or devices</li> 146 - <li>Includes user self-service controls</li> 147 - <li>Includes an administration overview</li> 19 + <ul class="product-highlights"> 20 + <li>Works with the standard XWiki authentication flow</li> 21 + <li>Supports app codes, email codes, or both</li> 22 + <li>Helps protect administrator and remote-access accounts</li> 148 148 </ul> 149 - </aside> 150 -</div> 151 -``` 152 152 153 - </div> 154 -</section> 155 - 156 -<section aria-labelledby="capabilities-title"> 157 - <div class="container"> 158 - <h2 id="capabilities-title">Main capabilities</h2> 159 - 160 -``` 161 -<p class="section-intro"> 162 - A focused set of MFA features for stronger XWiki account protection without replacing the familiar login experience. 163 -</p> 164 - 165 -<div class="product-feature-grid"> 166 - #foreach ($entry in $mainCapabilityItems) 167 - <article class="product-feature"> 168 - <div class="card-heading"> 169 - <div class="feature-icon"> 170 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 171 - </div> 172 - <h3>$entry.title</h3> 173 - </div> 174 - 175 - <p>$entry.content</p> 176 - </article> 177 - #end 178 -</div> 179 -``` 180 - 181 - </div> 182 -</section> 183 - 184 -<section class="product-section-muted" aria-labelledby="security-title"> 185 - <div class="container"> 186 - <div class="product-layout"> 187 - <article class="product-summary-card"> 188 - <h2 id="security-title">Useful for XWiki security and access protection</h2> 189 - 190 -``` 191 - <p> 192 - Many organizations use XWiki to store internal documentation, procedures, operational 193 - knowledge and business-critical information. Adding a second authentication factor helps 194 - reduce the risk of account compromise when a password is exposed or reused. 25 + <p class="card-link"> 26 + <a class="btn btn-secondary" href="$xwiki.getURL('products.xwiki-two-factor-authentication')"> 27 + View extension 28 + </a> 195 195 </p> 196 - 197 - <p> 198 - The extension is especially useful for protecting administrator accounts, remote users, 199 - private knowledge bases and customer or partner portals. 200 - </p> 201 - </article> 202 - 203 - <aside class="product-info-card" aria-labelledby="use-cases-title"> 204 - <h3 id="use-cases-title">Typical use cases</h3> 205 - <ul> 206 - <li>Administrator account protection</li> 207 - <li>Internal knowledge base security</li> 208 - <li>Private documentation platforms</li> 209 - <li>Remote user access protection</li> 210 - <li>Customer or partner portals</li> 211 - <li>Security review and NIS 2 readiness initiatives</li> 212 - </ul> 213 - </aside> 214 -</div> 215 -``` 216 - 217 217 </div> 218 -</section> 219 - 220 -<section aria-labelledby="admin-experience-title"> 221 - <div class="container"> 222 - <h2 id="admin-experience-title">Administrator configuration and monitoring</h2> 223 - 224 -``` 225 -<p class="section-intro"> 226 - Administrators can configure the MFA policy, define recovery options and monitor adoption from the XWiki Administration section. 227 -</p> 228 - 229 -<div class="product-feature-grid"> 230 - #foreach ($entry in $adminExperienceItems) 231 - <article class="product-feature"> 232 - <div class="card-heading"> 233 - <div class="feature-icon"> 234 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 235 - </div> 236 - <h3>$entry.title</h3> 237 - </div> 238 - 239 - <p>$entry.content</p> 240 - </article> 241 - #end 242 -</div> 243 -``` 244 - 245 -{{/html}} 246 - 247 -{{gallery}} 248 -[[image:mfa-admin-configuration.png]] 249 -[[image:mfa-admin-overview.png]] 250 -[[image:mfa-admin-full.png]] 251 -{{/gallery}} 252 - 253 -{{html clean="false"}} 254 - 255 -``` 256 -<p class="product-gallery-caption"> 257 - Administration screens for configuring MFA and reviewing MFA adoption across users. 258 -</p> 259 -``` 260 - 261 - </div> 262 -</section> 263 - 264 -<section class="product-section-muted" aria-labelledby="user-experience-title"> 265 - <div class="container"> 266 - <h2 id="user-experience-title">User setup and login verification</h2> 267 - 268 -``` 269 -<p class="section-intro"> 270 - Users can configure MFA from their profile or during the enforced setup flow, then verify future logins with their authenticator app. 271 -</p> 272 - 273 -<div class="product-feature-grid"> 274 - #foreach ($entry in $userExperienceItems) 275 - <article class="product-feature"> 276 - <div class="card-heading"> 277 - <div class="feature-icon"> 278 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 279 - </div> 280 - <h3>$entry.title</h3> 281 - </div> 282 - 283 - <p>$entry.content</p> 284 - </article> 285 - #end 286 -</div> 287 -``` 288 - 289 -{{/html}} 290 - 291 -{{gallery}} 292 -[[image:mfa-user-setup-qr.png]] 293 -[[image:mfa-login-verification-setup.png]] 294 -[[image:mfa-login-verification-code.png]] 295 -{{/gallery}} 296 - 297 -{{html clean="false"}} 298 - 299 -``` 300 -<p class="product-gallery-caption"> 301 - User setup, enforced MFA configuration and login verification screens. 302 -</p> 303 -``` 304 - 305 - </div> 306 -</section> 307 - 308 -<section aria-labelledby="self-service-title"> 309 - <div class="container"> 310 - <h2 id="self-service-title">Recovery codes and trusted devices</h2> 311 - 312 -``` 313 -<p class="section-intro"> 314 - Recovery codes and trusted devices help balance stronger access protection with a smoother user experience. 315 -</p> 316 - 317 -<div class="product-feature-grid"> 318 - #foreach ($entry in $selfServiceItems) 319 - <article class="product-feature"> 320 - <div class="card-heading"> 321 - <div class="feature-icon"> 322 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 323 - </div> 324 - <h3>$entry.title</h3> 325 - </div> 326 - 327 - <p>$entry.content</p> 328 - </article> 329 - #end 330 -</div> 331 -``` 332 - 333 -{{/html}} 334 - 335 -{{gallery}} 336 -[[image:mfa-user-profile-overview.png]] 337 -[[image:mfa-recovery-codes-not-generated.png]] 338 -[[image:mfa-recovery-codes-generated.png]] 339 -[[image:mfa-trusted-devices.png]] 340 -[[image:mfa-user-profile-full.png]] 341 -{{/gallery}} 342 - 343 -{{html clean="false"}} 344 - 345 -``` 346 -<p class="product-gallery-caption"> 347 - User profile screens for recovery codes, trusted devices and MFA self-service management. 348 -</p> 349 -``` 350 - 351 - </div> 352 -</section> 353 - 354 -<section class="product-section-muted" aria-labelledby="admin-support-title"> 355 - <div class="container"> 356 - <h2 id="admin-support-title">Administrator support and user recovery</h2> 357 - 358 -``` 359 -<p class="section-intro"> 360 - Administrators can help users recover from lost devices or restart MFA setup when needed. 361 -</p> 362 - 363 -<div class="product-feature-grid"> 364 - #foreach ($entry in $adminSupportItems) 365 - <article class="product-feature"> 366 - <div class="card-heading"> 367 - <div class="feature-icon"> 368 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 369 - </div> 370 - <h3>$entry.title</h3> 371 - </div> 372 - 373 - <p>$entry.content</p> 374 - </article> 375 - #end 376 -</div> 377 -``` 378 - 379 -{{/html}} 380 - 381 -{{gallery}} 382 -[[image:mfa-admin-user-management.png]] 383 -{{/gallery}} 384 - 385 -{{html clean="false"}} 386 - 387 -``` 388 -<p class="product-gallery-caption"> 389 - Administrator view for checking and resetting a user MFA setup. 390 -</p> 391 -``` 392 - 393 - </div> 394 -</section> 395 - 396 -<section aria-labelledby="rollout-title"> 397 - <div class="container"> 398 - <div class="product-layout"> 399 - <article class="product-summary-card"> 400 - <h2 id="rollout-title">Rollout recommendations</h2> 401 - 402 -``` 403 - <p> 404 - For a smooth rollout, start with a small administrator or pilot group before requiring MFA for everyone. 405 - This helps validate the configuration, prepare user communication and reduce support issues. 406 - </p> 407 - 408 - <ol class="process-list"> 409 - #foreach ($entry in $rolloutItems) 410 - <li> 411 - <strong>$entry.title</strong> 412 - $entry.content 413 - </li> 414 - #end 415 - </ol> 416 - </article> 417 - 418 - <aside class="product-info-card" aria-labelledby="planning-title"> 419 - <h3 id="planning-title">Useful information before installation</h3> 420 - 421 - <p class="product-card-note"> 422 - These details help evaluate compatibility, rollout scope and configuration options. 423 - </p> 424 - 425 - <ul> 426 - <li>XWiki version</li> 427 - <li>Single wiki or wiki farm with subwikis</li> 428 - <li>Current authentication setup</li> 429 - <li>Optional or globally required MFA policy</li> 430 - <li>Trusted-device policy</li> 431 - <li>Recovery-code policy</li> 432 - <li>Rollout communication needs</li> 433 - </ul> 434 - </aside> 435 -</div> 436 -``` 437 - 438 - </div> 439 -</section> 440 - 441 -<section class="cta-section" aria-labelledby="cta-title"> 442 - <div class="container"> 443 - <div class="cta-panel"> 444 - <h2 id="cta-title">Interested in using this extension?</h2> 445 - 446 -``` 447 - <p> 448 - Send a short message with your XWiki version, current authentication setup and MFA rollout goal. 449 - </p> 450 - 451 - <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Contact Agnease</a> 452 -</div> 453 -``` 454 - 455 - </div> 456 -</section> 457 - 458 -{{/html}} 459 -{{/velocity}} 460 - 31 +</article>
- mfa-admin-configuration.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -125.3 KB - Content
- mfa-admin-full.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -184.3 KB - Content
- mfa-admin-overview.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -64.7 KB - Content
- mfa-admin-user-management.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -26.9 KB - Content
- mfa-login-verification-code.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -23.6 KB - Content
- mfa-login-verification-setup.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -115.9 KB - Content
- mfa-recovery-codes-generated.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -38.5 KB - Content
- mfa-recovery-codes-not-generated.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.0 KB - Content
- mfa-trusted-devices.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -59.1 KB - Content
- mfa-user-profile-full.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -197.5 KB - Content
- mfa-user-profile-overview.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -193.4 KB - Content
- mfa-user-setup-qr.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Admin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -176.6 KB - Content
- Agnease.Code.SEODetailsClass[0]
-
- metaDescription
-
... ... @@ -1,1 +1,0 @@ 1 -Agnease Two-Factor Authentication for XWiki adds a second login verification step with authenticator app codes, email codes, combined verification and trusted-device remembering. - metaTitle
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki Two-Factor Authentication with 2FA and MFA Support | Agnease