Protect your Applications with Dotfuscator Professional
The Dotfuscator Professional extension adds tasks to your Azure DevOps build process that help you protect your applications from unauthorized decompilation, tampering, debugging, and data access.
Getting Started with Dotfuscator Professional
This extension is used to integrate Dotfuscator Professional into Azure Pipelines. Before you do that, you should be familiar with Dotfuscator Professional itself.
See the the latest user guide for Dotfuscator Professional to help you get started.
Note: Most Dotfuscator Professional users should use Dotfuscator's MSBuild targets and Dotfuscator's NuGet package to integrate Dotfuscator into their Azure DevOps Pipeline build. This extension is not required in that case.
Usage
The extension installs a DotfuscatorCLI task that runs Dotfuscator Professional's command line tool, with user-specified arguments.
Requirements
A copy of Dotfuscator Professional (or the Evaluation version) is required to use this task.
See the Dotfuscator downloads page to get the installer or the Dotfuscator NuGet package.
To provision Dotfuscator onto the build host, do one of the following:
Add Dotfuscator's NuGet package to your private artifact repository or check it into your source tree, and add a step to your build process to install the package via nuget install.
The DotfuscatorCLI will be located in the tools\programdir\netcore directory of the NuGet package.
For long-lived build hosts on Windows, install Dotfuscator via the .msi installer.
A Dotfuscator Professional license is required to run the Dotfuscator Professional command line.
The license key can be provided using the Dotfuscator Professional License Key input of this extension, or the DOTFUSCATOR_LICENSE environment variable in the build configuration. (Requires Dotfuscator 4.41.0 or later.)
For long-lived build hosts on Windows, you can also provide the license key during .msi installation.
This extension is compatible with Azure Pipelines, both the cloud-hosted and on-premises versions, as well as with Team Foundation Server 2015 Update 4 or later.
The necessary .NET SDKs must be installed on your build agent.
Note that Microsoft-hosted agents that include Visual Studio already meet this requirement.
Remember to use relative paths or the ${configdir} property to reference your input assemblies.
Add the config to your project's source code repository.
Use the DotfuscatorCLI task to run Dotfuscator after your assemblies have been built.
Ensure that your build saves the obfuscated output assemblies and the renaming map file as build artifacts (e.g. via a Copy Files task).
DotfuscatorCLI Task
The DotfuscatorCLI task runs the Dotfuscator Professional command line interface on the build host using the specified configuration file and arguments.
Inputs:
Path To Config File (configFile): The path to the Dotfuscator config file.
Dotfuscator Professional License Key (licenseKey): Your Dotfuscator Professional License Key from PreEmptive Solutions. Leave blank to use the DOTFUSCATOR_LICENSE environment variable or a pre-provisioned install.
Location of Dotfuscator application (dotfuscatorHome): Directory containing the Dotfuscator application. Leave blank to use the DOTFUSCATOR_HOME environment variable or if Dotfuscator is on the PATH.
Additional Arguments To Dotfuscator(additionalArgs): Any additional arguments to pass to Dotfuscator. See the Command Line Reference for details.