7.6. WebUI Policies¶
WebUI policies define the behaviour of the WebUI. After activating WebUI policies, the UI must be reloaded once for the change to take effect
7.6.1. login_mode¶
type: string
allowed values: userstore
, eduMFA
, disable
If set to userstore (default), users and administrators need to authenticate with the password of their userstore, being an LDAP service or an SQL database.
If this action is set to login_mode=eduMFA, the users and administrators need to authenticate against eduMFA when logging into the WebUI. I.e. they can not login with their domain password anymore but need to authenticate with one of their tokens.
If set to login_mode=disable the users and administrators of the specified realms can not login to the UI anymore.
Warning
If you set this action and the user deletes or disables all his tokens, he will not be able to login anymore.
Note
Administrators defined in the database using the edumfa-manage command can still login with their normal passwords.
Note
A sensible way to use this, is to combine this action in
a policy with the client
parameter: requiring the users to
login to the Web UI remotely from the internet with
OTP but still login from within the LAN with the domain password.
Note
Another sensible way to use this policy is to disable the login to
the web UI either for certain IP addresses (client
) or for users in
certain realms.
7.6.2. remote_user¶
type: string
This policy defines, if the login to the eduMFA using the web servers integrated authentication (like basic authentication or digest authentication) should be allowed.
Possible values are disable
, allowed
and force
.
If set to “allowed” a user can choose to use the REMOTE_USER or login with credentials. If set to “force”, the user can not switch to login with credentials but can only login with the REMOTE_USER from the browser.
Note
The policy is evaluated before the user is logged in. At this point in time there is no realm known, so a policy to allow remote_user must not select any realm.
Note
The policy setting “force” only works on the UI level. On the API level the user could still log in with credentials! If you want to avoid this, see the next note.
Note
The policy login_mode and remote_user work independent of each other. I.e. you can disable login_mode and allow remote_user.
You can use this policy to enable Single-Sign-On and integration into Kerberos or Active Directory. Add the following template into you apache configuration in /etc/apache2/sites-available/edumfa.conf:
<Directory />
# For Apache 2.4 you need to set this:
# Require all granted
Options FollowSymLinks
AllowOverride None
SSLRequireSSL
AuthType Kerberos
AuthName "Kerberos Login"
KrbMethodNegotiate On
KrbMethodK5Passwd On
KrbAuthRealms YOUR-REALM
Krb5KeyTab /etc/apache2/http.keytab
KrbServiceName HTTP
KrbSaveCredentials On
<RequireAny>
# Either we need a URL with no authentication or we need a valid user
<RequireAny>
# Any of these URL do NOT need a basic authentication
Require expr %{REQUEST_URI} =~ m#^/validate#
Require expr %{REQUEST_URI} =~ m#^/ttype#
</RequireAny>
Require valid-user
</RequireAny>
</Directory>
7.6.3. logout_time¶
type: int
Set the timeout, after which a user in the WebUI will be logged out. The default timeout is 120 seconds.
Being a policy this time can be set based on clients, realms and users.
7.6.4. timeout_action¶
type: str
The action taken when a user is idle beyond the logout_time
limit. Defaults to lockscreen.
7.6.5. audit_page_size¶
type: int
By default 10 entries are displayed on one page in the audit view. On big screens you might want to display more entries. Thus you can define in this policy how many audit entries should be displayed.
7.6.6. token_page_size¶
type: int
By default 15 tokens are displayed on one page in the token view. On big screens you might want to display more tokens. Thus you can define in this policy how many tokens should be displayed.
7.6.7. user_page_size¶
type: int
By default 15 users are displayed on one page in the user view. On big screens you might want to display more users. Thus you can define in this policy how many users should be displayed.
7.6.8. policy_template_url¶
type: string
Here you can define a URL from where the policies should be fetched. The default URL is a Github repository [1].
Note
When setting a template_url policy the modified URL will only get active after the user has logged out and in again.
7.6.9. default_tokentype¶
type: string
You can define which is the default tokentype when enrolling a new token in the Web UI. This is the token, which will be selected, when entering the enrollment dialog.
7.6.10. tokenwizard¶
type: bool
If this policy is set and the user has no token, then the user will only see an easy token wizard to enroll his first token. If the user has enrolled his first token and he logs in to the web UI, he will see the normal view.
The user will enroll a token defined in default_tokentype.
Other sensible policies to combine are in User Policies the OTP length, the TOTP timestep and the HASH-lib.
You can add a prologue and epilog to the enrollment wizard in the greeting and after the token is enrolled and e.g. the QR code is displayed.
Create the files:
static/customize/views/includes/token.enroll.pre.top.html
static/customize/views/includes/token.enroll.pre.bottom.html
static/customize/views/includes/token.enroll.post.top.html
static/customize/views/includes/token.enroll.post.bottom.html
to display the contents in the first step (pre) or in the second step (post).
Note
You can change the directory static/customize to a URL that fits your needs the best by defining a variable EDUMFA_CUSTOMIZATION in the file edumfa.cfg. This way you can put all modifications in one place apart from the original code.
If you want to adapt the eduMFA look and feel even more, read Customization.
7.6.11. tokenwizard_2nd_token¶
type: bool
The tokenwizard will be displayed in the token menu, even if the user already has a token.
7.6.12. realm_dropdown¶
type: string
If this policy is activated the web UI will display a realm dropdown box. Of course this policy can not filter for users or realms, since the user is not known at this moment.
You can set a space separated list of realm names. Only these realm names are displayed in the dropdown box.
Note
The realm names in the policy are not checked, if they really exist!
7.6.13. search_on_enter¶
type: bool
The searching in the user list is performed as live search. Each time a key is pressed, the new substring is searched in the user store.
Sometimes this can be too time consuming. You can use this policy to change the behaviour that the administrator needs to press enter to trigger the search.
7.6.14. user_details¶
type: bool
This action adds the user ID and the resolver name to the token list.
7.6.15. custom_baseline¶
type: string
The administrator can replace the file templates/baseline.html
with another template.
This way he can change the links to e.g. internal documentation or ticketing systems.
The new file could be called mytemplates/mybase.html
.
Note
This policy is evaluated before login. So any realm or user setting will have no effect. But you can specify different baselines for different client IP addresses.
If you want to adapt the eduMFA look and feel even more, read Customization.
7.6.18. deletion_confirmation¶
type: bool
To avoid careless deletion of important configurations, this policy can be activated. After activation, an additional confirmation for the deletion is requested for policies, events, mresolvers, resolvers and periodic-tasks.
7.6.19. token_rollover¶
type: string
This is a whitespace separated list of tokentypes, for which a rollover button is displayed in the token details. This button will generate a new token secret for the displayed token.
This e.g. enables a user to transfer a softtoken to a new device while keeping the token number restricted to 1.
7.6.20. login_text¶
type: string
This way the text “Please sign in” on the login dialog can be changed. Since the policy can also depend on the IP address of the client, you can also choose different login texts depending on from where a user tries to log in.
7.6.21. show_android_privacyidea_authenticator¶
type: bool
If this policy is activated, the enrollment page for HOTP, TOTP and PUSH tokens will contain a QR code, that leads the user to the Google Play Store where he can directly install the unsupported privacyIDEA Authenticator App for Android devices.
7.6.22. show_ios_privacyidea_authenticator¶
type: bool
If this policy is activated, the enrollment page for HOTP, TOTP and PUSH tokens will contain a QR code, that leads the user to the Apple App Store where he can directly install the unsupported privacyIDEA Authenticator App for iOS devices.
7.6.23. show_custom_authenticator¶
type: string
If this policy is activated, the enrollment page for HOTP, TOTP and Push tokens will contain a QR code, that leads the user to the given URL.
The idea is, that an organization running eduMFA can create its own URL, where the user is taken to, e.g.
Show information about the used Authenticator apps…
Do a device identification and automatically redirect the user to Google Play Store or Apple App Store. Thus only need the user to show one QR code…
If an organization has it’s own customized app or chooses to use another app, lead the user to another App in the Google Play Store or Apple App Store.
Other scenarios are possible.
7.6.24. show_node¶
type: bool
If this policy is activated the UI will display the name of the eduMFA node in the top left corner next to the logo.
This is useful, if you have a lot of different eduMFA nodes in a redundant setup or if you have test instances and productive instances. This way you can easily distinguish the different instances.
7.6.25. show_seed¶
type: bool
If this is checked, the token seed will be additionally displayed as text during enrollment.
7.6.26. indexedsecret_preset_attribute¶
type: string
The secret in the enrollment dialog of the tokentype indexedsecret is preset with the value of the given user attribute.
For more details of this token type see Indexed Secret Token.
7.6.27. admin_dashboard¶
type: bool
If this policy is activated, the static dashboard can be accessed by administrators. It is displayed as a starting page in the WebUI and contains information about token numbers, authentication requests, recent administrative changes, policies, event handlers and subscriptions.
7.6.28. dialog_no_token¶
type: bool
When activated, a welcome dialog will be displayed if a user, who has no token assigned, logs in to the Web UI.
The dialog is contained in the template dialog.no.token.html
.
7.6.29. hide_welcome_info¶
type: bool
If this is checked, the administrator will not see the default welcome dialog anymore.
7.6.30. privacy_statement_link¶
type: str
With this policy you may specify a custom privacy statement link which is displayed in the WebUI baseline.