Welcome Guest, you are in: Login

QVSource: The QlikView & Qlik Sense API Connector (Docs)

Web Edition Doc Quick Links
QVSource Web Edition is now commercially available should be used - if you are still using the WinForms edition please upgrade now as this is deprecated and will no longer be supported after the 22nd May 2016.

You should find most of the documentation on this wiki for the WinForms edition of QVSource still applies, particularly the connector specific pages (ignoring the minor UI differences).

The following are the most important Web Edition specific pages:

  • Web Edition Overview - A short introduction to the new QVSource Web Edition including the benefits and high level differences.
  • Getting Started - A guide on running the QVSource Web Edition in its simplest mode (e.g. servicing requests from localhost only with no user authentication).
  • Example Deployment Scenarios - Some example diagrams showing how QVSource Web Edition might be deployed with QlikView and Qlik Sense.
  • Advanced Configuration - How to perform advanced configuration of QVSource, for example allowing remote access and setting up users.
  • User Management - How to manage users.
  • Upgrading from WinForms Edition - How to upgrade.
  • SSL Configuration - How to set up a test SSL certificate so that traffic between your browser (or QlikView/Qlik Sense) is encrypted.
  • Troubleshooting - Read this page first if you are having trouble running QVSource.
  • Cloud Hosted Demo - Information on a cloud host demo edition we are currently testing out.


If you follow the QVSource Web Edition Getting Started Guide successfully you should find QVSource runs in a mode with no authentication and which is only accessible from the localhost, this is essentially a straight replacement for the QVSource WinForms edition.


You can configure and extend the way QVSource runs using the deploy.config file which you should find in the root of your QVSource Web Edition folder:

Image

Some of the common things you can change are:
  • The port number QVSource runs on (not recommended unless you have a specific application already using the default port of 5555).
  • Allow remote access (i.e. from other machines on your network).
  • Setup the authentication and user accounts.
  • Setup details of a proxy server you connect to the internet through.
  • Configure the logging level.

Netsh URL Reservation

If you make certain changes to deploy.config which affect the port it runs on, whether it allows remote access and whether it runs as SSL you will likely see Windows prompt you to run a netsh command as admin (if you are not already running QVSource under an admin account):

Image

If you click the 'Show details' option you will see it is trying to reserve the URL so it is able to run. You will need to click 'Yes' here if you would like QVSource to run using your desired config. You might also need to use netsh manually as explained here to resolve certain startup issues if you find QVSource will not start.

Editing deploy.config

You can open deploy.config in your favourite text editor. We usually use notepad or notepad++.

In general, most of the settings should have associated XML comments where necessary to help you understand them.

When you have finished editing deploy.config, don't forget to save it. You might also like to keep backups of previous versions of deploy.config in case you need to roll back.

You will usually need to restart QVSource after editing deploy.config.

Note that you can also see the location and contents of the current deploy.config from within the Settings tab:

Image

Common Settings

Port Number

You can change the port number by editing this setting:


<Port>5555</Port>

Allow Remote Access

By default, the AllowRemoteAccess element will be set to false:


<!--
Whether to allow access from remote machines (i.e. non localhost).
-->
<AllowRemoteAccess>false</AllowRemoteAccess>

If you would like to be able to log in to QVSource from other machines on your network and run loads from QlikView or Qlik Sense installations running on other machines you should set this to 'true' but you should also change the Authentication Type element from 'None' to something else (see below).

IMPORTANT: If you allow remote access you will also likely need to open up the firewall on the computer to allow TCP connections to be made through the port QVSource is configured on (5555 by default). Please contact your network/system admin in the first instance if you are not able to do this yourself. Contact us if you do not have a network/system admin and are not able to do this.

Note that you can leave the Authentication Type element set to 'None' but this means that anybody will be able to browse to and use the QVSource installation (i.e. there will be no security). This may represent a very quick and easy way to use QVSource for some small companies but generally we would not recommend it.

IMPORTANT - PLEASE READ:
  • By default, this will expose QVSource over HTTP which will not be encrypted. You will need to take some additional steps (which are not QVSource specific) to cause the traffic to be SSL encrypted. See below.
  • This setting is only intended for running QVSource Web Edition internally on your own private company networks. You are not permitted to run QVSource on public facing servers accessible over the internet. We do run a cloud hosted version of QVSource for demo and test purposes which you can read about here and are considering launching a commercially supported cloud hosted offering. If you are interested in running your own publicly accessible instance please contact us.


Require SSL

If you are allowing remote access to QVSource it is recommended that you also set it up so that the traffic to and from QVSource is encrypted using SSL.

To do this you should set the RequireSSL element in deploy.config to 'true'.


<RequireSSL>true</RequireSSL>

The instructions here then give a guide on how SSL can be setup however you may wish to consult your network/server admin who might have their own system for setting this up.

Note that this is not a QVSource specific feature and there is no additional code (other than to start the service at a https address rather than http) in QVSource to enable this.

Note also that if you have AllowRemoteAccess set to 'false', QVSource will not start if you set RequireSSL to 'true'.

Authentication

By default, you should find the authentication type set to 'None':


<Authentication>
<!--
    Set to
    None
    This will run QVSource without any concept of users or access tokens, which have been 
    introduced in the new web version to support users accessing the application from separate machines.
      
    This is the quickest and easiest way to get up and running and if used in conjunction with 
    AllowRemoteAccess set to false is a straight swap in replacement for QVSource WinForms edition.

    or
    FormsAuthentication
    Use this value if you would like users to sign in to QVSource from other machines and be able to 
    generate load scripts which are secured with an access token and whitelisted IP addresses.
    
    or
    WindowsAuthentication
    Not currently supported. Please contact us at support@qvsource.com if you require this.
    -->
    <Type>None</Type>

As explained in the comments, this can be changed to 'FormsAuthentication' which is currently the only supported mode (please let us know if you require Windows authentication).

If you set this value to 'FormsAuthentication' then the following sections become relevant:


<FormsAuthentication>
      <CryptographyConfiguration>
        <!--
        These values are used when encrypting the authentication cookies used for maintaining 
        a users logged in status with Forms authentication.
        -->
        <RijndaelEncryptionProvider_Passphrase>SuperSecretPass123</RijndaelEncryptionProvider_Passphrase>
        <DefaultHmacProvider_Passphrase>UberSuperSecure123</DefaultHmacProvider_Passphrase>
      </CryptographyConfiguration>
      <!--
      PlainTextPasswordChecker - User XML element should contain a Password element containing plain text password.
      SHA512PasswordChecker - User XML element should contain a PasswordHash element containing UTF8 SHA512 base 64 encoded password hash.
      SaltedPBKDF2SHA1PasswordChecker - Uses a salted hash.
      -->
      <PasswordChecker>PlainTextPasswordChecker</PasswordChecker>
</FormsAuthentication>

And:


<FormsUsers provider="FileBasedFormsUsersProvider" config="{app_root}/logins.xml"></FormsUsers>

We have included some sample deploy.config and logins.xml file pairs in the "Sample Configs" subdirectory of QVSource with notes in a Readme.txt file.

For most users we would recommend either using the default setup when you first download QVSource (i.e. no authentication or remote access, which is essentially a swap in replacement for the previous WinForms edition of QVSource), or to copy the deploy.config and logins.xml files from the Sample Configs\Forms Auth and Remote Access directory. This sets QVSource up with two users:

These configure QVSource for Forms Authentication, with remote access allowed and with the most secure password management system currently available in the product (SaltedPBKDF2SHA1PasswordChecker).

Once you have copied these into the QVSource root directory you should be able to log in with either:

qvsourceadmin@yourdomain.com
password01

Or: qvsourceuser@yourdomain.com
password01


The first user has admin privileges. You can also edit the element in logins.xml first to be your own username or email address.

Once logged in as Admin, you can go to the user management screen to add or edit users.

Proxy Server

This is equivalent to the QVSource WinForms edition settings explained here.

Usually, if you are behind a proxy you will just need to set UseProxy to 'true'. If you are still experiencing issues (e.g. 407 proxy authentication errors) you might need to enter specific credentials.


<Proxy>
    <UseProxy>false</UseProxy>
    <ProxyAddress></ProxyAddress>
    <ProxyUsername></ProxyUsername>
    <ProxyDomain></ProxyDomain>
    <ProxyPassword></ProxyPassword>
</Proxy>

Logging

You can change the logging level by changing the following element:


<!-- Valid values: Off, Trace, Info, Warn, Error -->
<LoggingLevel>Warn</LoggingLevel>

System wide log files will appear in the \Logs directory of the root folder. These are log files which cannot be related to a specifically defined system user.

User specific log files are logs relating to the activity of a particular user, the location of these is defined in the UserLogs section of the Providers section of deploy.config. As seen below, by default this is:

{app_root}/App_Data/{user_name}/Logs


<Providers>
    <!--
    User specific log implementation. Note that the logging level is currently set using 
    the LoggingLevel element in deploy.config and if this is set to Off it will also 
    override this setting.
    -->
    <UserLogs enabled="true" provider="FileBasedLogger" config="{app_root}/App_Data/{user_name}/Logs"></UserLogs>

    <!--
    User specific API call logger.
    -->
    <UserAPICallLogs enabled="true" provider="FileBasedLogger" config="{app_root}/App_Data/{user_name}/Logs/APICalls/{connector_id}"></UserAPICallLogs>
</Providers>

We may ask you to turn on a certain level of logging, reproduce an issue and send us the log files if you are contacting us for support.

AllowConnectorsFileSystemAccess

Some connectors are able to read from or write to the local disk. You can disable this by changing this setting to 'false'.


<AllowConnectorsFileSystemAccess>true</AllowConnectorsFileSystemAccess>

Troubleshooting

If you are having trouble running QVSource, please see this page.
  Name Size
- deploy.config.png 89.09 KB
- netsh command.png 247.54 KB
- settings.png 45.06 KB


(QVSource works with Qlik Sense as well as QlikView - See this page for notes.)
QVSource - The QlikView & Qlik Sense API Connector | © Copyright 2011 - 2016 Industrial CodeBox Ltd