Documentation Index
Fetch the complete documentation index at: https://docs.activeviam.com/llms.txt
Use this file to discover all available pages before exploring further.
final class atoti.ClientCertificate
A client certificate to connect() to a session configured with ClientCertificateConfig.
Example
>>> certificate_authority = certificates_directory / "root-CA.crt"
>>> session_config = tt.SessionConfig(
... security=tt.SecurityConfig(
... client_certificate=tt.ClientCertificateConfig(
... trust_store=certificates_directory / "truststore.jks",
... trust_store_password="changeit",
... ),
... https=tt.HttpsConfig(
... certificate=certificates_directory / "localhost.p12",
... certificate_authority=certificate_authority,
... password="changeit",
... ),
... )
... )
>>> session = tt.Session.start(session_config)
>>> session.security.individual_roles["patachoux"] = {"ROLE_BOT", "ROLE_USER"}
>>> # The session requires authentication:
>>> tt.Session.connect(
... session.url, certificate_authority=certificate_authority
... )
Traceback (most recent call last):
...
httpx.HTTPStatusError: Client error '401 '...
>>> connected_session = tt.Session.connect(
... session.url,
... authentication=tt.ClientCertificate(
... certificates_directory / "client.pem",
... keyfile=certificates_directory / "client.key",
... ),
... certificate_authority=certificate_authority,
... )
>>> user = connected_session.user
>>> user.name
'patachoux'
>>> sorted(user.roles)
['ROLE_BOT', 'ROLE_USER']
certificate : Path
Path to the .pem file containing the client certificate.
keyfile : Path | None = None
Path to the certificate .key file.
password : str | None = None
The certificate password.