Skip to content
This repository has been archived by the owner. It is now read-only.
Installable taxii_services
Python
Branch: master
Clone or download
clenk Update README.rst
Fix link.
Latest commit be116b3 May 10, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs Bump version to 0.6 May 10, 2019
taxii_services Bump version to 0.6 May 10, 2019
tests Upgrade to Django 1.11.19 May 2, 2019
.gitignore Ignored _site Oct 22, 2014
.isort.cfg Sort imports correctly. Nov 13, 2017
.pre-commit-config.yaml Add pre-commit configuration. Nov 13, 2017
.travis.yml Update notification email [skip ci] Aug 1, 2018
LICENSE.txt Remove trailing whitespace Nov 13, 2017
MANIFEST.in
README.rst Update README.rst May 10, 2019
requirements.txt Remove space in requirements.txt for consistency Apr 1, 2015
runtests.py Sort imports correctly. Nov 13, 2017
setup.py Upgrade to Django 1.11.19 May 2, 2019
tox.ini Make tests run more flexibly Feb 3, 2015

README.rst

django-taxii-services

Please Note:

This library is no longer maintained. If you need an open source TAXII 1.X implementation, please see this list of other libraries.

Source:https://github.com/TAXIIProject/django-taxii-services
Documentation:http://taxii-services.readthedocs.io
Information:http://taxiiproject.github.io/
Download:https://pypi.python.org/pypi/taxii-services

Build Status Code Health version badge downloads badge

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.

If you see anything you'd like to ask a question on, please open an issue on GitHub or contact the TAXII Team 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

Please provide feedback and/or comments on open issues to taxii@mitre.org.

License

For license information, see the LICENSE.txt file.

You can’t perform that action at this time.