Zoho Single Sign-On (SSO)
Zoho Single Sign-on (SSO) solution by miniOrange provides secure access to Zoho for enterprises and full control over access of Zoho application. Single Sign-On (SSO) solution for Zoho is a cloud based service. With this service you need only one password credentials for all your web & SaaS apps including Zoho using user stored in Active Directory (AD) domain. miniOrange provides secure access and full control to Zoho for enterprises and applications. With the help of the given guide you can configure Zoho easily.
To create a SAML connection between Zoho and miniOrange, you will need to provide some details from Zoho to miniOrange, and vice versa. You can get Zoho's details from the Zoho metadata and provide them to miniOrange while configuring SAML. Similarly, you will need to get the required details from miniOrange to configure SAML in Zoho.
Pre-requisite
- If you're already a Zoho One user, proceed to the next point. If you haven't signed up yet, log in to Zoho One and complete the registration. Registering with Zoho One is necessary to enable Single Sign-On (SSO) configurations in Zoho Accounts.
- Login to Zoho Account.
- In the left panel, under Organization, click SAML Authentication.
- Click Download Metadata. A file named "zohometadata.xml" will be downloaded. (Will be required later)
Follow the step-by-step guide given below for configuring the Zoho Single Sign-On (SSO)
1. Configure Zoho in miniOrange
- Login into miniOrange Admin Console.
- Go to Apps and click on Add Application button.
- In Choose Application Type click on SAML/WS-FED application type.
- Search for Zoho in the list, if you don't find Zoho in the list then, search for custom and you can set up your application via Custom SAML App.
- Click on Import SP Metadata button.
- Enter the App name as Zoho, select the File format and upload the metadata file we downloaded earlier (in the Prerequisites section) form Zoho Account. Click on Import button.
- Go to the Attributes mapping section and make sure that NameID format is selected as email address.
- Click on Save.
- Go to Apps.
- Search for your app and click on the select against your Zoho app.
- Click on Metadata to get metadata details, which will be required later.
- You'll find two sections here. If your users are going to be stored and authenticated from miniOrange, go to the first section INFORMATION REQUIRED TO SET MINIORANGE AS IDP, and click the Show Metadata Details button.
- If your users will be stored and authenticated from some other user store, proceed to the second section INFORMATION REQUIRED TO AUTHENTICATE VIA EXTERNAL IDPS, and click the Show Metadata Details button.
2. Configure Single Sign-on (SSO) in Zoho Admin Account
- Go to the Zoho Account, in the side navigation go to Organisation > SAML Authentication and click on Set up Now.
- In the SAML Authentication popup, enter the SAML Login URL in Sign-in URL field and SAML Logout URL in Sign Out URL field.
- In X.509 Certificate field, upload the certificate file downloaded in the previous step.
- Click Submit. miniOrange as an IDP is configured successfully.
3. Test SSO Configuration
4. Additional Parameters
Additional Parameters for Zoho SSO (Optional)
- Based on your SAML requirements, you can make use of the following options as well:
Sign SAML requests:
- For SP-initiated SAML, Zoho will send SAML requests to your IdP (to authenticate the user). Your IdP may require that these requests are signed to ensure that:
- The requests are coming from Zoho and not any other source.
- The information sent in the request is not altered by a malicious actor.
- To meet this signature requirement, you can enable the option to sign all SAML requests Zoho sends. A public key will be generated and available for download (on the SAML Authentication page). You'll need to provide this public key to your IdP for verifying the signed requests.
Generate key pair
- After your IdP authenticates a user, it will send a SAML response to Zoho, which contains information about the authenticated user, among other details. To maintain the confidentiality of this information, the IdP may require that SAML responses be encrypted. To meet this requirement, you can generate a cryptographic key pair of public and private key. The private key will be kept secure. The public key will be available for download, and you'll need to provide it to your IdP. Your IdP will use this public key to encrypt the information in SAML responses and send them to Zoho. Since this information can only be decrypted using the private key that Zoho has kept secure, the information sent in responses remains confidential between your IdP and Zoho.
- Note: If you enable the option Sign SAML requests, a key pair will be generated automatically.
Single Logout
- There are two types of Single logout (SLO):
- SP-initiated SLO: When users sign out of Zoho, they will be automatically signed out of the IdP as well.
- IdP-initiated SLO: When users sign out of the IdP, they will be automatically signed out of Zoho as well.
- For SLO to work, it must be supported by the IdP. Some IdPs support only one type of SLO, some support both, and some support none.
- To configure Single logout for your organization, you need to:
- Enable the Single logout option.
- Provide your IdP's sign-out URL to Zoho while configuring SAML.
- Provide Zoho's sign-out URL to your IdP. Zoho's sign-out URL can be found in the metadata file under the tag {md:SingleLogoutService}. For IdPs that are supported, the steps to enable single logout are described in the respective SAML help articles.
Just-In-Time provisioning
- Just-in-Time (JIT) provisioning allows your users to get added to your Zoho organization when they sign in to Zoho for the first time through SAML. They will be added after validating the SAML response and their domain. If JIT is not enabled, you have to manually add your users to your Zoho organization before they can sign in with SSO.
- Using JIT, you can also retrieve and auto-fill some user information fields in Zoho (from the IdP). To do that, map the following Zoho user information fields with the corresponding fields from your IdP when you enable JIT:
- First Name
- Last Name
- Display Name
- Your IdP may either pre-define the attribute names or let you enter an attribute name of your own. If the latter is the case, enter an attribute name in Zoho and use the same name in your IdP.
5. Configure Your User Directory (Optional)
miniOrange provides user authentication from various external sources, which can be Directories (like ADFS, Microsoft Active Directory, Azure AD, 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.
- 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. 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.
Refer our guide to setup LDAPS on windows server.
User Import and Provisioning from AD
- 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.
Connect with External Source of Users
miniOrange provides user authentication from various external sources, which can be Directories (like ADFS, Microsoft Active Directory, Azure AD, OpenLDAP, Google, AWS Cognito etc), Identity Providers (like Shibboleth, Ping, Okta, OneLogin, KeyCloak), Databases (like MySQL, Maria DB, PostgreSQL) and many more.
6. Adaptive Authentication with Zoho
A. Restricting access to Zoho with IP Blocking
B. Adaptive Authentication with Limiting number of devices.
Using Adaptive Authentication you can also restrict the number of devices the end user can access the Services on. You can allow end users to access services on a fixed no. of devices. The end users will be able to access services provided by us on this fixed no. of devices.
You can configure Adaptive Authentication with Device Restriction in following way
- Login to Self Service Console >> Adaptive Authentication.
- Add a Policy Name for your Adaptive Authentication Policy.
- Select your Action for behavior Change and Challenge Type for user from the Action for behavior Change Section.
- Scroll down to Device Configuration section and enable Allow User to Register Device option to allow users to register their devices.
- Enter the Number of Devices which are allowed to register in field next to Number of Device Registrations Allowed
- Choose Action if number of devices exceeded (This will override your setting for Action for behavior Change.)
- Challenge: The user needs to verify himself using any of the three methods mentioned in table in step 6.1
- Deny : Deny users access to the system
- Enable option Send email alerts to Users if number of Device registrations exceeded allowed count if you want to alert the user about no of devices exceeding the limit. Save the configuration.
C. Add Adaptive Authentication policy to Zoho.
- Login to Self Service Console >> Policies.
- Click on Edit option for predefined app policy.
- Set your application name in the Application and select password as Login Method.
- Enable Adaptive Authentication on Policy page and select the required restriction method as an option.
- From Select Login Policy dropdown select the policy we created in last step and click on save.
D.Notification and Alert Message.
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