
    5i	                     h    d dl Z d dlZd dlmZ d dlmZ d dlmZmZ d Z	e
dk    r e	             dS dS )    N)MSLDAPClientConnection)LDAPConnectionFactory)MSADUserMSADMachinec                     dd l } |                     d          }|                    ddddd           |                    d	d
           |                    dd           |                    d          }d|_        d|_        |                    dd          }|                    dd           |                    dd          }|                    dd           |                    dd          }|                                }|j        dk    r t          j
        t          j                   nt          j
        t          j                   t          j        |j                  }|                                }|                                }	t%          t'          |                     t%          t'          |	                     t)          ||	          }
|j        dk    r#t%          |
                                           d S |j        dk    r|
                                 |
                                }t3          |j        ddd          5 }t7          j        |d          }|                    t<          j                   |
                                 D ]4}|                    |!                    t<          j                             5	 d d d            n# 1 swxY w Y   t3          |j        d z   ddd          5 }t7          j        |d          }|                    tD          j                   |
#                                D ]4}|                    |!                    tD          j                             5	 d d d            d S # 1 swxY w Y   d S |j        dk    r|
                                 |
                                \  }}t3          |j        ddd          5 }|
$                                D ]}|%                    |j&        d!z               	 d d d            d S # 1 swxY w Y   d S d S )"Nr   zMS LDAP library)descriptionz-vz	--verbosecountzVerbosity, can be stacked)actiondefaulthelp
connectionz Connection string in URL format.)r   z--treez$LDAP tree to perform the searches oncommandsTcommanddumpz!Dump all user objects to TSV fileoutfilezoutput filespnzBDump all users with servicePrincipalName attribute set to TSV filedsazGrab basic info about the AD)levelw utf8)newlineencoding	)	delimiter_compz
)'argparseArgumentParseradd_argumentadd_subparsersrequireddest
add_parser
parse_argsverboseloggingbasicConfigINFODEBUGr   from_urlr   get_credential
get_targetprintstrr   r   get_server_infoconnectget_ad_infoopenr   csvwriterwriterowr   	TSV_ATTRSget_all_user_objectsget_rowr   get_all_machine_objectsget_all_service_user_objectswritesAMAccountName)r   parser
subparsers
dump_group	spn_group	dsa_groupargsurl_deccredstargetr   adinfofr4   usercomperrs                    E/home/kali/Ninja/venv/lib/python3.11/site-packages/msldap/__main__.pyrunrL      s   

!
!.?
!
@
@T;wHcddd\(JKKKX$JKKK##:#66##F1T#UU777""5/s"tt
	666""5/M"NN 	LA	GL)))))	GM**** )$/::				!	!




s5zzs6{{$UF33LE
""$$%%%%%
lf!!##&DL#rf=== 6Jqd+++6	??8%&&&..00 6 6t
OODLL!344555566 6 6 6 6 6 6 6 6 6 6 6 6 6 6 DL7"CGGG 91Jqd+++6	??;()))1133 9 9t
OODLL!677888899 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 le&&((+&#DL#rf=== *6688 * *tGGD&())))** * * * * * * * * * * * * * * * * * s8   A?K''K+.K+A?NN!N55P88P<?P<__main__)r&   r3   msldap.connectionr   msldap.commons.factoryr   msldap.ldap_objectsr   r   rL   __name__     rK   <module>rT      s     



 4 4 4 4 4 4 8 8 8 8 8 8 5 5 5 5 5 5 5 5:* :* :*x z rS   