This commit is contained in:
@@ -1320,9 +1320,8 @@
|
||||
|
||||
<div class="doc doc-contents first">
|
||||
|
||||
<p>Redis-backed credential persistence for Mail Intake.</p>
|
||||
<hr />
|
||||
<h4 id="mail_intake.credentials.redis--summary">Summary</h4>
|
||||
<h3 id="mail_intake.credentials.redis--summary">Summary</h3>
|
||||
<p>Redis-backed credential persistence for Mail Intake.</p>
|
||||
<p>This module provides a Redis-based implementation of the
|
||||
<code>CredentialStore</code> abstraction, enabling credential persistence
|
||||
across distributed and horizontally scaled deployments.</p>
|
||||
@@ -1330,11 +1329,13 @@ across distributed and horizontally scaled deployments.</p>
|
||||
authentication credentials must be shared safely across multiple
|
||||
processes, containers, or nodes, such as container orchestration
|
||||
platforms and microservice architectures.</p>
|
||||
<p>Key characteristics:
|
||||
- Distributed-safe, shared storage using Redis
|
||||
- Explicit, caller-defined serialization and deserialization
|
||||
- No reliance on unsafe mechanisms such as pickle
|
||||
- Optional time-to-live (TTL) support for automatic credential expiry</p>
|
||||
<p>Key characteristics:</p>
|
||||
<ul>
|
||||
<li>Distributed-safe, shared storage using Redis.</li>
|
||||
<li>Explicit, caller-defined serialization and deserialization.</li>
|
||||
<li>No reliance on unsafe mechanisms such as <code>pickle</code>.</li>
|
||||
<li>Optional time-to-live (TTL) support for automatic credential expiry.</li>
|
||||
</ul>
|
||||
<p>This module is responsible solely for persistence concerns.
|
||||
Credential validation, refresh, rotation, and acquisition remain the
|
||||
responsibility of authentication provider implementations.</p>
|
||||
@@ -1364,7 +1365,7 @@ responsibility of authentication provider implementations.</p>
|
||||
|
||||
<div class="doc doc-contents ">
|
||||
<p class="doc doc-class-bases">
|
||||
Bases: <code><a class="autorefs autorefs-internal" title="mail_intake.credentials.store.CredentialStore" href="../../mail_intake/credentials/store/#mail_intake.credentials.store.CredentialStore">CredentialStore</a>[<span title="mail_intake.credentials.redis.T">T</span>]</code></p>
|
||||
Bases: <code><a class="autorefs autorefs-internal" title="mail_intake.credentials.store.CredentialStore" href="../store/#mail_intake.credentials.store.CredentialStore">CredentialStore</a>[<span title="mail_intake.credentials.redis.T">T</span>]</code></p>
|
||||
|
||||
|
||||
<p>Redis-backed implementation of <code>CredentialStore</code>.</p>
|
||||
@@ -1377,13 +1378,19 @@ must be shared across multiple processes or nodes.</p>
|
||||
<summary>Notes</summary>
|
||||
<p><strong>Responsibilities:</strong></p>
|
||||
<div class="language-text highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
|
||||
<span class="normal">2</span></pre></div></td><td class="code"><div><pre><span></span><code>- This class is responsible only for persistence and retrieval
|
||||
- It does not interpret, validate, refresh, or otherwise manage the lifecycle of the credentials being stored
|
||||
<span class="normal">2</span>
|
||||
<span class="normal">3</span></pre></div></td><td class="code"><div><pre><span></span><code>- This class is responsible only for persistence and retrieval.
|
||||
- It does not interpret, validate, refresh, or otherwise manage the
|
||||
lifecycle of the credentials being stored.
|
||||
</code></pre></div></td></tr></table></div>
|
||||
<p><strong>Guarantees:</strong></p>
|
||||
<div class="language-text highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
|
||||
<span class="normal">2</span></pre></div></td><td class="code"><div><pre><span></span><code>- The store is intentionally generic and delegates all serialization concerns to caller-provided functions
|
||||
- This avoids unsafe mechanisms such as pickle and allows credential formats to be explicitly controlled and audited
|
||||
<span class="normal">2</span>
|
||||
<span class="normal">3</span>
|
||||
<span class="normal">4</span></pre></div></td><td class="code"><div><pre><span></span><code>- The store is intentionally generic and delegates all serialization
|
||||
concerns to caller-provided functions.
|
||||
- This avoids unsafe mechanisms such as `pickle` and allows
|
||||
credential formats to be explicitly controlled and audited.
|
||||
</code></pre></div></td></tr></table></div>
|
||||
</details>
|
||||
<p>Initialize a Redis-backed credential store.</p>
|
||||
@@ -1559,8 +1566,16 @@ successfully deserialized; otherwise <code>None</code>.</p>
|
||||
<summary>Notes</summary>
|
||||
<p><strong>Guarantees:</strong></p>
|
||||
<div class="language-text highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
|
||||
<span class="normal">2</span></pre></div></td><td class="code"><div><pre><span></span><code>- If no value exists for the configured key, or if the stored payload cannot be successfully deserialized, this method returns ``None``
|
||||
- The store does not attempt to validate the returned credentials or determine whether they are expired or otherwise usable
|
||||
<span class="normal">2</span>
|
||||
<span class="normal">3</span>
|
||||
<span class="normal">4</span>
|
||||
<span class="normal">5</span>
|
||||
<span class="normal">6</span></pre></div></td><td class="code"><div><pre><span></span><code>- If no value exists for the configured key, or if the stored
|
||||
payload cannot be successfully deserialized, this method
|
||||
returns `None`.
|
||||
- The store does not attempt to validate the returned
|
||||
credentials or determine whether they are expired or
|
||||
otherwise usable.
|
||||
</code></pre></div></td></tr></table></div>
|
||||
</details>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user