BigCommerce Single Sign-On (SSO) solution by miniOrange provides seamless access into BigCommerce Store using your existing credentials from any preferred External Directory of your choice. This allows organizations to securely access their BigCommerce Store and easily manage user access, while also providing a seamless login experience for end-users. A One in all solution for - Centralized Management & Storage of customer data, Store to Store sync, Order status notification, Social login —> for your BigCommerce Store.
With BigCommerce SSO & CIAM features, you can:
Enable your users to automatically log into BigCommerce Store.
miniOrange offers free help through a consultation call with our System Engineers to Install or Setup BigCommerce SSO solution in your environment with 30-day free trial.
For this, you need to just send us an email at idpsupport@xecurify.com to book a slot and we'll help you in no time.
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.
Prerequisites
Please make sure your organisation branding is already set under Customization >> Login and Registration Branding in the left menu of the dashboard.
Follow the Step-by-Step Guide given below for BigCommerce Single Sign-On (SSO)
Endpoint where you wish to redirect the user to after sso. [Homepage or account page e.g. /account.php]
operation
customer_login
Click on Save.
Now, You can access BigCommerce Account Using IDP credentials through the Single-sign-on URL as shown in image above.
If you are using an external IDP:
Enter the Client Id, App Secret and Access Token (which we have downloaded from step 1 during API creation in BigCommerce Console).
For Signature Algorithm, select HS-256 from the dropdown menu.
Set Subject to E-Mail Address.
You need to map the following attributes coming in from the idp by choosing the external IDP option.
Click on Save.
Now, You can access BigCommerce Account Using IDP credentials through the Single-sign-on URL as shown in image above.
3. Configure Your User Directory (Optional)
miniOrange provides user authentication from various external sources, which can be Directories (like ADFS, Microsoft Active Directory, Microsoft Entra ID, OpenLDAP, Google, AWS Cognito etc), Identity Providers (like Okta, Shibboleth, Ping, OneLogin, KeyCloak), Databases (like MySQL, Maria DB, PostgreSQL) and many more. You can configure your existing directory/user store or add users in miniOrange.
Here, fill the user details without the password and then click on the Create User button.
After successful user creation a notification message "An end user is added successfully" will be displayed at the top of the dashboard.
Click on Onboarding Status tab. Check the email, with the registered e-mail id and select action Send Activation Mail with Password Reset Link from Select Action dropdown list and then click on Apply button.
Now, Open your email id. Open the mail you get from miniOrange and then click on the link to set your account password.
On the next screen, enter the password and confirm password and then click on the Single Sign-On (SSO) reset password button.
Now, you can log in into miniOrange account by entering your credentials.
2. Bulk Upload Users in miniOrange via Uploading CSV File.
Navigate to Users >> User List. Click on Add User button.
In Bulk User Registration Download sample csv format from our console and edit this csv file according to the instructions.
To bulk upload users, choose the file make sure it is in comma separated .csv file format then click on Upload.
After uploading the csv file successfully, you will see a success message with a link.
Click on that link you will see list of users to send activation mail. Select users to send activation mail and click on Send Activation Mail. An activation mail will be sent to the selected users.
Click on External Directories >> Add Directory in the left menu of the dashboard.
Select Directory type as AD/LDAP.
STORE LDAP CONFIGURATION IN MINIORANGE: Choose this option if you want to keep your configuration in miniOrange. If active directory is behind a firewall, you will need to open the firewall to allow incoming requests to your AD.
STORE LDAP CONFIGURATION ON PREMISE: Choose this option if you want to keep your configuration in your premise and only allow access to AD inside premises. You will have to download and install miniOrange gateway in your premise.
Enter LDAP Display Name and LDAP Identifier name.
Select Directory Type as Active Directory.
Enter the LDAP Server URL or IP Address against LDAP Server URL field.
Click on Test Connection button to verify if you have made a successful connection with your LDAP server.
In Active Directory, go to the properties of user containers/OU's and search for Distinguished Name attribute.
Enter the valid Bind account Password.
Click on Test Bind Account Credentials button to verify your LDAP Bind credentials for LDAP connection.
Search Base is the location in the directory where the search for a user begins. You will get this from the same place you got your Distinguished name.
Select a suitable Search filter from the drop-down menu. If you use User in Single Group Filter or User in Multiple Group Filter, replace the <group-dn> in the search filter with the distinguished name of the group in which your users are present. To use custom Search Filter select "Write your Custom Filter" option and customize it accordingly.
You can also configure following options while setting up AD. Enable Activate LDAP in order to authenticate users from AD/LDAP. Click on the Save button to add user store.
Here's the list of the attributes and what it does when we enable it. You can enable/disable accordingly.
Attribute
Description
Activate LDAP
All user authentications will be done with LDAP credentials if you Activate it
Sync users in miniOrange
Users will be created in miniOrange after authentication with LDAP
Fallback Authentication
If LDAP credentials fail then user will be authenticated through miniOrange
Allow users to change password
This allows your users to change their password. It updates the new credentials in your LDAP server
Enable administrator login
On enabling this, your miniOrange Administrator login authenticates using your LDAP server
Show IdP to users
If you enable this option, this IdP will be visible to users
Send Configured Attributes
If you enable this option, then only the attributes configured below will be sent in attributes at the time of login
Click on Save. After this, it will show you the list of User stores. Click on Test Connection to check whether you have enter valid details. For that, it will ask for username and password.
On Successful connection with LDAP Server, a success message is shown.
Click on Test Attribute Mapping.
Enter a valid Username. Then, click on Test. Mapped Attributes corresponding to the user are fetched.
After successful Attribute Mapping Configuration, go back to the ldap configuration and enable Activate LDAP in order to authenticate users from AD/LDAP.
Go to Settings >> Product Settings in the Customer Admin Account.
Enable the "Enable User Auto Registration" option and click Save.
(Optional) To send a welcome email to all the end users that will be imported, enable the "Enable sending Welcome Emails after user registration" option and click Save.
From the Left-Side menu of the dashboard select Provisioning.
In Setup Provisioning tab select Active Directory in the Select Application drop-down.
Toggle the Import Users tab, click on Save button.
On the same section, switch to Import Users section.
Select Active Directory from the dropdown and click on the Import Users tab, to import all the users from Active Directory to miniOrange.
You can view all the Users you have imports by selecting Users >> User List from Left Panel.
All the imported users will be auto registered.
These groups will be helpful in adding multiple 2FA policies on the applications.
miniOrange integrates with various external user sources such as directories, identity providers, and etc.
For testing SSO configurations, you will need the SSO initiating URL. Edit the JWT app you just created and scroll to the bottom, you will see a Single Sign On URL.
Copy the SSO URL and hit it in an incognito/private window. You should be redirected to your IDP and after successful login, be redirected to your store as a logged-in user.
Note: If you have any issues while testing the SSO configurations, Click here to troubleshoot.
If the above step is successful, we now need to add the SSO URL against the login links in your storefront.
Login to BigCommerce as an admin and go to Channel Manager >> Edit Storefront settings >> Themes >> Advanced >> Edit Theme Files.
This should open up a new window with theme files. We will be adding the SSO URL for both Desktop and Mobile/tablet view. The below steps are valid only for cornerstone theme, if you’re using a different theme, you might have to make the changes accordingly.
For Desktop view, Navigate to Templates >> Components >> Common and open navigation.html.
Replace the href attribute href="{{urls.auth.login}}" to href=" and click on Save and Apply File.
Similarly, for Mobile view, navigate to Templates >> Components >> Common and open navigation-menu.html.
Replace the href attribute href="{{urls.auth.login}}" to href=" and click on Save and Apply File.
Now, you can test SSO by going to your storefront URL and clicking on login.
5. Configure SLO in BigCommerce
Download the script to initiate SLO in BigCommerce.
Navigate to Storefront >> Script Manager.
Click on create a script and add the script file which you have downloaded earlier in the footer of the page.
Enable settings as given in the image below:
A text box will be opened where you can add the downloaded script.
Perform SSO/Test configuration and reproduce the issue.
Scroll up in the network tab and find the first occurrence of your storefront URL. You should see a URL with file mentioning a token starting from ey…. As shown below:
Copy the URL after token/. It should contain everything starting from eyJ…. To the end.
Go to https://jwt.io/. Remove the existing encoded string and paste your token in left tab as shown below:
In the right tab, check if the token contains the below attributes:
email
first_name
last_name
customer_id
store_hash
operation
If any attribute is not present, and you’re using an Identity Source other than miniOrange, please check if the attributes email, first_name, last_name are being sent from your IDP. You might have to fix your attribute mapping and try again.