Overview
Implement URLAUTH (RFC 4467) and BURL (RFC 4468).
URLAUTH — signed IMAP URL mechanism. Lets one process generate an authorized reference to a specific message that another process (e.g. Submission server) can access without the user's password.
BURL — Submission extension that uses an URLAUTH token to append a stored IMAP message directly to the outgoing message instead of re-uploading it. Eliminates double-transfer of large attachments: client uploads once to IMAP, then BURLs the reference to Submission.
Scope
URLAUTH capability in IMAP; GENURLAUTH / RESETKEY commands
URLFETCH command for fetching URL-referenced message parts
BURL capability in yarilo-submission; accept BURL DATA command
- Shared token store (Redis via
pkg/dict) for cross-process URL validation
- Config knobs in
yarilo.yaml + helm/values.yaml
Notes
- Dependency:
yarilo-submission must be able to call back into yarilo-imap (or shared store) to resolve the URL token
- Related: NOTIFY (RFC 5465)
Overview
Implement URLAUTH (RFC 4467) and BURL (RFC 4468).
URLAUTH — signed IMAP URL mechanism. Lets one process generate an authorized reference to a specific message that another process (e.g. Submission server) can access without the user's password.
BURL — Submission extension that uses an URLAUTH token to append a stored IMAP message directly to the outgoing message instead of re-uploading it. Eliminates double-transfer of large attachments: client uploads once to IMAP, then BURLs the reference to Submission.
Scope
URLAUTHcapability in IMAP;GENURLAUTH/RESETKEYcommandsURLFETCHcommand for fetching URL-referenced message partsBURLcapability inyarilo-submission; acceptBURLDATA commandpkg/dict) for cross-process URL validationyarilo.yaml+helm/values.yamlNotes
yarilo-submissionmust be able to call back intoyarilo-imap(or shared store) to resolve the URL token