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)
Details
- Page properties
-
- Content
-
... ... @@ -1,85 +1,9 @@ 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': 'Simple MFA policy', 21 - 'icon': 'cog', 22 - 'content': 'Administrators can 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 - 78 78 {{html clean="false"}} 79 79 80 -<div class="product-doc-page product-mfa-page"> 81 - 82 -<section class="hero hero-centered" aria-labelledby="product-title"> 6 +<section class="hero hero-centered product-hero" aria-labelledby="product-title"> 83 83 <div class="container hero-inner"> 84 84 <div class="hero-kicker"> 85 85 <i class="fa fa-lock" aria-hidden="true"></i> ... ... @@ -107,16 +107,20 @@ 107 107 <h2 id="overview-title">Two-factor authentication built into XWiki</h2> 108 108 109 109 <p> 110 - XWiki Two-Factor Authentication adds MFA/2FAsupport tothe standardXWiki login flow.111 - Users continue to signin with their normalusername and password,then confirm accesswith112 - a n additional verificationmethod.34 + XWiki Two-Factor Authentication adds an additional verification screen after the standard 35 + XWiki username and password login. It improves account protection without replacing the 36 + familiar XWiki authentication flow. 113 113 </p> 114 114 115 115 <p> 116 - The extension supports authenticator app codes, email-delivered verification codes, or a combined 117 - setup where both methods are required. It is designed to improve account protection without replacing 118 - the familiar XWiki authentication experience. 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. 119 119 </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> 120 120 </article> 121 121 122 122 <aside class="product-info-card" aria-labelledby="quick-facts-title"> ... ... @@ -123,12 +123,11 @@ 123 123 <h3 id="quick-facts-title">Quick facts</h3> 124 124 <ul> 125 125 <li>Works with the standard XWiki login flow</li> 126 - <li>Supports TOTP authenticator applications</li> 127 - <li>Supports email-delivered one-time codes</li> 128 - <li>Can require app and email verification together</li> 129 - <li>Includes recovery codes for backup access</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> 130 130 <li>Can remember trusted browsers or devices</li> 131 - <li>Includes administration and user controls</li> 58 + <li>Includes administration and user setup controls</li> 132 132 </ul> 133 133 </aside> 134 134 </div> ... ... @@ -135,210 +135,92 @@ 135 135 </div> 136 136 </section> 137 137 138 -<section aria-labelledby=" capabilities-title">65 +<section aria-labelledby="features-title"> 139 139 <div class="container"> 140 - <h2 id=" capabilities-title">Main capabilities</h2>67 + <h2 id="features-title">Main capabilities</h2> 141 141 142 142 <p class="section-intro"> 143 - A focused set of MFA/2FA features for stronger XWiki account protection without changing the standard login experience. 70 + A focused set of MFA/2FA features for organizations that want stronger XWiki account protection 71 + without changing the standard login experience. 144 144 </p> 145 145 146 146 <div class="product-feature-grid"> 147 - #foreach ($entry in $mainCapabilityItems) 148 - <article class="product-feature"> 149 - <div class="card-heading"> 150 - <div class="feature-icon"> 151 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 152 - </div> 153 - <h3>$entry.title</h3> 154 - </div> 75 + <article class="product-feature"> 76 + <div class="feature-icon"> 77 + <i class="fa fa-key" aria-hidden="true"></i> 78 + </div> 79 + <h3>Second login step</h3> 80 + <p> 81 + After username and password verification, users must complete an additional verification step before accessing XWiki. 82 + </p> 83 + </article> 155 155 156 - <p>$entry.content</p> 157 - </article> 158 - #end 159 - </div> 160 - </div> 161 -</section> 162 - 163 -<section class="product-section-muted" aria-labelledby="security-title"> 164 - <div class="container"> 165 - <div class="product-layout"> 166 - <article class="product-summary-card"> 167 - <h2 id="security-title">Useful for XWiki security and access protection</h2> 168 - 85 + <article class="product-feature"> 86 + <div class="feature-icon"> 87 + <i class="fa fa-mobile" aria-hidden="true"></i> 88 + </div> 89 + <h3>Authenticator app codes</h3> 169 169 <p> 170 - Many organizations need multi-factor authentication for internal tools, knowledge bases, 171 - intranets, documentation platforms and systems containing operational or sensitive information. 91 + Users can verify access with TOTP codes generated by authenticator applications on mobile or desktop devices. 172 172 </p> 93 + </article> 173 173 95 + <article class="product-feature"> 96 + <div class="feature-icon"> 97 + <i class="fa fa-envelope-o" aria-hidden="true"></i> 98 + </div> 99 + <h3>Email verification codes</h3> 174 174 <p> 175 - For XWiki, adding two-factor authentication directly to the standard login flow helps protect 176 - administrator accounts, remote users, private knowledge bases and customer or partner portals. 101 + Users can receive one-time verification codes by email when an authenticator app is not available or preferred. 177 177 </p> 178 178 </article> 179 179 180 - <aside class="product-info-card" aria-labelledby="use-cases-title"> 181 - <h3 id="use-cases-title">Typical use cases</h3> 182 - <ul> 183 - <li>Administrator account protection</li> 184 - <li>Internal knowledge base security</li> 185 - <li>Private documentation platforms</li> 186 - <li>Remote user access protection</li> 187 - <li>Customer or partner portals</li> 188 - <li>Security review and NIS 2 readiness initiatives</li> 189 - </ul> 190 - </aside> 105 + <article class="product-feature"> 106 + <div class="feature-icon"> 107 + <i class="fa fa-plus-circle" aria-hidden="true"></i> 108 + </div> 109 + <h3>Combined verification</h3> 110 + <p> 111 + The login flow can require both an authenticator app code and an email code when stricter verification is needed. 112 + </p> 113 + </article> 191 191 </div> 192 192 </div> 193 193 </section> 194 194 195 -<section aria-labelledby=" admin-experience-title">118 +<section class="product-section-muted" aria-labelledby="security-title"> 196 196 <div class="container"> 197 - <h2 id="admin-experience-title">Administrator experience</h2> 198 - 199 - <p class="section-intro"> 200 - Administrators can configure the MFA policy, monitor adoption and reset user MFA setups when needed. 201 - </p> 202 - 203 - <div class="product-feature-grid"> 204 - #foreach ($entry in $adminExperienceItems) 205 - <article class="product-feature"> 206 - <div class="card-heading"> 207 - <div class="feature-icon"> 208 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 209 - </div> 210 - <h3>$entry.title</h3> 211 - </div> 212 - 213 - <p>$entry.content</p> 214 - </article> 215 - #end 216 - </div> 217 - 218 - <p class="product-gallery-caption"> 219 - Administration screens for configuring MFA and reviewing MFA adoption across users. 220 - </p> 221 - </div> 222 -</section> 223 - 224 -{{/html}} 225 - 226 -{{gallery}} 227 -[[image:mfa-admin-configuration.png]] 228 -[[image:mfa-admin-overview.png]] 229 -{{/gallery}} 230 - 231 -{{html clean="false"}} 232 - 233 -<section class="product-section-muted" aria-labelledby="user-experience-title"> 234 - <div class="container"> 235 - <h2 id="user-experience-title">User experience</h2> 236 - 237 - <p class="section-intro"> 238 - Users can configure MFA from their profile and complete the second verification step during login. 239 - </p> 240 - 241 - <div class="product-feature-grid"> 242 - #foreach ($entry in $userExperienceItems) 243 - <article class="product-feature"> 244 - <div class="card-heading"> 245 - <div class="feature-icon"> 246 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 247 - </div> 248 - <h3>$entry.title</h3> 249 - </div> 250 - 251 - <p>$entry.content</p> 252 - </article> 253 - #end 254 - </div> 255 - 256 - <p class="product-gallery-caption"> 257 - User setup and login verification screens. 258 - </p> 259 - </div> 260 -</section> 261 - 262 -{{/html}} 263 - 264 -{{gallery}} 265 -[[image:mfa-user-setup-qr.png]] 266 -[[image:mfa-login-verification.png]] 267 -{{/gallery}} 268 - 269 -{{html clean="false"}} 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 - </div> 298 -</section> 299 - 300 -{{/html}} 301 - 302 -{{gallery}} 303 -[[image:mfa-recovery-codes.png]] 304 -[[image:mfa-trusted-devices.png]] 305 -[[image:mfa-user-profile-overview.png]] 306 -[[image:mfa-admin-user-management.png]] 307 -{{/gallery}} 308 - 309 -{{html clean="false"}} 310 - 311 -<section class="product-section-muted" aria-labelledby="rollout-title"> 312 - <div class="container"> 313 313 <div class="product-layout"> 314 314 <article class="product-summary-card"> 315 - <h2 id=" rollout-title">Rolloutrecommendations</h2>122 + <h2 id="security-title">Useful for XWiki security and NIS 2 readiness</h2> 316 316 317 317 <p> 318 - For a smooth rollout, start with a small administrator or pilot group before requiring MFA for everyone. 319 - This helps validate the configuration, prepare user communication and reduce support issues. 125 + Many organizations need multi-factor authentication for enterprise software, including internal 126 + knowledge bases, intranets, documentation platforms and systems containing operational procedures 127 + or sensitive business information. 320 320 </p> 321 321 322 - <ol class="process-list"> 323 - #foreach ($entry in $rolloutItems) 324 - <li> 325 - <strong>$entry.title</strong> 326 - $entry.content 327 - </li> 328 - #end 329 - </ol> 130 + <p> 131 + For organizations using XWiki, adding two-factor authentication directly to the standard login flow 132 + can help close a practical access-control gap. It can be useful for administrator accounts, remote users, 133 + private knowledge bases and broader security readiness initiatives such as NIS 2 preparation. 134 + </p> 135 + 136 + <p> 137 + This extension is not a complete compliance solution on its own, but it can provide an important 138 + technical control for protecting access to XWiki. 139 + </p> 330 330 </article> 331 331 332 - <aside class="product-info-card" aria-labelledby=" planning-title">333 - <h3 id=" planning-title">Usefulinformation before installation</h3>142 + <aside class="product-info-card" aria-labelledby="security-controls-title"> 143 + <h3 id="security-controls-title">Useful for</h3> 334 334 <ul> 335 - <li>XWiki version</li> 336 - <li>Single wiki or wiki farm with subwikis</li> 337 - <li>Current authentication setup</li> 338 - <li>Optional or globally required MFA policy</li> 339 - <li>Trusted-device policy</li> 340 - <li>Recovery-code policy</li> 341 - <li>Rollout communication needs</li> 145 + <li>XWiki 2FA rollout</li> 146 + <li>XWiki MFA adoption</li> 147 + <li>Administrator account protection</li> 148 + <li>Remote user access protection</li> 149 + <li>Private knowledge base security</li> 150 + <li>NIS 2 readiness initiatives</li> 342 342 </ul> 343 343 </aside> 344 344 </div> ... ... @@ -349,19 +349,14 @@ 349 349 <div class="container"> 350 350 <div class="cta-panel"> 351 351 <h2 id="cta-title">Interested in using this extension?</h2> 352 - 353 353 <p> 354 - Send a short message with your XWiki version, authentication setup and whether you need 355 - authenticator app codes, email verification codes, combined verification, recovery codes 356 - or trusted-device remembering. 162 + Send a short message with your XWiki version, authentication setup, and whether you need 163 + authenticator app codes, email verification codes, combined verification, or trusted-device remembering. 357 357 </p> 358 - 359 359 <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Contact Agnease</a> 360 360 </div> 361 361 </div> 362 362 </section> 363 363 364 -</div> 365 - 366 366 {{/html}} 367 367 {{/velocity}}