est.views¶
Views for EST (Enrollment over Secure Transport) handling authentication and certificate issuance.
Attributes¶
Exceptions¶
Exception raised for username and password authentication failures. |
Classes¶
Custom HttpResponse that logs and prints error messages automatically. |
|
Mixin to extract the requested domain. |
|
Mixin providing common logic for EST simple enrollment operations. |
|
Handles simple EST (Enrollment over Secure Transport) enrollment requests. |
|
Handles simple EST enrollment requests without requiring domain or cert profile in URL. |
|
Handles simple EST (Enrollment over Secure Transport) reenrollment requests. |
|
View to handle the EST /cacerts endpoint. |
|
View to handle the EST /csrattrs endpoint. |
Module Contents¶
- exception est.views.UsernamePasswordAuthenticationError[source]¶
Bases:
ExceptionException raised for username and password authentication failures.
- class est.views.LoggedHttpResponse(content=b'', status=None, *args, **kwargs)[source]¶
Bases:
django.http.HttpResponse,trustpoint.logger.LoggerMixinCustom HttpResponse that logs and prints error messages automatically.
- Parameters:
content (str | bytes)
status (int | None)
args (Any)
kwargs (Any)
- class est.views.EstRequestedDomainExtractorMixin[source]¶
Mixin to extract the requested domain.
- This mixin sets:
self.requested_domain: The DomainModel instance based on the ‘domain’ parameter.
self.issuing_ca_certificate: The CA certificate for the requested domain.
self.signature_suite: The signature suite derived from the CA certificate.
- requested_domain: pki.models.domain.DomainModel | None[source]¶
- extract_requested_domain(domain_name)[source]¶
Extracts the requested domain and sets the relevant certificate and signature suite.
- Returns:
The response from the parent class’s dispatch method.
- Parameters:
domain_name (str)
- Return type:
tuple[pki.models.domain.DomainModel | None, LoggedHttpResponse | None]
- class est.views.EstSimpleEnrollmentMixin[source]¶
Bases:
trustpoint.logger.LoggerMixinMixin providing common logic for EST simple enrollment operations.
- process_enrollment(request, domain_name, cert_profile)[source]¶
Process an EST simple enrollment request.
- Parameters:
request (django.http.HttpRequest) – The HTTP request object.
domain_name (str | None) – The domain name (can be None for default).
cert_profile (str | None) – The certificate profile name (can be None for default).
- Returns:
LoggedHttpResponse with the enrollment result.
- Return type:
django.http.HttpResponse
- class est.views.EstSimpleEnrollmentView(**kwargs)[source]¶
Bases:
EstSimpleEnrollmentMixin,django.views.ViewHandles simple EST (Enrollment over Secure Transport) enrollment requests.
- class est.views.EstSimpleEnrollmentDefaultView(**kwargs)[source]¶
Bases:
EstSimpleEnrollmentMixin,django.views.ViewHandles simple EST enrollment requests without requiring domain or cert profile in URL.
- class est.views.EstSimpleReEnrollmentView(**kwargs)[source]¶
Bases:
trustpoint.logger.LoggerMixin,django.views.ViewHandles simple EST (Enrollment over Secure Transport) reenrollment requests.
This view processes certificate signing requests (CSRs), authenticates the client using either Mutual TLS or username/password, validates the device, and issues the requested certificate based on the certificate template specified in the request.
- class est.views.EstCACertsView(**kwargs)[source]¶
Bases:
EstRequestedDomainExtractorMixin,django.views.View,trustpoint.logger.LoggerMixinView to handle the EST /cacerts endpoint.
Returns the CA certificate chain in a (simplified) PKCS#7 MIME format.
URL pattern should supply the ‘domain’ parameter (e.g., /cacerts/<domain>/)
- class est.views.EstCsrAttrsView(**kwargs)[source]¶
Bases:
django.views.View,trustpoint.logger.LoggerMixinView to handle the EST /csrattrs endpoint.
This endpoint is not supported and returns 404 Not Found.