All Projects → kdabir → active-directory-lookup

kdabir / active-directory-lookup

Licence: MIT license
Simplest Java API (and CLI) for authenticating and searching in Active Directory

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to active-directory-lookup

Multiotp
multiOTP open source strong two factor authentication PHP library, OATH certified, with TOTP, HOTP, Mobile-OTP, YubiKey, SMS, QRcode provisioning, etc.
Stars: ✭ 173 (+1053.33%)
Mutual labels:  active-directory
Powershell Scripts
PowerShell scripts ranging from SCCM, MSO, AD, and other corporate enterprise uses... to sending cat facts to coworkers.
Stars: ✭ 201 (+1240%)
Mutual labels:  active-directory
Adtimeline
Timeline of Active Directory changes with replication metadata
Stars: ✭ 252 (+1580%)
Mutual labels:  active-directory
Macoslaps
Swift binary that will change a local administrator password to a random generated password. Similar behavior to LAPS for Windows
Stars: ✭ 182 (+1113.33%)
Mutual labels:  active-directory
Awesome Windows Security
List of Awesome Windows Security Resources
Stars: ✭ 196 (+1206.67%)
Mutual labels:  active-directory
Ad Ldap Enum
An LDAP based Active Directory user and group enumeration tool
Stars: ✭ 223 (+1386.67%)
Mutual labels:  active-directory
Adessentials
PowerShell Active Directory helper functions to manage healthy Active Directory
Stars: ✭ 153 (+920%)
Mutual labels:  active-directory
requests auth
Authentication classes to be used with requests
Stars: ✭ 28 (+86.67%)
Mutual labels:  active-directory
Adaz
🔧 Automatically deploy customizable Active Directory labs in Azure
Stars: ✭ 197 (+1213.33%)
Mutual labels:  active-directory
Testimo
Testimo is PowerShell module for running health checks for Active Directory (and later on any other server type) against a bunch of different tests
Stars: ✭ 249 (+1560%)
Mutual labels:  active-directory
Ldaptools
LdapTools is a feature-rich LDAP library for PHP 5.6+.
Stars: ✭ 185 (+1133.33%)
Mutual labels:  active-directory
Ldapcherry
Web UI for managing users and groups in multiple directory services.
Stars: ✭ 194 (+1193.33%)
Mutual labels:  active-directory
Zbang
zBang is a risk assessment tool that detects potential privileged account threats
Stars: ✭ 224 (+1393.33%)
Mutual labels:  active-directory
Cypheroth
Automated, extensible toolset that runs cypher queries against Bloodhound's Neo4j backend and saves output to spreadsheets.
Stars: ✭ 179 (+1093.33%)
Mutual labels:  active-directory
crimson-spray
A lockout aware password sprayer
Stars: ✭ 11 (-26.67%)
Mutual labels:  active-directory
Adsips
PowerShell module to interact with Active Directory using ADSI and the System.DirectoryServices namespace (.NET Framework)
Stars: ✭ 160 (+966.67%)
Mutual labels:  active-directory
Ad Password Protection
Active Directory password filter featuring breached password checking and custom complexity rules
Stars: ✭ 210 (+1300%)
Mutual labels:  active-directory
PSPasswordExpiryNotifications
Following PowerShell Module provides different approach to scheduling password notifications for expiring Active Directory based accounts. While most of the scripts require knowledge on HTML... this one is just one config file and a bit of tingling around with texts. Whether this is good or bad it's up to you to decide. I do plan to add an optio…
Stars: ✭ 38 (+153.33%)
Mutual labels:  active-directory
ActiveDirectoryEnumeration
Enumerate AD through LDAP with a collection of helpfull scripts being bundled
Stars: ✭ 127 (+746.67%)
Mutual labels:  active-directory
Paw
Stars: ✭ 243 (+1520%)
Mutual labels:  active-directory

Active Directory Lookup

Active Directory Lookup is an extremely simple Java API to access MS Active Directory for common tasks like user authentication and search. This lightweight library does not depend on any other library (No transitive dependencies) and is merely 17Kb in size. It also provides a minimal CLI for quick operations.

Quick Start

Assuming we know the values of these variables

String domain;              // e.g. acme.org
String url;                 // e.g. ldap://somehost.acme.org or ldap://someotherhost.com
String searchBase;          // e.g. dc=acme,dc=org
String username;            // e.g. johndoe
String password;            // e.g. password

Authenticating with Active Directory

authenticator = new ActiveDirectoryAuthenticator(domain, url); // check out other constructors
    
authenticator.authenticate(username, password);

Searching in Active Directory

searcher = new SimpleActiveDirectorySearcher(url, domain, username, password, searchBase);

searcher.searchByUsername("superman");

Building LdapContext

LdapContext ldapContext = ActiveDirectoryAuthenticator
                .getDefaultActiveDirectoryBinder()
                .getLdapContext(url, domain, username, password);

Installation

The built library can be consumed directly from jitpack repo

Release

Using Gradle

Add this at the top of build.gradle

allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
    }
}

Add/merge the dependency in the dependencies section

dependencies {
    implementation "com.kdabir:active-directory-lookup:1.0.2" 
}

Using Maven

Add this to the pom.xml

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

Add this to the dependencies section within pom.xml

<dependency>
    <groupId>com.kdabir</groupId>
    <artifactId>active-directory-lookup</artifactId>
    <version>1.0.2</version>
</dependency>

API Documentation

Browse the JavaDoc for details. The key methods to look out for are:

Building Locally

The project is built and packaged using Gradle.

Unit Testing

gradle test

Unit tests do not depend on any Active Directory instance and hence can be run without any configuration whatsoever.

Integration Testing

gradle integrationTests

You need to set the adl.properties in the root of the project with the right configuration set in order to run Integration Tests.

Installing to local Maven repo

gradle publishToMavenLocal

This make's the jar available in you local maven repository for usage.

References :

Finding configuration

nslookup -type=srv _ldap._tcp.DOMAINNAME

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].