Skip to content

Signal Sciences .NET Module

Requirements

End-user

  • .NET Framework 4.5 or later
  • IIS 7 or later

Developer

  • Visual Studio 2015 (any edition is ok, including Community)
  • nuget.exe

Overview

The main class of interest is SignalSciences.HttpModule. This is an implementation of System.Web.IHttpModule.

The module can easily be added to any ASP.NET project without changing any of the existing code.

You can also use it as an IIS Module for non-ASP.NET sites (e.g. static sites).

Configuration

The instructions that are shown to the end-user after installing with NuGet in Visual Studio are here: HttpModule/readme.txt.

Example Site

The ExampleSite project is a very simple ASP.NET site that demonstrates SignalSciences.HttpModule.

Building the NuGet package

  • Important: before building a new version of the package, you must increment the version numbers in AssemblyInfo.cs. HttpModule.nuspec and appveyor.yml.
  • You'll need nuget.exe, the command line version of NuGet.
  • You do not have to build with Visual Studio first. The nuget pack command below will handle it for you.

To build the package, run this from the command line (assuming nuget.exe is in your path):

nuget restore
cd HttpModule
nuget pack HttpModule.csproj -Build -Properties Configuration=Release

A file will be output named like SignalSciences.Module.DotNet.1.0.0.0.nupkg.

Misc Notes

  • In IIS, there doesn't seem to be a documented way to get the TLS cipher/protocol information.
  • This is library code running in someone else's server, so be sure to ConfigureAwait(false) on any Tasks you await. See https://blogs.msdn.com/b/pfxteam/archive/2012/04/13/10293638.aspx.