DSInternals PowerShell Module and Framework v3.2.1 Releases
DSInternals PowerShell Module and Framework
The DSInternals project consists of these two parts:
- The DSInternals Framework exposes several internal features of Active Directory and can be used from any .NET application. The codebase has already been integrated into several 3rd party commercial products that use it in scenarios like Active Directory disaster recovery, identity management, cross-forest migrations, and password strength auditing.
- The DSInternals PowerShell Module provides easy-to-use cmdlets that are built on top of the Framework. The main features include offline ntds.dit file manipulation and querying domain controllers through the Directory Replication Service (DRS) Remote Protocol.
- Added the Get-LsaBackupKey cmdlet for DPAPI domain backup key retrieval through LSARPC.
- The Set-ADDBBootKey cmdlet now works with Windows Server 2000-2019 databases.
- The New-ADDBRestoreFromMediaScript cmdlet now uses shutdown.exe instead of Restart-Computer.
See the Changelog for a more detailed list of new features.
Standalone module for offline installation and for legacy PowerShell versions is attached. See the
Installation Notes before proceeding.
For convenience, the DSInternals PowerShell module is also available on Microsoft’s PowerShell Gallery.
Official binary packages are available at NuGet Gallery.
- .NET Framework 4.5.1 is required for the module to be fully functional. Unfortunately, PowerShell versions prior to 5 ignore this prerequisite.
Option 1 – Online (PowerShell 5+)
Since PowerShell 5, you can install the DSInternals module directly from the official PowerShell Gallery by running this command:
Option 2 – Offline (Windows PowerShell 3+)
- Download the current release from GitHub.
- “Unblock” the ZIP file, using either the Properties dialog or the Unblock-File cmdlet. If you fail to do so, all the extracted DLLs will inherit this attribute and PowerShell will refuse to load them.
- Extract the ZIP file to a temporary location.
- Copy the DSInternals directory to your PowerShell modules directory, e.g. C:\Windows\system32\WindowsPowerShell\v1.0\Modules\DSInternals or C:\Users\John\Documents\WindowsPowerShell\Modules\DSInternals.
- Launch Windows PowerShell.
- (Optional) If you copied the module to a different directory than advised in step 4, you have to manually import it using the Import-Module .\DSInternals\DSInternals.psd1 command.
- Start using the module and don’t be evil.
Copyright (c) 2015 Michael Grafnetter