1{ 2 lib, 3 asn1crypto, 4 buildPythonPackage, 5 cryptography, 6 dnspython, 7 fetchFromGitHub, 8 gssapi, 9 hatchling, 10 ldap3, 11 msldap, 12 pyasn1, 13 pytestCheckHook, 14 pythonOlder, 15 winacl, 16}: 17 18buildPythonPackage rec { 19 pname = "bloodyad"; 20 version = "2.0.3"; 21 pyproject = true; 22 23 disabled = pythonOlder "3.8"; 24 25 src = fetchFromGitHub { 26 owner = "CravateRouge"; 27 repo = "bloodyAD"; 28 rev = "refs/tags/v${version}"; 29 hash = "sha256-+Lw9Apm+zzUlM19fGgxOb2bTmmKQ1Nd7dUjF9rhHXKQ="; 30 }; 31 32 build-system = [ hatchling ]; 33 34 dependencies = [ 35 asn1crypto 36 cryptography 37 dnspython 38 gssapi 39 ldap3 40 msldap 41 pyasn1 42 winacl 43 ]; 44 45 nativeCheckInputs = [ pytestCheckHook ]; 46 47 pythonImportsCheck = [ "bloodyAD" ]; 48 49 disabledTests = [ 50 # Tests require network access 51 "test_01AuthCreateUser" 52 "test_02SearchAndGetChildAndGetWritable" 53 "test_03UacOwnerGenericShadowGroupPasswordDCSync" 54 "test_04ComputerRbcdGetSetAttribute" 55 "test_06AddRemoveGetDnsRecord" 56 ]; 57 58 meta = with lib; { 59 description = "Module for Active Directory Privilege Escalations"; 60 homepage = "https://github.com/CravateRouge/bloodyAD"; 61 changelog = "https://github.com/CravateRouge/bloodyAD/releases/tag/v${version}"; 62 license = licenses.mit; 63 maintainers = with maintainers; [ fab ]; 64 }; 65}