PowerShell module to interact with Active Directory using ADSI and the System.DirectoryServices namespace (.NET Framework)
Switch branches/tags
Nothing to show
Clone or download
Latest commit f7b2acc Oct 14, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode Add some vscode settings Oct 13, 2018
AdsiPS Add UserInfos description Oct 12, 2018
Archives Add some missing explicit parameters Oct 7, 2018
Build Remove trailing whitespaces Oct 7, 2018
Tests
WorkInProgress Add some missing explicit parameters Oct 7, 2018
CONTRIBUTING.md Add Contributing.md Nov 30, 2017
LICENSE.md
README.md Update Readme Nov 30, 2017
appveyor.yml Update appveyor Oct 7, 2018

README.md

AdsiPS

PowerShell module to interact with Active Directory using ADSI and the System.DirectoryServices namespace (.NET Framework)

The initial motivation for this module was to improve my knowledge on how to interact with Active Directory without the Microsoft Active Directory module or the Quest Active Directory Snapin. The other elements that I wanted to work on were being able to use alternative Credentials and to specify a different Domain.

Obviously I'm still learning and there is ton of space for improvements... Would love contributors, suggestions, feedback or any other help.

Table of contents

Contributing

Contributions are welcome via pull requests and issues. Please see our contributing guide for more details

Installation

Download from PowerShell Gallery

Only from PowerShell version 5

Install-Module -name ADSIPS

Download from GitHub repository

  1. Download the repository
  2. Unblock the zip file
  3. Extract the folder to a module path (e.g. $home\Documents\WindowsPowerShell\Modules)

Use Cases

  1. Learning Active Directory: We can't see the code behind the Microsoft ActiveDirectory Module and Quest ActiveDirectory Snapin. This module is a great way to explore and learn on how Active Directory is working,
  2. Delegation: Active Directory queries need to be performed by a tool (GUI for example) and you don't want it to load AD module. Additionally you don't know who will use the tool and if they have/can/know how to install the module,
  3. Performance: ADSI is way faster,
  4. Restricted environment: Sometime ActiveDirectory Module is not available/ or can't install it on a machine.

More Information

Notes

  • Thanks to all the Contributors!! @MickyBalladelli @christophekumor @omiossec ...
  • Thanks to PowerShell.com/Tobias Weltner for the great content on ADSI PowerShell.com ADSI
  • Thanks to @RamblingCookieMonster for your great guidelines and contributions RamblingCookieMonster's Blog