1.10.0 (2018-11-03)¶
New dependency: django-object-actions.
Add ability to resign existing certificates.
Management command
list_cas
now optionally supports a tree view.Use more consistent naming for extensions throughout the code and documentation.
Renamed the
--tls-features
option of thesign_cert
command to--tls-feature
, in line with the actual name of the extension.Allow the
TLSFeature
extension in profiles.Add link in the admin interface to easily download certificate bundles.
Support ECC private keys for new Certificate Authorities.
Store CA private keys in the more secure PKCS8 format.
The Certificate change view now has a second “Revoke” button as object action next to the “History” button.
Python API¶
Add the Python API as a fully supported interface to django-ca.
New module
django_ca.extensions
to allow easy and consistent handling of X509 extensions.Fully document various member attributes of
CertificateAuthority
andCertificate
, as welldjango_ca.subject.Subject
and as all new Python code.The parameters for functions in
CertificateManager
andinit()
were cleaned up for consistent naming and so that a user no longer needs to use classes from the cryptography library. Parameters are now optional if default settings exist.Variable names have been renamed to be more consistent to make the code more readable.
Testing¶
Also test with Python 3.7.0.
Add configuration for tox.
Speed up test-suite by using
force_login()
and PASSWORD_HASHERS.Load keys and certs in for every test case instead for every class, improving test case isolation.
Add two certificates that include all and no extensions at all respectively to be able to test edge cases more consistently and thoroughly.
Add function
cmd_e2e
to call manage.py scripts in a way that arguments are passed by argparse as if they where called from the command-line. This allows more complete testing including parsing command-line arguments.Error on any
warnings
coming from django-ca when running the test-suite.