A website using SAP Customer Data Cloud (CDC) as its identity platform can implement OwnID to simplify and streamline the login experience for its users. Integrating OwnID with a website that uses CDC involves three basic steps:

  • Create a CDC application and modify the CDC schema
  • Use the OwnID Console to create an OwnID application
  • Integrate OwnID with your website

Step 1: Configure CDC

Configuring CDC includes creating a new CDC application with appropriate permissions.

Create Permissions Group and Application Key/Secret

The CDC application used for the OwnID integration requires a Permissions Group that authorizes OwnID to perform certain actions. OwnID strongly recommends that you create a new CDC application that is dedicated to the OwnID integration.

Step 2: Create OwnID Application

An OwnID application connects your website’s identity platform with the OwnID widget in the front end. First, you integrate with CDC when creating the application. This OwnID application is then assigned a unique appId that is added to the website’s front end. To create an OwnID application:

  1. Open the OwnID Console and create an account or log into an existing account.
  2. Select Create Application.
  3. Define the details of the OwnID application, and select Next.
  4. Select the Customer Data Cloud card.
  5. Collect the identifying information of the CDC application (site data center, site API key, application key, and application secret) and then define them in the OwnID application. When working with a site group, the API Key identifies the key of the child site.

Step 3: Integrate OwnID with Your Website

You can add the passwordless feature to your registration and login flows by adding a small block of code to the CDC WebSDK Configuration for your website. For additional configuration options that can change the behavior and look of the OwnID button, see Advanced Initialization Parameters.

  1. Open your site in the CDC Console, and go to the Settings tab.
  2. In the left-hand pane, select WebSDK Configuration.
  3. Copy and paste the following code into the text box, being sure to initialize it with the appId of your OwnID application. To find this appId, open the OwnID application in the OwnID Console and go to the My App tab.
Web SDK Configuration - onGigyaServiceReady example
onGigyaServiceReady: function(serviceName) {
 ((o,w,n,i,d)=>{o[i]=o[i]||(async(...a)=>((o[i].q=o[i].q||[]).push(a),{error:null,data:null}));(d=w.createElement("script")).src='https://cdn.ownid.com/sdk/'+n;
d.async=1;w.head.appendChild(d);
gigya.events.addMap({eventMap:[{events:"afterScreenLoad",args:["$event"],method:e=>ownid("screenSets.onAfterScreenLoad",e)}]});
})(window,document,'<your-appId>','ownid');
      ownid('init', {
          screensets: true,
          screensetsConfig: {
            addEventsMap: false
          }
      });
},
  1. Select Save Changes.

As a result, your WebSDK Configuration should look something like: WebSDK Configuration


Congratulations! Enjoy your SAP CDC passwordless authentication!

User Interface Parameters

  • passwordToggle - If your password field includes an option to hide/show the password (typically an eye icon), then the OwnID SDK must know the DOM element of the icon so it can adjust the OwnID widget accordingly. For example, the following key/value pair sets the passwordToggle parameter to a String that specifies the DOM element of the hide/show icon:
passwordToggle: '[data-screenset-roles*="instance"] .toggle-pw-visibility-icons'

CDC Configuration Parameters

  • screensetsConfig - If your CDC implementation includes Screen-Sets with custom IDs, you must initialize the OwnID SDK with the custom IDs of the login and registration Screen-Sets. CDC implementations that use the default Screen-Set IDs can ignore this parameter. As an example, the following key/value pair passes the custom IDs of the login and registration Screen-Sets to the OwnID SDK:
screensetsConfig:  {
    customScreenSetsIds: {
       login: 'bazco-nord-login-screen',
       registration: 'bazco-nord-registration-screen'
    }
}

Custom Code Parameters

The OwnID SDK can be initialized with custom code that is called just before or just after OwnID performs an action. This code is written as an inline JavaScript function that is passed as the value of an initialization parameter. For example, you could use the onRegister parameter to invoke a function that leverages the gtag of Google Analytics when a user registers:

onRegister:function(){
  gtag('event', 'ownid_registration', {
  'event_category': 'OwnID-registration',
  'event_label': 'a user has completed the OwnID flow.'
  });
}

The following custom code parameters are available:

  • onRegister - Defines a custom function that is called just after OwnID registers a new user.
  • onLogin - Defines a custom function that is called just after OwnID has logged in the user.
  • onBeforeLogin - Defines a custom function that is called just before OwnID logs in the user.
  • onBeforeLinkOnLogin - Defines a custom function that is called when an existing CDC user with a traditional password completes the process of setting up OwnID for the first time.
  • onMagicLinkLogin - Defines a custom function that is called just after the user logs in with a Magic Link. With Magic Link, users who are using a desktop without their phone available have the option of receiving an email that contains a one-time link. Without this parameter, the onLogin function is called after the user logs in with a Magic Link.