tiny_ca.storage.async_local_storage module¶
- class tiny_ca.storage.async_local_storage.AsyncLocalStorage(base_folder='./certs', base_encoding=Encoding.PEM, base_private_format=PrivateFormat.TraditionalOpenSSL, base_public_format=PublicFormat.SubjectPublicKeyInfo, base_encryption_algorithm=<cryptography.hazmat.primitives._serialization.NoEncryption object>, logger=None)[source]¶
Bases:
LocalStorage- Parameters:
base_folder (str | Path)
base_encoding (serialization.Encoding)
base_private_format (serialization.PrivateFormat)
base_public_format (serialization.PublicFormat)
base_encryption_algorithm (serialization.KeySerializationEncryption)
logger (Logger | None)
- async delete_certificate_folder(uuid_str, cert_path=None)[source]¶
Recursively remove the directory identified by uuid_str.
The target path is resolved as:
<base_folder> / [cert_path/] / <uuid_str>
The operation is idempotent: if the directory does not exist a
UserWarningis emitted andTrueis returned (no action needed). If the path exists but is a regular file rather than a directory, aUserWarningis emitted andTrueis returned (not our directory). Only a genuineOSErrorduringshutil.rmtreecausesFalse.- Parameters:
- Returns:
True— directory removed, or path was already absent.False—OSErroroccurred; check logs for details.- Return type:
- Warns:
UserWarning – If the target path does not exist or is not a directory.
- async save_certificate(cert, file_name, cert_path=None, uuid_str=None, encoding=None, private_format=None, public_format=None, encryption_algorithm=None, is_add_uuid=True, is_overwrite=False)[source]¶
Serialise cert and write the result to the local filesystem.
Assembles the output path as:
<base_folder> / [cert_path/] / [<uuid>/] / <file_name><ext>
Where ext is determined automatically from the type of cert.
- Parameters:
cert (CryptoObject) – Cryptographic object to serialise and persist.
file_name (str) – Base filename without extension (e.g.
"ca","nginx").cert_path (str | Path | None) – Optional sub-directory appended after base_folder.
uuid_str (str | None) – Reuse an existing UUID directory by passing the value returned by a previous
save_certificatecall.Noneauto-generates a new UUID. Ignored when is_add_uuid isFalse.encoding (serialization.Encoding | None) – Encoding override.
Noneuses base_encoding.private_format (serialization.PrivateFormat | None) – Private-key format override.
Noneuses base_private_format.public_format (serialization.PublicFormat | None) – Public-key format override.
Noneuses base_public_format.encryption_algorithm (serialization.KeySerializationEncryption | None) – Private-key encryption override.
Noneuses base_encryption_algorithm.is_add_uuid (bool) – When
True(default), a UUID subdirectory is inserted. Set toFalsefor singleton files such as CRL that are regenerated in-place.is_overwrite (bool) – When
True, silently replace an existing file. WhenFalse(default), raiseFileAlreadyExists.
- Returns:
(absolute_path_to_written_file, uuid_used). uuid_used isNonewhen is_add_uuid isFalse.- Return type:
- Raises:
FileAlreadyExists – If the computed target path already exists and is_overwrite is
False.TypeError – If cert is not a supported cryptographic type.