Magic

Authentication ::: auth_magic
Maintained by Stefan Scholz, bdecent gmbh
Simplifying authentication and automating workflows.
Latest release:
128 sites
39 downloads
4 fans
Current versions available: 1

Simplifying authentication and automating workflows.

MAGIC AUTHENTICATION

Magic saves time and maximizes convenience for both learners and teachers. Whether it's password free sign in/up for users or the mapping of complex workflows, assignments or approval processes that normally require a lot of manual effort, Magic can automate countless workflows.

Use cases
  • Simplified authentication
  • Sub accounts
  • Testing courses and providing demo users

The Magic basic plugin is all about authentication. For more functionality, we offer a Pro plan.

>> Feature overview

Magic sign in — login, simplified

Email-based verification to ensure the authenticity of the user. A unique Magic link is sent to the user’s registered email address, serving as their authentication token. No more passwords or usernames required. 

Admins can customize the login process by enabling or disabling the use of passwords for accessing Moodle. This feature can force users to use a Magic link to login. Moreover admins can define if a username is accepted in addition to email to receive a Magic link. With Magic Pro it is possible to define the Magic login link button position. It’s also possible to allow logins via additional email providers and use the instruction field to include further information or links.

If you wish to integrate demo accounts, as shown in the second example below, you can find more information here. Magic Pro is required for this feature.

Login using Magic links (instead of a password)

Password-free login

Users simply enter their email address, click the button “Get a magic link via email” and click on the link in their email inbox to access Moodle.

One-click access to demo user accounts

Use case: demo accounts

Add long-lasting Magic Links to the login form to provide easy access to demo accounts. Note: Magic Pro is required to set expiry for individual users. Learn more

Expiry

Define limited lifespans of Magic invitation links as well as Magic login links. These global settings define the duration for which the links remain valid as they are expiring after a specified period. It is also possible to adjust the behavior of login keys as they can be utilized for a single use or until their expiry time.

Two-factor authentication option PRO

Added security for privileged accounts. When signing in with an email address that belongs to an account that supports Magic login but has a privileged role, users will be required to enter their password before they can obtain the Magic login link via email on the magic custom login page.

Smart login page PRO

The smart login page provides a streamlined, minimalist alternative to Moodle’s standard login process. This customization enables a more efficient and user-friendly authentication process, tailored to individual email-based authentication methods.

Adaptive login form with Magic Pro

Adaptive login form

The Magic login page offers a simplified and intuitive login experience by requesting only the user’s email address initially. Appropriate input elements based on the entered email address and its associated authentication method are then provided. 

Place important links into the footer area on Magic Pro's Sign Up page

Footer area

A footer can be displayed at the bottom of the Magic custom login page that contains additional information and links like terms and conditions or other general information.

Create and edit user accounts PRO

Effortlessly create and register users with the Magic quick registration in one step. Easily define global defaults for enrollment duration, roles, and even assign a default owner account role.

  • The default enrollment duration setting in quick registration allows you to specify how long users will have access to a course upon enrollment.
  • The default enrollment role setting enables you to assign a role to users automatically when they enroll in a course via the quick registration feature.
  • The owner account role determines the role assigned to the user who creates a new account. If configured to any role other than “none,” the creator will be assigned that specified role as the account owner for the new user. Note: This setting includes all available roles within the user context.

Manage users related to your account (e.g. as parent, supervisor or owner) by editing user lists directly through the Magic plugin. More about quick registration and my user accounts. 

Relative role assignments PRO

Synchronize user relationships based on user profile information. Relationships can include parent-child, teacher-student, trainer-trainee, mentor-mentee, or even personal demo accounts. If a user is to be linked to others in a relationship, they are mapped and connected through a unique identifier (e.g. email address). For users who don’t already exist on the platform, an account is automatically created and made accessible via a Magic link, establishing the relationship accordingly.

More about role mapping and auto-create accounts.

Campaigns PRO

Create highly customizable registration forms tailored for specific events or other purposes. With Magic campaigns, a wide range of workflows can be automated, streamlining tasks that would otherwise require manual effort. Processes such as assigning users to courses or groups, managing approval workflows, and sending standardized notifications can be configured once, saving significant time and reducing manual work. Additionally, staff members with limited system permissions can carry out specific workflows independently through tailored campaigns, without accessing sensitive data they are not authorized to view.

Magic campaigns also support assigning approval roles, setting up course-related groups, managing enrollments and assignments, and defining capacities within the campaign. This makes it a comprehensive tool for efficient campaign management. Site managers and users with the appropriate permissions can further enhance these forms by pre-setting profile details, integrating reCAPTCHA, enabling payment options, and defining post-submission redirects. With flexibility in design, users can modify various elements such as logos, text, and background images to match the campaign’s branding. This ensures a seamless and personalized registration experience for user.

>> Read more about Campaigns

Registration form

Custom registration form

This simple registration form collects standard information. Registration is possible with username and password.

Implement a ultra-minimalist sign up form which only requires the email address

With this ultra minimal sign up you only need the email address.

Availability

Admins can set a maximum limit on the number of users allowed to register through a campaign. Campaigns can be marked as either active or archived, with status indicators providing clarity. A visibility setting allows campaigns to be hidden, for instance, when they are still in progress. Admins can also define start and end dates to control when the campaign is available. For added security, an optional password field can be enabled, ensuring that only authorized individuals can access the campaign. The password can also be passed via a URL parameter, allowing users to bypass manual entry. Learn more

Access control (via enrollment keys)

An enrollment key can be requested in the registration form, functioning like a coupon code, but without requiring any payment. Enrollment keys enable controlled access to courses, and depending on the settings, only participants with a valid key will be able to register. Administrators can define an enrollment key that allows users to access the platform as long as they have a valid key for any course on the system. The user will be automatically enrolled in the corresponding course based on the enrollment key provided. When a campaign is linked to a campaign course, a course-specific campaign enrollment key can be requested. This key will not only enroll participants directly into the course but also automatically assign them to different groups depending on the key used. This allows for the full benefits of group organization, such as targeted communication with different groups. Learn more

Campaign courses

Admins can choose whether users should be auto-enrolled into campaign courses or not. Selecting a campaign course will enroll the user in the selected course after signing up. In addition, admins can define a default course role for students as well as for parent users. Magic can automatically create groups and assign users to them when they sign up for the campaign. There are two options for auto-creating groups: using either the campaign title alone or a combination of the user’s name and the campaign title. A Magic campaign can also directly sort these groups into groupings. However, the groupings must be created in the campaign course beforehand. It is possible to activate a group messaging option that allows all group members to exchange information via the chat. In addition, it is possible to generate a specific group enrollment key to assign users directly to the auto-created groups. Moreover, admins can define group capacities to manage the number of participants per group. Learn more

Assignments

Accounts that are created through a campaign can be automatically assigned to cohorts. That means, if a user is enrolled into one course through a campaign, it is possible to show more courses that could be interesting for this specific user due to the cohort assignment or even auto-enroll them. Moreover, admins can define a global role for generated accounts as well as a campaign owner account who will be assigned to the user accounts created through the campaign with the configured campaign owner role. A notification with a confirmation link can be sent upon sign-up for the ‘parent’ user mail. Learn more

Management and reporting of paid content

Specify whether the campaign or the content of the campaign course is free or chargeable. If users are required to make a payment, administrators can specify all payment details directly in the Magic campaign. Users sign up and are then redirected to the payment gateway. There are many payment gateways available, such as PayPal or Stripe. Magic also supports the Bank transference payment gateway (from 1.6). Please note: If you use a third-party payment gateway, please test it carefully. If you encounter issues, let us know and we will consider adding support for it. Users can be redirected to a summary page or directly to a specified URL after submission of the registration form.  Moreover, Magic creates a new report source “payment transactions”. It provides comprehensive insights into financial activities, combining authentication details with transaction reporting for a more holistic understanding. Learn more

Notifications

Admins can define a welcome message that is automatically sent to newly created accounts. In addition, it is possible to define follow-up messages and specify how many days after sign-up they should be sent. Every message that is sent can be also sent to the campaign owner account as a notification. Learn more

Customized landing pages

Create campaign pages to match your theme with header or background images. The registration form can be customized for a more appealing look. Admins have the option to integrate a logo directly into the form. In addition to the standard white background, they can choose whether the form should appear with a transparent background or a solid white background with a box shadow. Furthermore, there’s an overlay option available. Additionally, the placement of the registration form on the signup page can be defined, allowing it to be centered, aligned to the left, or positioned to the right. For a personal touch, it is possible to display the campaign owner’s profile picture. Of course, admins can also enable the display of a consent statement on the campaign page, allowing users to give their consent to the privacy policies. Learn more

For our Easter warm up party, we created a campaign with a logo on the registration form, a profile picture of the campaign owner, a description text, and a background image. The registration form is centrally aligned and not transparent.

Try it

In this campaign, the header is used as a call to action.
The position of the registration form is set to transparent as well as ‘right overlay,’ which is why the background image only covers part of the background.

Try it

An animated logo is integrated here. Background graphics can also be animated using GIFs. The transparent registration form and the colourful background give this campaign its own style.

Try it

 

Potential privacy issues

The magic authentication plugin uses magic links instead of a password. This magic link is sent to the user's email address. This means that anybody with access to the email inbox can get access. However, this is usually the case anyway because Moodle by default allows the user to reset the password via email. We believe that magic links are more secure than a password, because a magic link automatically expires after 4 hours. Using an expired magic link will trigger a new magic link.

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5
Screenshot #6
Screenshot #7
Screenshot #8
Screenshot #9

Contributors

Stefan Scholz (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
Please login to post comments