.Net Security: How to deploy a repository to a database

How to deploy a repository

There are 4 methods for deploying a repository:

  • Copy the Visual Guard tables and data from the source database to the target database. This solution is simple but you can only copy the full content of the repository and not a part of this repository because Visual Guard stores its data in a binary format.
  • Use the Visual Guard Console. The Visual Guard console provides a Wizard that will help you to deploy the full content of your repository or the data corresponding to an application. To do that, you must be connected to your source repository then right-click this repository and select the option "Deploy repository...". This wizard enables you to directly deploy your repository into another one or export data as a deployment configuration file.
  • Use the deployment tool. This tool uses the deployment configuration file exported by the console and can be launched as a command line tool. This utility can be used to automate your deployment.
  • Use the deployment API. You can use this API to integrate your deployment in a custom program. The classes used by the deployment are located in the namespace 'Novalys.VisualGuard.Security.Deployment' (assembly: vg_deployment.exe). You can contact Visual Guard support if you need more information about this API.

How to use the deployment tool

The deployment tool is named vg_deployment.exe and is located in the directory <Visual Guard installation directory>\Bin\2.0. This tool needs the .Net 2.0 framework to be installed on the computer. It can be run as a command line utility.

You can run this tool without any command line arguments to run a wizard that will walk you through specifying the connection information and selecting the deployment configuration file.

The following table describes the command line options supported by this tool.

Option Description
-? Prints vg_deployment.exe tool Help text in the command window.
-w Run the tool in Wizard mode. This is the default if no command line arguments are specified.
-t repository type Specifies the type of the repository (Oracle, SQLServer, File). This option is not necessary.

If this option is omitted, the type of the repository is SQLServer.
-s schema name The Oracle schema name containing the Visual Guard tables.

This option is necessary if the type of the repository is Oracle and when the user specified in the connection string is not the owner of Visual Guard tables.

This value is case sensitive.
-c connection string The connection string to the computer running the database where the repository will be deployed.

This option is necessary if do not use the option -W.

The user specified in the connection string must have the permissions to update and delete data in Visual Guard table.

When the type of the repository is File, the value must contain the path of the directory where the repository will be deployed.
-f path The path of the deployment configuration file used by the tool.

This option is not necessary.

By default the tool will use the file "deployment.config" located in its directory.

Deploying the repository for the first time

When you deploy a repository, the deployment tool will first check if the database structure is already created. If the structure does not exist, the deployment process fails. It is necessary to create the database structure before running the deployment tool.

You can create it by using the Visual Guard console to create an empty repository. You can also create it by using the SQL scripts installed with Visual Guard.
These scripts are located in the directory <Visual Guard Installation Directory>\VisualGuardConsole\Database\<Repository Type (SQLServer or Oracle)>.

Deployment and license key

When you deploy a complete repository in an empty repository or in a repository without a registered license key (in evaluation mode), Visual Guard considers that you are creating a new repository.

This repository will have the same license key (with the same limitation) as the source repository but you will not be able to add new applications or security actions in this repository. When you need to create a new application or add a new security action in the deployed repository or when you need more users than the source repository, you should request a new license key for this repository.

When you deploy a complete repository in a repository with a registered license key, Visual Guard will keep this license key and will not take into account the license key of the source repository.

When you deploy an application in a repository, the deployment process fails if the license of the target repository is expired.