Skip to content

Setting Up the Kerberos SPNEGO Authorization Profile

Overview

The XO Platform offers Kerberos SPNEGO-based authentication mechanism for enterprise users to use Kerberos authentication flow to securely connect with their internal applications using Kerberos SPNEGO security protocol.

The Kerberos-SPNEGO authentication process includes multiple steps to establish a secure connection between a client and a server using the SPNEGO negotiation mechanism and the Kerberos authentication protocol. The combination of SPNEGO and Kerberos ensures a secure and efficient authentication process to enable clients to access sensitive data securely.

The Kerberos SPNEGO auth profile can be configured from the following XO Platform settings:

Configuring Kerberos SPNEGO Authorization

Steps to configure the Authorization for your assistant with Kerberos-SPNEGO auth profile:

  1. Open the virtual assistant (VA) for which you want to configure the Authorization profile.
  2. Select the Build tab from the top menu.
  3. From the left-side vertical menus, click Configurations > Authorization Profiles.
  4. Click New to open the New Authorization Mechanism dialog.
    New Authorization Mechanism - Add

  5. In the Authorization Type drop-down list, select the Kerberos-SPNEGO option.
    Authorization Type - Kerberos-SPNEGO

  6. In the Name field, enter a name for the authorization type.
    Authorization Name

  7. Define the required Kerberos Authorization fields. For more information, see the Defining Authorization Fields section.

  8. (optional) Click + Add Authorization Field to add additional fields for Kerberos authorization. For more information, see the Adding Authorization Fields section.
  9. Click Save Auth.
    Save Auth

Defining Authorization Fields

To configure the Kerberos SPNEGO authorization profile, define the fields described in the following table.

FIELD NAME DESCRIPTION Required or Optional
Authorization Type Set to Kerberos SPNEGO
Name The name of the authorization profile or service, for example, Kerberos Profile. Required
Service Principal URL The URL to access the Kerberos service and initiate the authentication process. Required
Authorization Check URL This is the URL used to obtain end-user authorization for the XO Platform to access the web application or web service using the access token. The XO Platform accepts a valid URL with a maximum length of 3000 characters. This field is required. You can use dynamic fields, path parameter fields, query fields, and so forth, to define the Authorization URL, for example,
https://kore.someCompany.com/sap/opu/odata/sap/{{authfield1}}/?$format=json
or
https://{tenant}.service-now.com/api/now/v1/table/incident
For more information, see Using Session and Context Variables in Tasks.
Required
Authorization Fields The authorization fields for the token bearer. Optional
Refresh Token URL Enter a Refresh Token URL, if required, for cases when the authentication token expires and has to be refreshed. The XO Platform accepts a valid URL with a maximum length of 3000 characters. Required
Description Enter a description for your authorization. Optional
Authentication Types Bot designers can set this setting to modify the Kerberos authentication behavior.
Choose one of the following Authentication Types:
  • Mutual – By default, this option is selected. The Mutual authentication ensures that both the client and the server authenticate each other during the Kerberos SPNEGO authentication process.
  • Delegate – The delegate option is also known as delegation or credential delegation. It means the client can pass its Kerberos credentials to the service. The service can then use these credentials to authenticate to other services on behalf of the client.
Required

Adding Authorization Fields

Click +Add Authorization Field and then enter one or more key/value pairs that represent additional authorization input fields.

If, for example, the default username and password fields do not meet your needs for authorization input, you can add custom fields as key/value pairs that are displayed to the end-user by adding Additional Fields. You can use these fields, for example, if a PIN code is required in the authorization process, in addition to the Username and Password fields.

Authorization Fields are added, as shown in the following illustration.
Authorization fields added

Specify the following fields:

  • Field Type – The type of the custom field. Field type can be Header, Payload, Query String, or Path Param.
  • Field Key – The name of the custom field.
  • Value – The value of the custom field.

Click Done to save the Additional Field.

Testing the Authorization

After you save the authentication, you can test your authorization definition on the Authentication page when you click Test before continuing to develop the remaining steps of your task.

Steps to test the Kerberos Auth Profile:

  1. Click on the Test button in the Kerberos Auth Profile row to begin the authorization test.
    begin the authorization test

  2. In the Test Authorization window, select the Content-Type and Method field values and click Test.
    select the Content-Type and Method field values and click Test

  3. When the validation of authentication is complete, the Test Authorization dialog is closed, and the results of the validation, either success or failure, is displayed to the immediate right of the Test Authorization button. If the authorization fails, the Auth Test Failed message is displayed along with the Headers and Response tabs.