Hello there!

Need Help? We are right here!

miniorange Support~
miniOrange Email Support
success

Thanks for your Enquiry.

If you don't hear from us within 24 hours, please feel free to send a follow-up email to info@xecurify.com

Search Results:

×

Laravel Two-Factor Authentication (2FA/MFA)


Laravel Two-Factor Authentication (2FA/MFA) adds an extra layer of security to your Laravel application. It requires users to provide a second factor of authentication to access their accounts, making it difficult for unauthorized individuals to gain access even if they have the user's credentials. With 15+ authentication methods, miniOrange offers a range of options for setting up secure authentication, including password restrictions and sign-in method restrictions.


Connect with External Source of Users


miniOrange provides user authentication from various external sources, which can be Directories (like ADFS, Microsoft Active Directory, OpenLDAP, AWS etc), Identity Providers (like Microsoft Entra ID, Okta, AWS), and many more. You can configure your existing directory/user store or add users in miniOrange.



Apps supported by miniOrange



two factor authentication (2FA) miniOrange authenticator app

miniOrange
Authenticator App

Download miniOrange Authenticator App from Google Play Store    Download
two factor authentication (2FA) google authenticator app

Google
Authenticator App

Download Google App Authenticator from Google Play Store    Download Google App Authenticator from Apple Store
two factor authentication (2FA) authy authenticator app

Authy 2-Factor
Authentication App

Download Authy 2-Factor
Authentication App from Google Play Store    Download Authy 2-Factor
Authentication App from Apple Store
two factor authentication (2FA) Microsoft authenticator app

Microsoft
Authenticator App

Download Microsoft Authenticator App from Google App store    Download Microsoft Authenticator App from Apple store

Follow the Step-by-Step Guide given below to enable Two-Factor Authentication (2FA) for Laravel

1. Configure Laravel in miniOrange

  • Login into miniOrange Admin Console.
  • Go to Apps and click on Add Application button.
  • Laravel Single Sign-On (SSO) add app

  • In Choose Application Type, select SAML/WS-FED from the All Apps dropdown.
  • Laravel Single Sign-On (SSO) choose app type

  • Search for Laravel in the list, if you don't find Laravel in the list then, search for custom and you can set up your application in Custom SAML App.
  • Laravel Single Sign-On (SSO) manage apps

  • Enter the SP Entity ID or Issuer.
  • Enter the ACS URL.
  • Laravel two-factor authentication (2FA)

  • Click Next, now in the Attribute Mapping configure the following attributes as shown in the image below.
  • Laravel two-factor authentication (2FA) : Add Attribute

  • To upload respective app logo for a Custom SAML App, click on Upload Logo tab.
  • Laravel two-factor authentication (2FA) : Update Logo

  • Click on Save.
  • If you don’t want to manually specify the details you can import SP metadata from URL, Text or File. Click on Import SP Metadata button. Popup will appear as shown below -
  • Laravel two-factor authentication (2FA) : configuration steps

    Get IdP Metadata Details to upload to Laravel:

  • Go to Apps >> Manage Apps.
  • Search for your app and click on the select in action menu against your app.
  • Click on Metadata to get metadata details, which will be required later. Click on Link to see the IDP initiated SSO link for Laravel.
  • Laravel two-factor authentication (2FA) : Go to Metadata link

  • Here you will see 2 options, if you are setting up miniOrange as IDP copy the meta details related to miniOrange, if you required to be authenticated via external IDP's (OKTA, AZURE AD, ADFS, ONELOGIN, GOOGLE APPS) you can get metadata from the 2nd Section as shown below.
  • Laravel two-factor authentication (2FA) : Add SAML Application

  • Keep SAML Login URL , SAML Logout URL and click on the Download Certificate button to download certificate which you will require in Step 2.
  • Laravel two-factor authentication (2FA) : Select Metadata details external IDP or miniOrange as IDP

2. Configure SSO in Laravel

3.1: Installing the package using Composer
  • Open a Command Prompt window and change the working directory to your Laravel app’s main directory.
  • Enter the command composer require miniorange/saml-laravel-free.

  • Laravel Single Sign-On (SSO) enter command

  • Note: If you are using Laravel 5.4 or below, you will need to add the following value to the 'providers' array in your app.php file which can be found in the project\config folder :provider\ssoServiceProvider::class

  • You can check your current Laravel version by using the command php artisan --version.

  • Laravel Single Sign-On SSO add following value

  • After successful installation of package, go to your Laravel app in the browser and enter https://<your-host>/mo_admin in the address bar.
  • The package will start setting up your database for you and then redirect you to the admin registration page.
  • Login with credentials you registered with.
  • Select Plugin Settings from the navigation pane on the left.

  • Laravel Single Sign-On SSO plugin settings


3.2: Configuring the plugin
  • You can configure the SP Base URL or leave this option as it is.
  • You need to provide these SP Entity ID and ACS URL values while configuring your Identity Provider.

  • Laravel Single Sign-On (SSO) Service Provider Settings

  • Use your Identity Provider details to configure the plugin.

  • Laravel Single Sign-On (SSO) Identity Provider Settings

  • Click on the Save button to save your settings.

3.3: Test Configuration
  • You can test if the plugin is configured properly or not by clicking on the Test Configuration button.

  • Laravel Single Sign-On SSO Test Configuration

  • You should see a Test Successful screen as shown below along with the user's attribute values.

  • Laravel Single Sign-On (SSO) Test Result


3.4:SSO Options
  • You can configure the Relay State URL in the Service Provider Settings if you want to redirect users to a custom URL after the SSO.
  • Your users can initiate the Single Sign On flow by clicking on the Single Sign On button generated on your login page. If you do not have this page yet, run php artisan make:auth & php artisan migrate to generate the authentication module.


  • Laravel Single Sign-On (SSO) Single Sign-On button


3. Configure 2FA for Laravel

3.1: Enable 2FA for Users of Laravel app

  • To enable 2FA for Users of Laravel application. Go to Policies >> App Login Policy
  • Click on Edit icon against the application you have configured.
  • Two factor-authentication for Laravel | Two Factor Authentication configure 2fa of application

  • Check the Enable 2-Factor Authentication (MFA) option.
  • Two factor-authentication for Laravel | Two Factor Authentication enable 2fa

  • Click on Submit.

3.2: Configure 2FA for your Endusers

  • To enable 2FA/MFA for endusers, go to 2-Factor Authentication >> 2FA Options For EndUsers.
  • Select default Two-Factor authentication method for end users. Also, you can select particular 2FA methods, which you want to show on the end users dashboard.
  • Once Done with the settings, click on Save to configure your 2FA settings.
  • MFA/Two-Factor Authentication(2FA) for   Configure 2FA Panel

3.3: Enduser 2FA Setup

  • Login to End-User Dashboard using end user login URL.
    • For Cloud Version: The login URL (branding url) which you have set.
    • For On-Premise version: The login URL will be the same as of Admin Login URL.
  • Select Setup 2FA from left panel. Then select any of the 2FA method available.
  • For now, we have selected the SMS >> OTP OVER SMS as our 2FA method. You can explore the guide to setup other 2FA methods here.
  • Enable the OTP over SMS if you have your phone number added under your account information else click on Edit >> Click here to update your phone number link.
  • MFA/Two-Factor Authentication(2FA) for  - Click on Edit >> Click here to update your phone number

  • In Account Information, click on edit icon.
  • MFA/Two-Factor Authentication(2FA) for  - Click on Edit icon

  • Select your country code, enter your mobile number, and click Send OTP.
  • MFA/Two-Factor Authentication(2FA) for  - Select Country Code and enter Phone Number

  • Enter the OTP sent to your phone and click Validate.
  • MFA/Two-Factor Authentication(2FA) for  - Enter OTP

  • After adding your phone number, turn on the toggle to activate OTP over SMS.
  • MFA/Two-Factor Authentication(2FA) for  - Switch the toggle

  • Now Enable 2 Factor Authentication toggle if not done before as shown below.
  • MFA/Two-Factor Authentication(2FA) for  Enter mobile number to receive OTP via SMS

4. Test 2FA for Laravel

    a. If 2FA for for End-user is configured

  • Go to your Laravel Domain. It will redirect you to miniOrange Single Sign-On Service console.
  • zoom two factor authentication(2fa) user credentials

  • Enter your login credentials, and click on login. It will prompt to verify yourself against the configured 2fa method.
    e.g. If you have configured OTP over SMS, after login into Laravel it will prompt for OTP.
  • zoom two factor authentication(2fa) otp prompt

  • Enter the OTP received in your phone, after successful 2fa verification, you will be redirected to the Laravel dashboard.
  • b. If 2FA for end-user is not enabled

  • You will be prompted to register for 2Fa for end-user. It's a one time process.
  • Configure your basic details.
  • zoom two factor authentication(2fa) user registration

  • Configure any authentication method of your choice.
  • zoom two factor authentication(2fa) add new security

  • After successful registration, you will be logged in to your Laravel account.

  • Not able to configure or test MFA?


    Contact us or email us at idpsupport@xecurify.com and we'll help you setting it up in no time.


5. Adaptive Authentication with Laravel [This will be released soon]

Adaptive Authentication for Laravel enables administrators to enforce context-aware access policies by evaluating user login conditions such as IP address, device, location and login time. Based on the configured policy, users can be allowed access, challenged with additional verification or denied access. Administrators can also configure email alerts, customize user-facing error messages, review policy settings before deployment and assign adaptive authentication policies to application login policies to strengthen security and prevent unauthorized access.

[Note: The Adaptive Authentication section has been moved from the left navigation menu. You can now access and manage adaptive authentication policies by navigating to Policies >> Adaptive Access Policy.]

A. Restricting access to Laravel with IP Based Access Restriction

    IP Based Access Restriction allows administrators to control user access based on the source IP address of the login request. Administrators can configure trusted or restricted IP addresses and IP ranges and define the action to be taken when a user's IP address matches the configured criteria. During authentication, the user's IP address is evaluated against the configured policy and access is either Allowed, Denied or Challenged based on the selected configuration.

    You can configure Adaptive Authentication with IP Based Restriction in following way :

  • Login to Self Service Console >> Policies >> Adaptive Access Policy section from the left side menu.
  • Adaptive Authentication Policy

  • Click on the Create Policy button on the upper right. Add a suitable policy name and click on Create Policy.
  • Add RBA Policy Name

  • Expand the IP Based Access Restriction section by clicking on the dropdown icon to configure IP-based access rules.
  • Policy Conditions

  • Click Add IP Range to configure IP addresses or IP ranges for the policy.
  • Add IP Range

  • Specify the IP Address that you want to whitelist. For the IP Range other than the whitelisted one, you can select the above setting to reflect.
  • Choose either Allow or Deny by selecting the corresponding option from the dropdown. If a user tries to login with the whitelisted IP address, they will always be allowed access.
  • We support IP address range in three formats i.e., IPv4, IPv4 CIDR and IPv6 CIDR. You can choose whichever is suitable for you from the dropdown menu.
  • You can add multiple IPs or IP ranges by clicking the + Add IP Range button.
  • IP Add Range

  • Once the changes are made, click on Next.
  • Select Action for Behavior Change, choose the appropriate Action and Challenge Type for the user from that section.
  • Action for Behaviour Change

    Action for behavior Change Options :


    Attribute Description
    Allow Allow users to authenticate and use services if Adaptive authentication condition is true.
    Deny Deny user authentications and access to services if Adaptive authentication condition is true.
    Challenge Challenge users with one of the three methods mentioned below for verifying user authenticity.

    Challenge Type Options:


    Attribute Description
    User second Factor

    The User needs to authenticate using the second factor he has opted or assigned for such as

    • OTP over SMS
    • PUSH Notification
    • OTP over Email and many more.
    KBA (Knowledge-based authentication) The System will ask the user for 2 of 3 questions he has configured in his Self-Service Console. Only after the right answer to both questions is the user allowed to proceed further.
    OTP over Alternate Email User will receive an OTP on the alternate email they have configured through the Self Service Console. Once the user provides the correct OTP, they are allowed to proceed further.

  • Click on Next to continue.

B. Restricting access to Laravel with Device Based Access Restriction

    Device Based Access Restriction allows administrators to control user access based on trusted and registered devices. By leveraging device identification and verification mechanisms, administrators can define policies that evaluate the device used during authentication. When a user attempts to log in, the device is assessed against the configured policy and the appropriate action: Allow, Challenge or Deny is applied based on the configured conditions.

    You can configure Adaptive Authentication with Device Based Restriction in following way :

  • Login to Self Service Console >> Policies >> Adaptive Access Policy section from the left side menu.
  • Adaptive Authentication Policy

  • Click on the Create Policy button on the upper right. Add a suitable policy name and click on Create Policy.
  • Add RBA Policy Name

  • Click on the Dropdown option to expand the Device Based Access Restriction section to configure device-based access controls.
  • Device Based Access Restriction

  • Turn on the Enable Device Configuration toggle.
  • Device Based Access Restrictions

  • Configure either Agentless Device Restriction or Agent-Based Device Restriction based on your organization's requirements.
  • Agentless Device Restriction: Verifies and manages trusted devices without requiring any software or agent installation on the endpoint. It uses browser and device-based identification methods to evaluate device trust and enforce access policies during authentication.
  • Agent-Based Device Restriction: Provides enhanced device trust verification by using a lightweight agent installed on managed devices. It enables advanced device validation and risk-based access control to ensure that only trusted devices can access protected resources.
  • Device Restriction Type

  • Click here to get more information about Device Based Restriction.
  • Once the changes are made, click on Next.
  • Under Action for Behaviour Change, select the appropriate action and challenge type for the policy.
  • Action for Behaviour Change

  • Click on Next to continue.

C. Restricting access to Laravel with Location Based Access Restriction

    In location restrictions, admin configures a list of locations where they want to allow end-users to either login or deny based on the condition set by the admin. When a user tries to login with adaptive authentication enabled, their Location Attributes, such as (Latitude, Longitude and Country Code) are verified against the Location list configured by the admin. Based on this user will be either allowed, challenged or denied.

    You can configure Adaptive Authentication with Location Based Restriction in following way :

  • Login to Self Service Console >> Policies >> Adaptive Access Policy section from the left side menu.
  • Adaptive Authentication Policy

  • Click on the Create Policy button on the upper right. Add a suitable policy name and click on Create Policy.
  • Adaptive Authentication: Add RBA Policy

  • Click on the Dropdown to expand the Location Based Access Restriction section to configure location-based access rules.
  • Adaptive Authentication: Location Based Restriction

  • Select Register Location if User Completes Challenge to automatically register a user's location after successful challenge verification.
  • Click on Add Location.
  • Location Configuration

  • In the Search Location field, enter the location name and select the appropriate location from the search results.
  • Specify the radius around the selected location and choose the distance unit (KM or Miles). This will be the total area in and around the location we have configured using the Latitude and Longitude points.
  • For each configured location, select whether access should be Allowed or Denied.
  • Adaptive MFA Location Restriction

  • You can click on the Add Location button to add more than one location and then follow steps 2-4 as mentioned above.
  • Once the changes are made, click on Next.
  • Select your Action for behavior Change and Challenge Type for user from the Action for behavior Change Section.
  • Action for Behaviour Change

  • Click on Next to continue.

D. Restricting access to Laravel with Time Based Access Restriction

    In time restriction, admin configures a time zone with Start and End Times for that timezone and users are either allowed, denied or challenged based on the condition in the policy. When an end-user tries to login with the adaptive authentication enabled, their time zone-related attributes such as Time-Zone and Current System Time, are verified against the list configured by the admin and based on the configuration, the user is either allowed, denied or challenged.

    You can configure Adaptive Authentication with Time Based Restriction in following way :

  • Login to Self Service Console >> Policies >> Adaptive Access Policy section from the left side menu.
  • Adaptive Authentication Policy

  • Click on the Create Policy button on the upper right. Add a suitable policy name and click on Create Policy.
  • Add RBA Policy Name

  • Expand the Time Based Access Restriction section by clicking on the dropdown icon to Time Based Access Restriction rules.
  • Expand Time Based Access Restriction

  • Enter the Login Window Buffer Time (Minutes) to allow a grace period before the start time and after the end time of the configured login window. If no value is specified, the default buffer time of 0 minutes is applied.
  • Click Add Time to create a time-based access rule.
  •  Click on Add Time

  • Select the required Timezone, configure the Start Time and End Time and choose the applicable days.
  • For each time-based rule, select whether access should be Allowed or Denied.
  • Adaptive MFA Time Restriction

  • Click on the Add Time to add more than one timezones.
  • Once the changes are made, click on Next.
  • Select your Action for behavior Change and Challenge Type for user from the Action for behavior Change Section.
  • Action for Behaviour Change

  • Click on Next to continue.

E. Email Alerts and Custom Email Message

    This section handles the notifications and alerts related to Adaptive Access Policy. It provides the following options:

  • Send email alerts: Configure the recipients who should receive email notifications when adaptive authentication events occur. Alerts can be sent to administrators, end users or both, depending on your monitoring and security requirements.
    • Send email alerts to administrators: Enable this option to notify administrators when configured adaptive authentication events are triggered. You can optionally specify an email address under Administrator's e-mail address to receive alerts to receive alerts; otherwise, alerts are sent to the default administrator account.
    • Send Email Alerts To

    • Send email alerts to end users: Enable this option to notify end users when adaptive authentication events affect their login attempts or device registrations.
      • Number of Device Registrations Exceeded Allowed Count: When enabled, end users receive an email notification if they attempt to register more devices than the maximum number allowed by the configured device restriction policy. (Available only for end-user notifications.)
      • Get Email Alerts

  • Get email alerts if users login from unknown devices or locations: Admins need to enable this option to enable receiving alerts for different alert options.

  • Option Description
    Users login from unknown IP addresses, devices or locations Enabling this option allows you to login from unknown IP addresses or devices and even locations.
    Challenge Completed and Device Registered Enabling this option allows you to send an email alert when an end-user completes a challenge and registers a device.
    Challenge Completed but Device Not Registered Enabling this option allows you to send an email alert when an end-user completes a challenge but do not registers the device.
    Challenge Failed Enabling this option allows you to send an email alert when an end-user fails to complete the challenge.

    Receive Email Alerts

  • In case you want multiple admin accounts to receive alerts, then you can enable the option for admin and then enter the admin emails separated by a ',' in the input field next to Administrator's email to receive alerts label. To enable alerts for the end users, you can enable the End User checkbox.
  • In case you want to customize the deny message that the end user receives in case his authentication is denied due to adaptive policy, you can do this by entering the message inside Deny Message text box.
  • Customize Deny Message

F. Review

    Review the configured policy conditions, behavior change actions, email alert settings and custom error messages before creating the adaptive authentication policy. This step provides a consolidated view of all configured settings, allowing you to verify the policy configuration and make any necessary changes before saving.

    Review Section

  • Click on Create Policy.

G. Add Adaptive Authentication policy to Laravel

  • Login to Self Service Console >> Policies >> App Login Policy.
  • Click on Edit icon option for predefined app policy.
  • Edit 2FA Policy

  • Set your policy in the Policy Name and select Password as First Factor.
  • Edit Login Policy

  • Enable Adaptive Authentication on Edit Login Policy page and select the required restriction method as an option.
  • From Select Login Policy dropdown select the policy we created in last step.
  • Apply Restrictions Using: Configure how multiple adaptive authentication restrictions should be evaluated during user login.
    • AND: All enabled restrictions must be successfully satisfied for the login attempt to be allowed.
    • OR: At least one enabled restriction must be successfully satisfied for the login attempt to be allowed.
  • Enable Adaptive Authentication

  • Adaptive Authentication Restrictions: Configure additional login restrictions and verification conditions to strengthen account security and control user access based on contextual risk factors.
    • IP Restriction: Restrict login access to specific IP addresses or IP ranges for enhanced security.
    • Device Restriction: Allow login access only from trusted or pre-authorized devices.
    • Location Restriction: Control user login access based on geographic location.
    • Time Restriction: Restrict user login access to specific days or time periods.
    • Force MFA On Each Login Attempt: Require users to complete MFA verification during every login attempt regardless of device or session state.
  • Apply Restrictions Using

How to add a trusted Device

  • When End-user log in to the self service console after the policy for device restriction is on, he is provided the option to add the current device as a trusted device.

External References

Want To Schedule A Demo?

Request a Demo
  



Our Other Identity & Access Management Products