Skip to Content
Author's profile photo Dimitri Vorobiev

How to connect Lumira 1.X and 2.0 to Vora on Kerberos

How to connect Lumira 1.X and 2.0 to Vora on Kerberos

This step-by-step guide has been derived from:

  • SAP note 2210624 – How do I configure SAP Lumira for Kerberos Authentication?
  • Section 4.1.9 of the SAP Vora 1.4 Admin guide
  • Simba JDBC driver configuration guide


  • Lumira officially supports only basic authentication to JDBC data sources such as Vora. Using Kerberos authentication to connect to Vora is purely an experimental feature and is not officially supported.

  • There is a known issue with reading columns with datatype DECIMAL when using the Simba JDBC driver with Vora. The solution is to download the newest version of the driver and replace the driver in /<Lumira_root_directory>/utilities/SparkJDBC/


  • Vora client principal and keytab has been generated
  • Vora Thriftserver is running in KERBEROS mode
  • KDC server host is reachable by the Lumira workstation


  1. Copy the vora client principal keytab to the Lumira workstation


  1. On the workstation where Lumira is running create C:\Windows\LumiraJAAS.conf with following content:


Client { required useKeyTab=true keyTab="file:<Path/to/vora.keytab" principal="<voraPrincipal>@<REALM>" doNotPrompt=true;



Note: Path must start with file: and use forward slashes. For example: file:c:/windows/keytabs/vora.keytab



  1. Create file C:\Windows\krb5.ini file:
default_realm = <REALM>
dns_lookup_kdc = true
dns_lookup_realm = true
<REALM> = {
default_domain = <REALM>


  1. Add the following lines to Lumira 1.X <Lumira_root_dir>/SAPLumira.ini or in case of Lumira 2.0 <Lumira_root_dir>/SBOPLumiraDiscovery.ini\Windows\LumiraJAAS.conf\Windows\krb5.ini


  1. Select File -> Preference -> SQL Driver -> Select “Generic JDBC driver” -> Install
  2. Select all files in the <Lumira_root_directory>/utilities/SparkJDBC directory
  3. Create new connection to Vora using Query with SQL:
  4. Choose the generic driver that just installed:
  1. Enter anything for username and password (it won’t be used)
  2. Set the JDBC class to com.simba.spark.jdbc4.Driver
  3. Define the JDBC connection string as follows:


jdbc:spark://<Thriftserver_FQDN_Hostname>:<ThirftserverPort>/default;CatalogSchemaSwitch=0;UseNativeQuery=1;AuthMech=1;KrbAuthType=1;KrbHostFQDN=<Thriftserver_FQDN_Hostname>;KrbRealm=<Kerberos Realm>;KrbServiceName=<Vora service principal used by the thriftserver>;


  1. In Advanced settings set the JDBC driver property:


  1. Connect with these settings and navigate the hierarchy CATALOG_VIEW -> Spark -> Default

Note that only in-memory tables registered using the syntax REGISTER TABLE <tableName> using via Vora Tools or beeline will be visible here.


  1. When selecting a table, the pre-generated SQL string will not be Vora syntax compatible and must be manually re-written by removing the “Spark” prefix and all wrapper double quotes

For example:
SELECT * FROM default.v2Table



Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Vishal Kuchhal
      Vishal Kuchhal

      Thanks Dimitri for this great article.

      I would just like to ask if we can access VORA timeseries, Doc store and graph engine in Lumira. We were able to access VORA tables and views created using Relational(new), in-memory(deprecated) and Disk Engine.

      Thanks again 🙂

      Author's profile photo Dimitri Vorobiev
      Dimitri Vorobiev
      Blog Post Author

      Yes, tables from all Vora engines should be accessible by Lumira when connecting to the Vora Thriftserver