python active directory cli using python-ldap lib
Project description
padc
cli using python-ldap lib to create connections with Active Directory this project use poetry
Setup for development
create virtual environment
python -m venv .venv
activate environment
poetry shell
install padc
poetry install
Create .env file inside root directory to establish a ldap connection
.env
URI='ldap://192.168.0.213'
BIND_DN='administrator@rts.local'
AUTH_PASS='Mypasswd@123'
CA_PATH=''
BASE_DN='DC=RTS,DC=LOCAL'
padc
has logging_settings.ini inside padc/config
[loggers]
keys = root
[handlers]
keys = FileHandler,StreamHandler
[formatters]
keys = simpleFormatter
[logger_root]
level = DEBUG
handlers = FileHandler,StreamHandler
[handler_FileHandler]
class = FileHandler
formatter = simpleFormatter
args = ('padc.log', 'a')
[handler_StreamHandler]
class = StreamHandler
formatter = simpleFormatter
args = (sys.stdout,)
[formatter_simpleFormatter]
format = %(asctime)s:%(levelname)s: %(message)s
Install padc from pypi
pip install padc
You can modify where log file will be created by editing logging_settings.ini the default file is created at current directory with name 'padc.log'
Running
cli written in Typer to manipulate operations in AD
padc --help
users
is the main subcommand, every subcommand has a helper option
pacd users --help
padc
has in users subcommand some basic operations
if one of the supported operations run with --debug
option
when errors occurs the traceback and exception will be raised.
exp:
padc users create -f .env "Pingu pythonico" "Pingupassword@123" -c 514 --debug
padc users create-ldif -f .env --ldif example.ldif
padc users add-to-group --file .env "Pingu" "CN=testgroup,CN=Users,DC=RTS,DC=LOCAL" --debug
padc users remove-from-group --file .env "Pingu" "CN=testgroup,CN=Users,DC=RTS,DC=LOCAL"
padc users delete --file .env "Pingu pythonico"
padc users enable -f .env "Pingu" --debug
padc users disable "Pingu" --debug
Testing
Simple Unittest to create/delete/modify user account in AD
python -m unittest -v tests.test_msad
Building
poetry build
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file padc-1.0.tar.gz
.
File metadata
- Download URL: padc-1.0.tar.gz
- Upload date:
- Size: 9.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.10.9 Linux/6.1.12-arch1-1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
f3472f8b01247e4b1032c0e66eb1b46b9c2cb61627a13a1d951361b7af49e7f3
|
|
MD5 |
6cee8b71550d9c9e714707e569485539
|
|
BLAKE2b-256 |
a7c1e2d8ddabe77f353c618a223937554772b637a046e673090125461d4129e0
|
File details
Details for the file padc-1.0-py3-none-any.whl
.
File metadata
- Download URL: padc-1.0-py3-none-any.whl
- Upload date:
- Size: 12.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.10.9 Linux/6.1.12-arch1-1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
5eda633ee88e69879cab7c0a5d03cf054b31252f4a4a0b9c54b3af0a46886716
|
|
MD5 |
2c2ce57ad240606d4d719666698922c6
|
|
BLAKE2b-256 |
34a6c9fe9229bbb1e8ec8de42240f86d922c790c26ad5e430ea8daf0faa2b80c
|