django_ca.typehints
- Type aliases¶
Various type aliases used in throughout django-ca.
- django_ca.typehints.AccessMethods¶
Serialized access method for
AccessDescription
instances.alias of
Literal
[‘ocsp’, ‘ca_issuers’, ‘ca_repository’]
- django_ca.typehints.AllowedHashTypes¶
Hash algorithms that can be used for signing certificates. NOTE: This is a duplicate of the protected
cryptography.x509.base._AllowedHashTypes
.alias of
Union
[SHA224
,SHA256
,SHA384
,SHA512
,SHA3_224
,SHA3_256
,SHA3_384
,SHA3_512
]
- django_ca.typehints.CertificateExtensionKeys¶
Extension keys for extensions that may occur in a certificate.
alias of
Literal
[‘authority_information_access’, ‘authority_key_identifier’, ‘basic_constraints’, ‘certificate_policies’, ‘crl_distribution_points’, ‘extended_key_usage’, ‘freshest_crl’, ‘issuer_alternative_name’, ‘key_usage’, ‘ms_certificate_template’, ‘ocsp_no_check’, ‘precert_poison’, ‘precertificate_signed_certificate_timestamps’, ‘signed_certificate_timestamps’, ‘subject_alternative_name’, ‘subject_information_access’, ‘subject_key_identifier’, ‘tls_feature’]
- django_ca.typehints.ExtensionKeys¶
Extension keys for all known x509 Extensions.
This literal is a superset of
CertificateExtensionKeys
and includes extensions that may occur in certificate authorities or CRLs.alias of
Union
[Literal
[‘authority_information_access’, ‘authority_key_identifier’, ‘basic_constraints’, ‘certificate_policies’, ‘crl_distribution_points’, ‘extended_key_usage’, ‘freshest_crl’, ‘issuer_alternative_name’, ‘key_usage’, ‘ms_certificate_template’, ‘ocsp_no_check’, ‘precert_poison’, ‘precertificate_signed_certificate_timestamps’, ‘signed_certificate_timestamps’, ‘subject_alternative_name’, ‘subject_information_access’, ‘subject_key_identifier’, ‘tls_feature’],Literal
[‘crl_number’, ‘delta_crl_indicator’, ‘inhibit_any_policy’, ‘issuing_distribution_point’, ‘name_constraints’, ‘policy_constraints’, ‘policy_mappings’, ‘subject_directory_attributes’]]
- django_ca.typehints.GeneralNames¶
Valid types of general names.
alias of
Literal
[‘email’, ‘URI’, ‘IP’, ‘DNS’, ‘RID’, ‘dirName’, ‘otherName’]
- django_ca.typehints.HashAlgorithms¶
Valid hash algorithm names.
These names are used in various settings, with the
--algorithm
command line parameter and in the API.alias of
Literal
[‘SHA-224’, ‘SHA-256’, ‘SHA-384’, ‘SHA-512’, ‘SHA3/224’, ‘SHA3/256’, ‘SHA3/384’, ‘SHA3/512’]
- django_ca.typehints.IPAddressType¶
Union of all IP address types
alias of
Union
[IPv4Address
,IPv6Address
,IPv4Network
,IPv6Network
]
- django_ca.typehints.KeyUsages¶
List of possible values for
KeyUsage
instances.alias of
Literal
[‘crl_sign’, ‘data_encipherment’, ‘decipher_only’, ‘digital_signature’, ‘encipher_only’, ‘key_agreement’, ‘key_cert_sign’, ‘key_encipherment’, ‘content_commitment’]
- django_ca.typehints.LogEntryTypes¶
Serialized values of
LogEntryType
instances.alias of
Literal
[‘precertificate’, ‘x509_certificate’]
- django_ca.typehints.OtherNames¶
Valid OtherName types
alias of
Literal
[‘UTF8String’, ‘UNIVERSALSTRING’, ‘IA5STRING’, ‘BOOLEAN’, ‘NULL’, ‘UTCTIME’, ‘GENERALIZEDTIME’, ‘INTEGER’, ‘OctetString’]
- class django_ca.typehints.ParsableAuthorityInformationAccess[source]¶
Parsable Authority Information Access extension.
- issuers: Iterable[GeneralName | str] | None¶
- ocsp: Iterable[GeneralName | str] | None¶
- class django_ca.typehints.ParsableAuthorityKeyIdentifierDict[source]¶
Parsable version of the ParsableAuthorityKeyIdentifier extension.
- class django_ca.typehints.ParsableBasicConstraints[source]¶
Serialized representation of a BasicConstraints extension.
A value of this type is a dictionary with a
"ca"
key with a boolean value. IfTrue
, it also has a"path_length"
value that is eitherNone
or an int.
- class django_ca.typehints.ParsableDistributionPoint[source]¶
Parsable version of a Distribution Point.
- crl_issuer: Iterable[GeneralName | str]¶
- full_name: Iterable[GeneralName | str] | None¶
- reasons: Iterable[str | ReasonFlags]¶
- relative_name: list[SerializedObjectIdentifier] | RelativeDistinguishedName¶
- class django_ca.typehints.ParsableNameConstraints[source]¶
Parsable NameConstraints extension.
- excluded: Iterable[GeneralName | str]¶
- permitted: Iterable[GeneralName | str]¶
- class django_ca.typehints.ParsablePolicyInformation[source]¶
Parsable version of the Policy Information extension.
- policy_identifier: str | ObjectIdentifier¶
- policy_qualifiers: Sequence[str | UserNotice | ParsableUserNotice] | None¶
- class django_ca.typehints.ParsableUserNotice[source]¶
Parsable version of a User Notice.
- notice_reference: NoticeReference | ParsableNoticeReference¶
- class django_ca.typehints.ProfileExtensionValue[source]¶
Typed dict as it occurs in profiles.
This TypedDict lacks a type, as the configuration uses a dictionary with the type as mapping key.
This TypedDict is more lenient than
SerializedPydanticExtension
, as critical often has a default, and value may not be set for extensions that don’t have a value.
- class django_ca.typehints.SerializedNoticeReference[source]¶
Serialized variant of a Notice Reference.
- class django_ca.typehints.SerializedObjectIdentifier[source]¶
Parsable version of an object identifier.
- class django_ca.typehints.SerializedPolicyInformation[source]¶
Serialized variant of a PolicyInformation extension.
- policy_qualifiers: list[str | SerializedUserNotice] | None¶
- class django_ca.typehints.SerializedProfile[source]¶
Serialized profile.
- algorithm: Literal['SHA-224', 'SHA-256', 'SHA-384', 'SHA-512', 'SHA3/224', 'SHA3/256', 'SHA3/384', 'SHA3/512'] | None¶
- clear_extensions: list[Literal['authority_information_access', 'authority_key_identifier', 'basic_constraints', 'certificate_policies', 'crl_distribution_points', 'extended_key_usage', 'freshest_crl', 'issuer_alternative_name', 'key_usage', 'ms_certificate_template', 'ocsp_no_check', 'precert_poison', 'precertificate_signed_certificate_timestamps', 'signed_certificate_timestamps', 'subject_alternative_name', 'subject_information_access', 'subject_key_identifier', 'tls_feature']]¶
- extensions: list[SerializedPydanticExtension]¶
- subject: list[SerializedPydanticNameAttribute] | None¶
- class django_ca.typehints.SerializedPydanticExtension[source]¶
Serialized pydantic extension.
- type: Literal['authority_information_access', 'authority_key_identifier', 'basic_constraints', 'certificate_policies', 'crl_distribution_points', 'extended_key_usage', 'freshest_crl', 'issuer_alternative_name', 'key_usage', 'ms_certificate_template', 'ocsp_no_check', 'precert_poison', 'precertificate_signed_certificate_timestamps', 'signed_certificate_timestamps', 'subject_alternative_name', 'subject_information_access', 'subject_key_identifier', 'tls_feature']¶
- class django_ca.typehints.SerializedPydanticNameAttribute[source]¶
Serialized version of a Pydantic name attribute.
- class django_ca.typehints.SerializedUserNotice[source]¶
Serialized variant of a User Notice.
- notice_reference: SerializedNoticeReference¶
TypeVars for generics¶
- typehints.ExtensionTypeTypeVar = ~ExtensionTypeTypeVar¶
A TypeVar bound to
ExtensionType
.