Metadata-Version: 2.1
Name: pyicacls
Version: 1.0.1
Summary: A package to show and set windows files permissions
Home-page: UNKNOWN
Author: GefGef
Author-email: gefen102@gmail.com
License: UNKNOWN
Description: # Pyicacls
        A package for simple Windows ACL management, much like the windows icacls binary.
        This package can run both on UNIX machines and Windows machines.
        
        ## How to use?
        For regular IT purposes you can use the script attached in the *example* folder.
        
        ```
        python examples/icacls.py -h
        usage: icacls.py [-h] --ip IP --user USER [--password PASSWORD] [--domain DOMAIN] [--share SHARE] --file-path FILE_PATH [--target-user TARGET_USER]
                         [--permissions PERMISSIONS]
        
        optional arguments:
          -h, --help            show this help message and exit
          --ip IP               ip of the target pc
          --user USER           user name to authenticate with
          --password PASSWORD   password to authenticate with (empty for interactive typing)
          --domain DOMAIN       domain of the user (empty for local workgroup)
          --share SHARE         share name to connect to
          --file-path FILE_PATH
                                file path to view / change permissions
          --target-user TARGET_USER
                                target user to change his permission
          --permissions PERMISSIONS
                                permissions to change in the format of <permission char>,<permission char>. example: R,W 
        ```
        
        For creating automated scripts and other advanced tasks you can use the *PermissionsGetter* and *PermissionsSetter*.
        
        ### To view permissions
        ```
        from pyicacls.getter import PermissionsGetter
        s = PermissionsGetter('127.0.0.1', 'MyPc', 'MyUsername', 'MyPassword', 'MyDomain')
        
        s.get_permissions('share', 'file.txt')
        ```
        Example output:
        ```
        Owner:  Home
        Group:  Domain Users
        Dacl's: Guest:(R):(W)(X)
                Administrator:(R)(D):(W)(X)
                Martin:(I):(R)(w)(D):(F)
                Everyone:(I):(R)(w)(D):(F)
        ```
        
        ### To set permissions
        ``` { .python }
        from pyicacls.setter import PermissionsSetter
        s = PermissionsSetter('127.0.0.1', 'MyPc', 'MyUsername', 'MyPassword', 'MyDomain')
        
        s.set_permissions('share', 'file.txt', 'Guest', 'R,W')
        ```
        
        The output for this operation will be bool - whether the operation succeeded or not.
        
        ### To remove permissions
        Simply pass `None` for the `permissions` parameter of the `set_permissions` function.
        ```
        s.set_permissions('share', 'file.txt', 'Guest', None)
        ```
        This will remove all permissions of the user ```Guest```.
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Description-Content-Type: text/markdown
