SAIF.Framework.SecurityModule dependencies¶
SAIF.Framework.SecurityModule has no internal repository dependencies; it relies on the .NET Framework base class library, an external log4net assembly, and several unmanaged Win32 APIs to implement its IHttpModule-based authentication pipeline.
Internal dependencies¶
None detected. The library's project file (SAIF.Framework.SecurityModule\SAIF.Framework.SecurityModule.vbproj) contains no <ProjectReference> elements, so it does not reference any other SAIF.Framework.* project in the repository.*
| Dependency | Type | Usage |
|---|---|---|
| None | — | — |
External dependencies¶
| Dependency | Version | Usage |
|---|---|---|
System.Web (IHttpModule) |
Framework-standard (.NET Framework v3.5) | clsSecurityModule implements System.Web.IHttpModule to hook into the ASP.NET request pipeline and handle HttpApplication.AuthenticateRequest. Source: SAIF.Framework.SecurityModule\clsSecurityModule.vb |
| log4net | v1.2.11.0 (local HintPath reference to ..\..\..\Libs\Log4Net\log4net.dll, not a NuGet package) |
Backing logging provider for mdlLogging's Log/LogInfo/LogWarn/LogError/LogDebug facility, configured via the assembly-level log4net.Config.XmlConfigurator(ConfigFile:="..\log4net.config") attribute. Source: SAIF.Framework.SecurityModule\SAIF.Framework.SecurityModule.vbproj, SAIF.Framework.SecurityModule\mdlLogging.vb, SAIF.Framework.SecurityModule\clsSecurityModule.vb |
| System, System.configuration, System.Data, System.Web.Extensions, System.Xml, System.Core, System.Xml.Linq, System.Data.DataSetExtensions | .NET Framework BCL (framework-standard, v3.5) | Standard framework references declared in the project file; System.Configuration.ConfigurationManager.AppSettings is used directly to read module settings. Source: SAIF.Framework.SecurityModule\SAIF.Framework.SecurityModule.vbproj |
| advapi32.dll, Kernel32.dll | Unmanaged Win32 API (P/Invoke) | TokenProvider calls Win32 LogonUser/DuplicateToken/token-handle functions to exchange decrypted credentials for a Windows logon token. Source: SAIF.Framework.SecurityModule\TokenProvider.vb |
crypt32.dll (c:\windows\system32\crypt32.dll) |
Unmanaged Win32 API (P/Invoke, DPAPI) | DPAPI calls Win32 CryptProtectData/CryptUnprotectData to encrypt/decrypt the SAIFAUTH cookie value and other secrets. Source: SAIF.Framework.SecurityModule\DAPIEncrypt.vb |
Target framework: v3.5 (TargetFrameworkVersion in the .vbproj). No packages.config or <PackageReference> items exist in this project — no NuGet package dependencies were detected.*
Dependency risks and notes¶
- The library targets .NET Framework
v3.5, an out-of-support runtime version, which constrains modernization and patching options.* log4netis referenced via a localHintPath(..\..\..\Libs\Log4Net\log4net.dll) rather than a versioned NuGet package, so updates must be managed manually across the repository'sLibs\folder rather than through package restore.- Authentication correctness depends on unmanaged Win32 APIs (
advapi32.dll,Kernel32.dll,crypt32.dll) via P/Invoke, tying the module to the Windows platform and to machine/user-scoped DPAPI keys; this also requires the assembly-levelSecurityPermissionAttribute(SecurityAction.RequestMinimum, UnmanagedCode:=True)grant declared inclsSecurityModule.vbandDAPIEncrypt.vb. - No
Web.config/App.configexists inside this library's own folder, so the module's registration as anIHttpModuleand the effective values of itsAppSettingskeys (sec-errorpage,ExternalHostNames,sec-loginpage,sec-browser-authtype,sec-logindomain) can only be confirmed by inspecting a consuming host application's configuration.** - As a leaf library with no internal
<ProjectReference>dependencies, changes to this module carry no transitive build risk to other SAIF.Framework.* projects, but any hosting web application registeringclsSecurityModuleis directly coupled to its behavior.*
Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.
Related documentation¶
Sources¶
SAIF.Framework.SecurityModule\SAIF.Framework.SecurityModule.vbprojSAIF.Framework.SecurityModule\clsSecurityModule.vbSAIF.Framework.SecurityModule\mdlLogging.vbSAIF.Framework.SecurityModule\TokenProvider.vbSAIF.Framework.SecurityModule\DAPIEncrypt.vb