Metadata-Version: 2.0
Name: trailscraper
Version: 0.3.0
Summary: A command-line tool to get valuable information out of AWS CloudTrail
Home-page: http://github.com/flosell/trailscraper
Author: Florian Sellmayr
Author-email: florian.sellmayr@gmail.com
License: Apache License 2.0
Description-Content-Type: UNKNOWN
Keywords: aws,cloud,iam,cloudtrail,trailscraper
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Topic :: Software Development :: Code Generators
Classifier: Topic :: Utilities
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Security
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Requires-Python: >=2.7
Requires-Dist: boto3 (==1.4.7)
Requires-Dist: click (==6.7)
Requires-Dist: toolz (==0.8.2)

TrailScraper
============

|PyPi Release| |Build Status|

A command-line tool to get valuable information out of AWS CloudTrail

Installation
------------

.. code:: bash

    # install custom dependeny since PR cloudtools/awacs#87 isn't merged yet
    $ pip install 'http://github.com/flosell/awacs/tarball/add_equality_and_hashes#egg=awacs-0.7.2'
    # install trailscraper
    $ pip install trailscraper

Usage
-----

.. code:: bash

    # Download some logs
    $ trailscraper download --bucket <some-bucket> \
                            --account-id <some account id> \
                            --region <some region to look at> \ 
                            --past-days <number of past days to look at> \
    # Generate an IAM Policy  
    $ trailscraper generate
    {
        "Statement": [
            {
                "Action": [
                    "ec2:DescribeInstances",
                    "ec2:DescribeSecurityGroups",
                    "ec2:DescribeSubnets",
                    "ec2:DescribeVolumes",
                    "ec2:DescribeVpcs",
                ],
                "Effect": "Allow",
                "Resource": [
                    "*"
                ]
            },
            {
                "Action": [
                    "sts:AssumeRole"
                ],
                "Effect": "Allow",
                "Resource": [
                    "arn:aws:iam::1111111111:role/someRole"
                ]
            }
        ],
        "Version": "2012-10-17"
    } 

Development
-----------

.. code:: bash

    $ ./go setup   # set up venv, dependencies and tools
    $ ./go test    # run some tests
    $ ./go check   # run some style checks
    $ ./go         # let's see what we can do here

Troubleshooting
~~~~~~~~~~~~~~~

Click thinks you are in an ASCII environment
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

``Click will abort further execution because Python 3 was configured to use ASCII as encoding for the environment.``

Set these environment variables:

::

    LC_ALL=C.UTF-8
    LANG=C.UTF-8

.. |PyPi Release| image:: https://img.shields.io/pypi/v/trailscraper.svg
   :target: https://pypi.python.org/pypi/trailscraper
.. |Build Status| image:: https://travis-ci.org/flosell/trailscraper.svg?branch=master
   :target: https://travis-ci.org/flosell/trailscraper


Changelog
=========

This changelog contains a loose collection of changes in every release
including breaking changes to the API.

The format is based on `Keep a Changelog <http://keepachangelog.com/>`__

0.3.0
-----

Changed
~~~~~~~

Added
~~~~~

-  Support for Python >= 2.7

.. changed-1:

Changed
~~~~~~~

-  Do not download CloudTrail Logs from S3 if they already exist in the
   target folder (#9)
-  Removed dependency on fork of the awacs-library to simplify
   installation and development

Fixed
~~~~~

-  Bug that led to policy-statements with the same set of actions not
   being combined properly in some cases (#7)

.. section-1:

0.2.0
-----

.. added-1:

Added
~~~~~

-  Basic filtering for role-arns when generating policy (#3)

.. section-2:

0.1.0
-----

*Initial Release*

.. added-2:

Added
~~~~~

-  Basic feature to download CloudTrail Logs from S3 for certain
   accounts and timeframe
-  Basic feature to generate IAM Policies from a set of downloaded
   CloudTrail logs


