oc_chat
Loading...
Searching...
No Matches
secrets_store.py File Reference

Go to the source code of this file.

Classes

class  oc_chat.registry.auth.secrets_store.SecretBlock

Namespaces

namespace  oc_chat
namespace  oc_chat.registry
namespace  oc_chat.registry.auth
namespace  oc_chat.registry.auth.secrets_store

Functions

bytes oc_chat.registry.auth.secrets_store.generate_secret ()
str oc_chat.registry.auth.secrets_store.encode_secret (bytes raw_secret)
str oc_chat.registry.auth.secrets_store.fingerprint_secret (bytes raw_secret)
SecretBlock oc_chat.registry.auth.secrets_store.block_from_secret (*, str slot, str phase, str hmac_key_id, bytes raw_secret, str|None created_at=None, str|None expires_at=None)
dict[str, dict[str, SecretBlock]] oc_chat.registry.auth.secrets_store.load_secrets (str|Path path=DEFAULT_SECRETS_PATH)
Path oc_chat.registry.auth.secrets_store.write_secrets (Mapping[str, Mapping[str, SecretBlock]] blocks, str|Path path=DEFAULT_SECRETS_PATH)
SecretBlock|None oc_chat.registry.auth.secrets_store.select_secret (Mapping[str, Mapping[str, SecretBlock]] blocks, *, str slot, str|None hmac_key_id=None, tuple[str,...] phase_preference=("rotating_new", "active", "rotating_old"))
SecretBlock|None oc_chat.registry.auth.secrets_store._parse_block (str slot, str phase, Mapping[str, object] value)
None oc_chat.registry.auth.secrets_store._chmod_secret (Path path)

Variables

int oc_chat.registry.auth.secrets_store.SECRET_FILE_MODE = 0o600
str oc_chat.registry.auth.secrets_store.DEFAULT_SECRETS_PATH = Path(".option_c") / "agent_secrets.json"
dict oc_chat.registry.auth.secrets_store.ROTATION_PHASES = {"active", "rotating_old", "rotating_new"}