Passwordless login in Mendix: how to create it, the easy way

Mitchel Mol
|
January 28, 2025

Passwords are a necessary evil. They protect your applications and are half of a puzzle that authenticates us to access our applications. Today we have a ton of credentials to remember. Fortunately, biometric authentication and password managers make things easier. Single sign-on improves that even more. Mainly if you use a lot of applications from the company you work for. However, not all applications have the infrastructure to be supported by a single sign-on.

And then there are those users who always forget their password. Some applications, such as Slack, support magic links; you enter your username, and they email you to log in.

Some applications, such as Happyscribe, even make this the only method for logging in.

Great news: you can now implement this in your Mendix app with the latest module I released!

The passwordless login module in action.

How the login with e-mail link-module works

You create your users using the Administration module. For passwords, you can generate random long values.

Your users will never use them anyway. When your user enters their username or e-mail address, the system will look up their account. When it exists, it will send an email to the address associated with their account. This email includes a Single Sign On (SSO) link containing a UUID and a key with some encrypted data.

The user will then click on that link and instantly be transferred to your application in a new session.

Configurable

The expiration of the SSO link is configurable. By default, it is set to 15 minutes. Older SSO links will be removed if a user starts a new login process. Of course, you must enable the appropriate scheduled event to make that work.

Suppose you want to prevent your users from using the default login. You then may use the Disable Mendix Login or Local login filter to prevent the regular login flow from being used.

Sometimes, the budget is tight

Mendix has a license module based on active named users, which can sometimes be problematic for smaller businesses. Especially if you have loads of users but they aren’t frequent active users. To efficiently use the license, you might want to adequately use the number of active named users you purchased. This module allows you to deactivate inactive users (users who do not actively use the application). And they will automatically reactivate the moment they log in via the login process.

Requests and feedback are more than welcome

Would you use this module in your Mendix application? Do you have any feature requests? Let me know in the comments! 💬

We're hiring! 

Check out our Medior and Senior Mendix vacancies now
Go to our job page
By clicking “Accept All Cookies”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.

Heading

What’s a Rich Text element?

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

Static and dynamic content editing

A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!

How to customize formatting for each rich text

Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.

We're hiring! 

Check out our Medior and Senior Mendix vacancies now
Go to our job page
By clicking “Accept All Cookies”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.