SAML Single Sign-On (SSO) For Laravel Using Salesforce As IDP

SAML Single Sign-On (SSO) For Laravel Using Salesforce As IDP


Laravel SAML Single Sign-On (SSO) plugin gives the ability to enable SAML Single Sign-On for your laravel applications. Using Single Sign-On you can use only one password to access your laravel application and services. Our plugin is compatible with all the SAML compliant Identity providers. Here we will go through a step-by-step guide to configure Single Sign-On (SSO) between Laravel and Salesforce considering Salesforce as IdP.

Pre-requisites : Download And Installation

  • Open a Command Prompt window and change the working directory to your Laravel app's main directory.
  • Enter the below command.
    composer require miniorange/saml-laravel-free
  • Laravel Single Sign On SSO enter commond
  • 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.
  • Register or log in with your account by clicking the Register button to configure the plugin.
  • Laravel Single Sign On SSO plugin settings
  • After login, you will see the Service Provider Settings option, where you will get the service provider metadata. Keep the metadata handy as it will be required later to configure step 1.
  • Laravel Single Sign On SSO Service Provider Settings

Steps to configure Salesforce Single Sign-On (SSO) Login into Laravel

1. Configure Salesforce as Identity Provider

  • Log into your Salesforce account as admin.
  • Switch to Salesforce Lightning mode from profile menu and then go to the Setup page by clicking on setup button.
  •  Salesforce SAML Single Sign-On(SSO) in Laravel-Salesforce SSO Login
  • From the left pane, select Settings Tab and click on Identity Provider.
  •  Salesforce SAML Single Sign-On(SSO) in Laravel-Salesforce SSO Login
  • Click on Enable Identity Provider.
  • SAML Single Sign on (SSO) using Salesforce Identity Provider, Create SP via connected apps
  • In the Service Provider section, click on the link to create the Service Provider using Connected Apps.
  •  Salesforce SAML Single Sign-On(SSO) in Laravel-Salesforce SSO Login
  • Enter Connected App Name, API Name and Contact Email.
  • Connected App Name Provide a name for Connected App
    API Name Provide a API name
    Contact Email Provide a Contact Email
    Salesforce SAML Single Sign-On(SSO) in Laravel-Salesforce SSO Login
  • Under the Web App Settings, check the Enable SAML checkbox and enter the following values:
  • Enable SAML Checked
    Entity ID SP-EntityID / Issuer from Service Provider Metadata tab of the Plugin
    ACS URL ACS (AssertionConsumerService) URL from Service Provider Metadata tab of the Plugin
    Subject Type Username
    Name ID Format urn:oasis:names:tc:SAML:2.0:nameid-format:unspecified
    Salesforce SAML Single Sign-On(SSO) in Laravel-Salesforce SSO Login
  • Click on Save to save the configuration.
  • Now from the left pane, under Platform Tools section select Connected Apps.
  • Then select Manage Connected Apps and click on the app you just created.
  • Salesforce SAML Single Sign-On(SSO) in Laravel-Salesforce SSO Login
  • In the Profiles section click Manage Profiles button.
  • Assign the Profiles you want to give access to log in through this app.
  • Salesforce SAML Single Sign-On(SSO) in Laravel-Salesforce SSO Login
  • Under SAML Login Information, click on Download Metadata Keep this metadata handy for configuring the Service Provider.
  • Download Identity Providers metadata - Salesforce SAML Single Sign-On(SSO) in Laravel-Salesforce SSO Login

    You have successfully configured Salesforce as SAML IdP (Identity Provider) for achieving Salesforce SSO login into your Laravel Site.

2. Configure Laravel SAML plugin as Service Provider

  • Go to the miniOrange Laravel SAML 2.0 SSO plugin and click on Choose File button next to the Upload Meatadata option.
  • Select the metadata file we downloaded from the salesforce apps and click on Upload button.
  • Laravel Single Sign On SSO Identity Provider Settings
  • Click on Test Configuration button to test whether the SAML Configuration you've done is correct. On successful test configuration, you will get the different user attributes returned by your identity Provider in a test configuration table.
  • Laravel Single Sign On SSO Test Configuration Laravel Single Sign On SSO Test Result

3. SSO Options

  • 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 the below commands to generate the authentication module.

      composer require laravel/ui

      php artisan ui vue --auth

      npm install && npm run dev

      php artisan migrate


  • Laravel Single Sign On SSO Single Sign On button

In this Guide, you have successfully configured Salesforce SAML Single Sign-On (Salesforce SSO Login) choosing Salesforce as IdP and Laravel as SP using miniOrange plugin-SAML Single Sign On – SSO Login. This solution ensures that you are ready to roll out secure access to your Laravel site using Salesforce login credentials within minutes.

Additional Resources

Hello there!

Need Help? We are right here!

support
Contact miniOrange Support
success

Thanks for your inquiry.

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