Skip to main content

Django TAXII installable app & utilities for creating TAXII Django Web Apps.

Project description

Overview

django-taxii-services is an installable Django app that enables application developers to rapidly create TAXII Applications that cover any aspect of TAXII 1.0 and TAXII 1.1. Key aspects of django-taxii-services include:

  • Reusable - You can install it

  • Extensible - You can extend (almost) any aspect of django-taxii-services to perform your custom application logic

  • Complete - Covers 100% of TAXII 1.0 and TAXII 1.1 (this is more of a goal, at the moment)

  • Easy - Always a subjective term, but django-taxii-services aims to be easy to use.

Please Note that this library is under rapid development. If you see anything you’d like to ask a question on, please open an issue on GitHub or contact the public discussion list (taxii-discussion-list@lists.mitre.org) or contact the TAXII Team privately at taxii@mitre.org

Using django-taxii-services

Create your own Django project, install django-taxii-services, and modify your settings.py to add taxii_services (e.g.,):

INSTALLED_APPS = (
    ...
    'taxii_services',
)

MIDDLEWARE_CLASSES = (
    ...
    'taxii_services.middleware.StatusMessageExceptionMiddleware'
)

# Add a logger if you'd like
LOGGING = {
    ...
    'loggers': {
        ...
        'taxii_services': {
            'handlers': ['normal','stdout'],
            'level': LOG_LEVEL,
            'propagate': True,
        },
    }
}

Some Key Features

(This section is kind of a brain dump and should eventually be moved to readthedocs when it matures)

  • exceptions.StatusMessageException / middleware.StatusMessageExceptionMiddleware - These, when used together, allow developers to raise a StatusMessageException() anywhere and have the server automagically create a StatusMessage in response (might be a TAXII 1.0 or 1.1 Status Message depending on the request). If you have taxii_services.middleware.StatusMessageExceptionMiddleware in your MIDDLEWARAE_CLASSES, you can just raise taxii_services.exceptions.StatusMessageException( ... ) from anywhere and have django-taxii-services send back a StatusMessage.

  • Register your own message handler - use taxii_services.management.register_message_handler()

  • Some convenience methods:

  • taxii_services.register_admins - Register some/all admins to the Django admin interface

  • taxii_services.register_message_handlers - Register some/all built-in message handlers

Dependencies

TODO: Document the dependencies

Feedback

You are encouraged to provide feedback by commenting on open issues or signing up for the TAXII discussion list and posting your questions (http://taxii.mitre.org/community/registration.html).

License

For license information, see the LICENSE.txt file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

taxii_services-0.3.zip (90.7 kB view hashes)

Uploaded Source

taxii_services-0.3.tar.gz (65.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page