Metadata-Version: 1.1
Name: edm-client
Version: 1.1.0
Summary: Edge Defense Manager Client
Home-page: UNKNOWN
Author: Steve William, NETSCOUT Systems, Inc.
Author-email: swilliam@netscout.com
License: MIT
Description: Edge Defense Manager Client
        ===========================
        
        This simple client allows you to use Edge Defense Manager's public API.
        
        Requirements
        ------------
        
        -  Python (tested on Python 2.7 and Python 3.6.5)
        -  Requests
        
        Installation:
        -------------
        
        .. code:: bash
        
            sudo pip install edm-client
        
        Source code is available on `GitHub
        <https://github.com/arbor/fidoclient>`_.
        
        Generating an API Token From Edge Defense Manager
        -------------------------------------------------
        
        Access to the Edge Defense Manager API requires an API token for authentication. You generate the token in the EDM command line interface (CLI).
        
        The API token is associated with the user account under which it is generated. Any user can generate an EDM API token, except for the root user.
        
        To generate an EDM API token:
        
        #. Establish an SSH connection to EDM.
        
        #. Log in to the operating system CLI with your EDM credentials.
        
        #. To create the token, enter **edm\_apitoken\_gen**.
        
           The system responds with the new API token, for example:
        
           .. code:: json
        
            { "admin": "LMttPZ45FXnJT6IokVh6Px-otiKGDMkUdyQmJMWmWGz" }
            
        
        #. For later use, copy the token and then paste it to a text file.
        
        #. To log out of the CLI, enter **exit**
        
        To View or delete a token, use one of the following commands.
        
        * edm\_apitoken\_show
        
        * edm\_apitoken\_delete
        
        Using the Client
        ----------------
        
        Import the package:
        
        .. code:: python
        
            from edmclient.edm import EdgeDefenseManager
            dev = EdgeDefenseManager(<host>, <apitoken>, api_version=<api_version, eg. 'v1'>, raise_on_error=<True|False>)
        
        Managing Devices
        ~~~~~~~~~~~~~~~~
        
        Add a device:
        
        .. code:: python
        
            dev.devices.add(host='aed_1.example.com',
                            apiToken='WWPi7_',
                            name='AED_1')
        
        View devices:
        
        .. code:: python
        
            dev.devices.show()
            dev.devices.show(id=1)
        
        Remove devices:
        
        .. code:: python
        
            dev.devices.remove(id=1)
        
        Update a device:
        
        .. code:: python
        
            dev.devices.update(id=1,
                               host='aed_1.example.com',
                               apiToken='WWPi7_',
                               name='AED_1')
        
        Partially update a device:
        
        .. code:: python
        
            dev.devices.update(id=1, name='NEW_AED_1')
            dev.devices.update(id=1, apiToken='sdf79_kjI')
        
        Viewing Alerts
        ~~~~~~~~~~~~~~
        
        View threats:
        
        .. code:: python
        
            dev.alerts.threats.show(start='2018-09-08T00:00:00Z')
        
        View DDoS alerts:
        
        .. code:: python
        
            dev.alerts.ddos.show(start='2018-09-08T00:00:00Z')
        
        View DDoS counts:
        
        .. code:: python
        
            dev.alerts.ddos.count.show(start='2018-09-08T00:00:00Z')
        
        Viewing Traffic
        ~~~~~~~~~~~~~~~
        
        View traffic:
        
        .. code:: python
        
            dev.traffic.edge.show(start='2018-09-08T00:00:00Z')
        
        Viewing Contextual Threat Intelligence (CTI)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        View CTI data:
        
        .. code:: python
        
            dev.cti.insights.show(indicatorValue='1.2.3.4')
        
        Configuring CTI
        ~~~~~~~~~~~~~~~
        
        View the CTI configuration:
        
        .. code:: python
        
            dev.configuration.cti.show()
        
        Add or Update the CTI configuration:
        
        .. code:: python
        
            dev.configuration.cti.update(cti_token='ajfdgFJGFGmh27hnbv')
        
        Running Unit Tests
        ------------------
        
        If ``nose`` is not installed, then run:
        
        .. code:: bash
        
            pip3 install nose
        
        Run the following command from the package directory:
        
        .. code:: bash
        
            nosetests
        
        
Platform: UNKNOWN
Classifier: Operating System :: OS Independent
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
