Implementing Login with Siebel CRM via API Authentication
Siebel CRM Systems, Inc. is a software company principally engaged in the design, development, marketing, and support of customer relationship management (CRM) applications. At first, known mainly for its sales force automation products, the company expanded into the broader CRM market.
To manage all user accounts Client needed to have a centralized system. They also needed to provide a SSO solution to all users to log into multiple apps seamlessly, where the information is stored in a Siebel CRM system. Without miniOrange, they would have to integrate with Siebel CRM and build a new SSO system from the groundwork. With miniOrange, the Client was able to use their existing System and Data source and even use the SSO feature without any problem. It was built for the Magento system.
How Does it Works?
- The User Navigates to the application of his choice, from which he requires services.
- A SSO request is sent to miniOrange IdP system where required information is stored.
- New User is redirected to the registration form, where he fills all the necessary information like email id, phone number.
- User fills the form, the information is stored in Siebel CRM. Every user in the CRM has a unique Membership ID, which he/she can use to login to desired application.
- For already existing user, fetch the membership ID from CRM.
- Respond with membership ID corresponding to the user details.
- SSO response.
- After receiving SSO response from miniOrange, the app gives access to the users.
How to Configure
Implementation of this particular system can be done with any kind of system, but for understanding purpose, we chose WordPress platform into which we will be using Oauth plugin.
Steps
1) Install “miniOrange OAuth Single Sign On” plugin in your WordPress site. Activate the plugin, you will see the name on your admin menu.
2) In New tab, Login to miniOrange using URL https://login.xecurify.com
Go to Apps->Configure Apps.
3) Select the “Oauth/OIDC” tab, click on OpenID Connect Icon.
4) You will see the following window, Enter all the details. Copy the Callback/Redirect URL from the plugin page and paste it here. It can vary from user to user. Click on the Save Button.
5) Click On “Apps” present on the sidebar menu. In the list, you will be able to see the newly created app. Click on the “EDIT” option displayed in front of the created app.
6) Copy “Client ID”, “Client Secret” from this page, and copy it in the Plugin page.
Also Copy “Authorization Endpoint”, and “Token Endpoint” and paste it into plugin page. Click on Save.
Adding Privacy Policy
1) On sidebar Menu, click on “Policies”. Select “Add Policy”.
2) Select your Application (From drop down menu). Select Group Name. Enter Policy name. First Factor Type, Password or Mobile, or both. Click on SAVE.
Users Provisioning
1) On sidebar menu, You will see “Users” option, hover over it, you will see a small window showing more options. Click on “User Provisioning”.
2) Select Custom App Option (from dropdown menu). Set your Endpoint URL. Turn on the “Create User”, “Edit User” buttons. Click on Save.
Testing
1) Open plugin for “miniOrange OAuth Single Sign On” in WordPress.
2) Click on “Edit Application”
3) Click on “Test Configuration” Button.
4) Enter your credentials. If everything is OK, it will show details like.
How end user will see/experience the flow
1) When user will click on the Login link, he will be redirected to similar page.
2) If the User is new to your site, the user needs to create an account first, Clicking on Create an account will result in redirection to the following page.
3) When the user will Enter the credentials, he will receive OTP, the page will look something like this.
4) After entering OTP, the user will get logged into the application/website.
Custom Branding Configuration
To customize the UI according to your organization’s requirements, you will be able to do many changes it can be putting icon, logo, color scheme etc.
To do such customization”:
1) You will find the “Customization” option on the left sidebar menu. Click on it. You will see the following window. Here, the user can change all the basic things like the color of the button, base URL, Page Heading, etc. Everything is written on the page itself, it is descriptive enough.
2) Click on Logo and Favicon, you will be able to choose favicon and logo from your system. And, it will appear in this location (highlighted logo).
3) Menu Management, here you will be able to manage what all things should be visible on the Sidebar menu, you can turn it on/off as it is done using buttons.
4) User SignUp Fields, here you can select which all things should be taken as input when the new user is going to sign up (create an account).
This is done using checkboxes, we can check or uncheck, depending on our need.
5) Click on User Custom Profile Fields Mapping
6) Enter the details like Field Name, Field type, Field options. Save it.
Benefits
- Data Sync: All the data present in Siebel CRM, IdP and various Applications, everything is always in sync with each other.
- User Management: Siebel CRM system manages the user related operations (create, update, delete).
- Ease Of Access: For the end users, it reduces the responsibility of managing multiple sets of usernames and passwords.
- Future Scope: When new application is developed (it can be SAML based, Oauth based etc.), it can be easily integrated with the already existing system.