Protect your SQL Server database from unauthorized access, modification and distribution! Hides schema!
 
Home    DbDefence Help - SQL Server Encryption Prev Next
About DBDefence
System Requirements
Installation
Configuration and Startup
DBDefence Configurator
Starting DBDefence
Database Encryption
Introduction
Encryption Tools
Exceptions
Database decryption
FIPS 140-2 Information
Database Access
Introduction
Using SQL commands
DBDefence Client DLL
Reporting Services Extension
Editing Database with SQL Studio
Service Broker Access
Backup, Distribution ...
Replication
Backup
Distribution
DBDefence SQL functions
dbd_listdb
dbb_on
dbd_reg_info
dbd_status
Sales questions
Purchase and support
Activation
Acknoledgements
DBDefence 2.4 Reference

DBDefence Reporting Service Data Source Extension

Document version 1.0

This DLL is an Reporting Service Data Source Extension DLL  exclusively for Microsoft Reporting Services.  After installation you will have new data source type called "Connection to blocked database". It behaves like Microsoft SQL Server data source but accept additional parameters to unlock blocked database before queries.

It can work in server mode and report designer mode. There are two files for each mode. Server mode is used to work with reports (config files is Report Services dir), designer mode is used to design reports using Visual Studio (config files is Visual Studio dir).

How to install:

The following assumes that you already have reporting service installed and running.

  • Copy Elitude.ReportingServices.BDataExtension.dll to the report server. The default location for report server extensions is C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin.
  • Copy the assembly to Report Designer. The default location for extensions for Report Designer is C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies.
  • Add the following entry to both the RSReportServer.config and RSReportDesigner.config files under the Data element (the default location of the RSReportDesigner.config file is C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies, and the default location for the RSReportServer.config file is C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer):
<Extension Name="BConn" Type="Elitude.ReportingServices.BDataExtension.BConnection,Elitude.ReportingServices.BDataExtension"/>
  • To enable the generic query designer for the sample data processing extension, add the following entry to the RSReportDesigner.config file under the Designer element.
<Extension Name="BConn" Type="Microsoft.ReportingServices.QueryDesigners.VDTQueryDesigner,Microsoft.ReportingServices.QueryDesigners"/>
  • Open the report server policy configuration file (rssrvpolicy.config). The default location for this file is C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer.

Data processing extensions must be granted full trust, therefore, add the following code group information to the end of the code groups section in the configuration file:

<CodeGroup class="UnionCodeGroup"
   version="1"
   PermissionSetName="FullTrust"
   Name="BConnCodeGroup"
   Description="Code group for my BConn data processing extension">
      <IMembershipCondition class="UrlMembershipCondition"
         version="1"
         Url="C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin\Elitude.ReportingServices.BDataExtension.dll"
       />
</CodeGroup>
  • If you are using the sample data processing extension in Report Designer, repeat steps 1 and 2 using the Report Designer preview policy configuration file (rspreviewpolicy.config) and the following code group:
<CodeGroup class="UnionCodeGroup"
   version="1"
   PermissionSetName="FullTrust"
   Name="BConnCodeGroup"
   Description="Code group for my BConn data processing extension">
      <IMembershipCondition class="UrlMembershipCondition"
         version="1"
         Url="C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies\Elitude.ReportingServices.BDataExtension.dll"
       />
</CodeGroup>

Note: It is import to place XML block in the right place for BOTH policy files. There are several nested <CodeGroup> tags. Place new one right after previous block ends. For example:

<!-- previous block in the default policy file -->
<CodeGroup class="UnionCodeGroup" version="1"
PermissionSetName="FullTrust"
Name="SharePoint_Server_Strong_Name"
Description="This code group grants SharePoint Server code full trust. ">
<IMembershipCondition class="StrongNameMembershipCondition" version="1"
PublicKeyBlob="0024000004800000940000000602000000240000525341310004000001000100AFD4A"/>
</CodeGroup>
<!-- new block -->
<CodeGroup class="UnionCodeGroup"
   version="1"
   PermissionSetName="FullTrust"
   Name="BConnCodeGroup"
   Description="Code group for my BConn data processing extension">
      <IMembershipCondition class="UrlMembershipCondition"
         version="1"
         Url="C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies\Elitude.ReportingServices.BDataExtension.dll"
       />
</CodeGroup>

The default location for the rspreviewpolicy.config file is C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies.

How to use:

Create connection of the type "Connection to blocked database" define connection string like as it is Microsoft SQL Server connection. Add two additional parameters to connection string: bdb - protected database name , bpwd = protected database password. Example:

Server=(local);Trusted_Connection=yes;bdb=EncryptedDB;bpwd=cyber

Note: Use ; as separator. No commas.

Troubleshooting:

  •  At design stage designed can't retrieve field names of tables

    That's normal, design on un-protected database or define fields manually.
     
  • Designer or Report Server can't preview report saying can't access protected database
     
    Make sure that DLL is copied to the appropriate place and .config files properly modified. Place that CodeGroup XML block near to similar blocks in .config file

support@dbdefence.com
Copyright Elitude Software, 2009-2010