Provider Configuration

 

KonfDBH (host) is modelled on the provider concept to access data-store.  By default, it ships with MS-SQL data providers for on-premise MS SQL data base and Azure MS-SQL database.

Sample provider configuration appears like,

    

"providers": {
    "databaseProviders": {
      "default": "localsql",
      "database": [
        {
          "key": "localsql",
          "providerType": "MsSql",
          "host": "localhost\\sqlexpress",
          "port": 8080,
          "instanceName": "konf",
          "username": "sa",
          "password": "SomePwdStrong*0889",
          "location": "c:\\temp"
        },
        {
          "key": "azure",
          "providerType": "AzureSql",
          "host": "tcp:lbxcft14aq.database.windows.net",
          "port": 1433,
          "instanceName": "dbName",
          "username": "dbName@lbxcft14aq",
          "password": "dBPassword"
        }
      ]
    }

providerTypes

There are 2 types of providers shipped with KonfDB

MsSql

This provider should be used with on-premise MS-SQL 2008+ database.

AzureSql

This provider should be used with Azure MS-SQL 2008+ database.

databaseProviders

databaseProviders is a list of database providers you would like to make available for KonfDB host.  You can mention any number of providers in the host, however the provider mentioned in the default attribute will only be used at the runtime.  If you want to change the default databaseProvider, you will have to restart the KonfDBH (host) to apply your changes.

When using MsSql or AzureSql providers, you need to mention following parameters

  • host – this should represent the hostname along with SQL instance name (if not same as hostname)
  • port – port at which the SQL instance is configured
  • instanceName – name of the database.
  • username – database user name with dbo rights
  • password – password of the database user mentioned in username

KonfDB works best when it can access database with dbo user or with user that has permissions to create database objects.  If for longer run you can not run KonfDB with dbo permissions, it is advisable that you run it with dbo at the first instance so that KonfDB can create relevant schemas and tables.

If you are running KonfDB on your own servers and are using AzureSql provider to connect to Azure database, you will have to add your server IP address to Firewall list on Azure portal.  This is due to enhanced security demanded by Azure services.