Single Sign-On for HubSpot application enables secure login into HubSpot CMS landing pages, blogs and other pages using Googleas OAuth provider. It supports advanced Single Sign-On (SSO) features such as user profile Attribute mapping, etc.
Here we will go through a guide to configure SSO between HubSpot and Google. By the end of this guide, users should be able to login to HubSpot from Google. To know more about Single Sign-On for HubSpot and other HubSpot Integrations, you can
click here.
Feel free to contact us at hubapps@xecurify.com to know more about how to install the Single Sign-On for HubSpot app by miniOrange.
Pre-requisites : Download And Installation
Steps to configure Single Sign-On for HubSpot Login with Google as Identity Provider
Step 1: Setup Google as OAuth Provider
- Go to https://console.developers.google.com/ and sign up/login.
- Click on Select Project to create a new Google Apps Project,you will see a popup with the list of all your projects.
- You can click on the New project button to create new project.
- Enter your Project name under the Project Name field and click on Create.
- Go to Navigation MenuAPIs & ServicesCredentials.
- Click on Create Credentials button and then select OAuth Client ID from the options provided.
- In case you are facing some warning saying that in order to create an OAuth Client ID, you must set a product name on consent screen (as shown in below image). Click on the Configure consent screen button.
- Choose how you want to configure and register your app and click on create button.
- Enter the required details such as App Name, User Support Email. and click on Save and Continue button.
- Now for configuring scopes, click on Add or Remove the Scopes button.
- Now, Select the Scopes to allow your project to access specific types of private user data from their Google Account and click on Update button.
- Go to the Credentials tab and click on Create Credentials button. Select Web Application from dropdown list to create new application.
- Enter the name you want for your Client ID under the name field and enter the Redirect/Callback URI from miniOrange OAuth Client plugin/module under the Authorized redirect URIs field and click on Create button.
- You will see a popup with the Client ID and Client Secret Copy your Client ID and Client Secret and save it on your miniOrange OAuth Client plugin Configuration.
Step 2: Setup HubSpot as OAuth Client
- Go to the miniOrange Single Sign-On (SSO) app and login with your credentials.
- Choose your account by clicking on Choose Account button.
- After that Click on the right icon for accessing the application.
- Go to the miniOrange’s Single Sign On app dashboard and click on App Configurations tab.
- Here, select your application and click on it. If your app is not present here you can create a custom OAUTH 2.0 or OIDC (Open ID Connect protocol) app as per your provider's implementation.
- Enter the Login Button Text and copy the Callback URL to set up the Identity Provider ( Third Party App) you would like to authenticate with.
- Now, to set up Single Sign-On ( OAuth SSO ) from the Identity Provider, you will need to enter the Client ID, Client secret,and Scope, and enable Send in Header and Endpoints from google (Refer the below table).
Client ID |
Click Here |
Client Secret |
Click Here |
Scope |
openid email profile |
Header / Body Setting |
Enable the Send in Body parameter option
|
Authorize Endpoint: |
https://accounts.google.com/o/oauth2/auth |
Access Token Endpoint: |
https://www.googleapis.com/oauth2/v4/token |
Get User Info Endpoint: |
https://www.googleapis.com/oauth2/v1/userinfo |
- When you have filled out all the details, click the Save & Test Configuration button.
- On successful authentication, you will see the list of User Profile details.
Step 3: Configure Page Restriction into the HubSpot ( Website, Landing Pages, Blogs, Knowledge Base )
Our Page Restriction feature allows you to protect your HubSpot website from unauthorized access. It is useful for securing sensitive information. Using this method, you can restrict access to HubSpot pages/content. Visitors will need to sign in before accessing HubSpot pages.
- After you have received the test configuration result, click on the Page Restriction tab.
- Select the checkbox next to the page you wish to protect from unauthorized users and click Save to save the information.
- Once you go to the page URL that you restricted, you will see the login window of your identity provider where you'll enter your credentials.
- After logged in, you will be redirected successfully to the website page.
Step 4: Configure Contact Sync in HubSpot
Contact synchronization is a powerful feature that enables seamless integration and synchronization of contact information between HubSpot and external platforms or applications. With Contact Sync, you can ensure that your customer data is up to date, accurate, and consistent across multiple systems, saving you time and eliminating manual data entry.
- To sync the contact details, go to the APP Configurations tab and choose the provider you created.
- Click on the Edit icon below the Contact Attribute Mapping option.
- You will see the HubSpot Contact Attributes and IDP Attributes option, Map your HubSpot contact attribute with a third-party application / IDP attribute received in the test configuration result. Additionally, if multiple attributes are required, you can add them using the Custom Attribute Mapping option.
- After adding all the attributes, make sure you have enabled the Contact sync option. Click on the Save button.
- You can now find the contact in HubSpot Contacts. This is a great way to generate leads, as it allows you to quickly and easily add new contacts to your HubSpot sales and marketing pipelines. Contact sync allows you to ensure that your HubSpot account is always updated with the latest information about your leads and customers (site visitors), which can help you generate more qualified leads.
Step 5: How to uninstall our app from a HubSpot portal
- To uninstall our app, go to your HubSpot account and click on Settings icon.
- Go to Integrations and click on Connected Apps.
- You will see the list of app, select our app and click on Actions button. And then click on Unistall option.
- Type "uninstall" below to continue and click uninstall button.
Step 6: How to disconnect the app from HubSpot?
- Go to the Page Restriction tab.
- Deselect your HubSpot pages as shown in the screenshot below and click on the Save button. This will disconnect our app for SSO from your HubSpot portal.
Congratulations! You have successfully disconnected HubSpot Single Sign-On by miniOrange application.
Troubleshooting / FAQs
How disconnecting and uninstalling affects users' HubSpot accounts and data?
Uninstalling removes the app and its configurations, preventing users from Single Sign-On (SSO) access to HubSpot pages. Disconnecting only detaches pages from SSO, leaving the app settings intact, and allowing for pages to be reconfigured for SSO access again.
I get the following: {"status":"failed","message":"Error in fetching the token from the OAuth provider."}
- Make sure you have checked one or both of the following checkboxes in the “HubSpot App configuration” setting.
- If your IdP needs the credentials in the header, you will need to check the Header checkbox.
- Save the configuration and then click test configuration.
- If this does not solve your problem, you can try selecting both the Header and Body checkboxes.
- Likewise, if your IdP needs the credentials in the body, you have to select the Body checkbox.
- Once you have checked the appropriate checkboxes, you will get the attributes table in the test configuration window.
My test configuration was successful but when I try to log in I am stuck in a redirect loop.
There are a couple of reasons why this can happen:
1. Caching is enabled on the website.
When auto-redirect is enabled, the user is redirected to IDP login page and after logging in back to the main site but as caching is enables it redirects to the IDP login page hence a loop.
2. HTTP/HTTPS discrepancy:
This happens when HTTPS is not enforced on the site but is configured on IDP side with HTTPS URL.This can be solved by enforcing HTTPS on the site by defining a redirect rule in the .htaccess file or at the Apache level.
3. Cookie adulteration:
The cookie created by the plugin after logging in the user is altered by another plugin which causes the user to not log in WordPress site but the session is created on IDP.
Getting Error : ‘Invalid Response’
There can be 2 possibilities:
- Either your App supports OAuth 2.0 protocol and you’ve configured with OpenID Connect protocol and vice-versa. In this case, if you’ve configured the App using Custom OAuth2.0 App, reconfigure it with Custom OpenID Connect App and if you’ve configured the App using Custom OpenID Connect App, reconfigure it with Custom OAuth 2.0 App. It should fix this issue for you.
- If the above solution doesn’t work then the other possibility is your app/provider doesn’t follow the standard OAuth 2.0/ OpenID Connect protocol. In this case, get in touch with hubapps@xecurify.com with your app/provider request/response format documentation and technician will get back to you with a solution.
I am getting the error message "Invalid response received"
To fix this issue, please configure the correct Token and User info endpoint in the HubSpot SSO application endpoint table. You can confirm the correct format of the endponit from HERE.
Additional Resources
Need Help?
Mail us on hubapps@xecurify.com for quick guidance(via email/meeting) on your requirement and our team will help you to select the best suitable solution/plan as per your requirement.