Automated security testing built right into your workflow!
You already use flake8 to lint all your code for errors, ensure docstrings are formatted correctly, sort your imports correctly, and much more… so why not ensure you are writing secure code while you’re at it? If you already have flake8 installed all it takes is
pip install flake8-bandit.
To include or exclude tests, use the standard
.bandit configuration file. An example valid
.bandit config file:
[bandit] exclude = /frontend,/scripts,/tests,/venv tests: B101
In this case, we’ve specified to ignore a number of paths, and to only test for B101.
Note: flake8-bugbear uses bandit default prefix ‘B’ so this plugin replaces the ‘B’ with an ‘S’ for Security. For more information, see https://github.com/PyCQA/flake8-bugbear/issues/37