Multifactor Authentication deprecated
Appsuite provides methods for users to require secondary, additional methods of authentication before creating a valid Appsuite session. These methods may include SMS messages, Time based authenticator methods, U2F compatible devices/keyfobs, and other custom methods.
Please Note: When a user enables multifactor authentication for their account, their logins will be limited to the Appsuite UI only, as client applications (Mail app, Drive app, Exchange Active Sync) do not currently have the interface to perform the additional multifactor requirements. As of 7.10.4, users can add Application Passwords to use in order to bypass multifactor authentication for their client applications. See Application Passwords for details.
Enabling Multifactor
The open-xchange-multifactor
package is required for the core of multifactor authentication. For some methods (such as SMS), additional packages will be required.
With SMS, for example, you must also install a provider, such as open-xchange-sms-sipgate
.
Then, multifactor must be enabled as a capability. This can be done in the multifactor.properties file, or as a cascade value
com.openexchange.capability.multifactor=true
Enabling SMS
First, the SMS provider must be installed and configured. Most will require a configured username and password, or AUTH_TOKEN. Install the needed package and configure.
At that point, you should enable SMS in the multifactor.properties file
com.openexchange.multifactor.sms.enabled=true
The following properties are also available
com.openexchange.multifactor.sms.tokenLength (default is 8 characters)
com.openexchange.multifactor.sms.tokenLifetime (Number of minutes until challenge expires)
com.openexchange.multifactor.maxTokenAmount (Maximum number of challenges before locked out)
Enabling TOTP
TOTP is Time-based One Time Password. This works with several apps available in mobile stores, such as Google Authenticator.
To enable, just set in the multifactor.properties file
com.openexchange.multifactor.totp.enabled=true
Enabling Backup String
This is a method to allow a user to log into their account if they lose their primary multifactor authentication device (say losing their phone or U2F token). It is a long string that they can copy, download, or print to use to unlock the account in the event of loss
To enable, set in the multifactor.properties file
com.openexchange.multifactor.backupString.enabled=true
Enabling U2F
U2F is supported in Google Chrome, as well as Firefox (though requires user changing advanced settings).
In multifactor.properties, enable U2F
com.openexchange.multifactor.u2f.enabled=true
Then, the domain that the user will be using must be specified. This will be used with the requests to the U2F device, and must mach the website. This configuration is config-cascade aware
com.openexchange.multifactor.u2f.appId=https://yourdomain
Login Page
By default, the UI will change from the login page, draw the customized toolbar, then display a prompt for the multifactor authentication.
If you would prefer to have your login screen, or a different second factor screen used as the background, then you can configure in the as-config.yml
For example:
default:
host: all
signinTheme: default
multifactorBackground: pages/secondFactor