03.
— Section 3
Credentials
macOS Keychain
Vaše heslo sa nikdy nedotkne disku.
jmapcli neukladá žiadne tajomstvo na disk. Vaše heslo (alebo nosný token) je uložené v prihlasovacej kľúčenke macOS; súbor účtu — ~/.config/jmapcli/config.json, mód 0600 — obsahuje iba URL servera, vaše používateľské meno a predvolený príznak. Ste noví v kľúčenke z terminálu? Celý postup pozostáva z troch vstavaných príkazov security.
1 · Uložte tajomstvo — a prečítajte ho späť. macOS vyzve na zadanie hodnoty, takže tajomstvo sa nikdy nezadáva na príkazovom riadku, nezobrazuje sa na obrazovke ani sa nezapisuje do histórie shellu.
# store it — you’re prompted for the secret, nothing echoes
$ security add-generic-password -U -s jmap-password -a you@example.com -l "Boogie JMAP password" -w
# read it back at any time
$ security find-generic-password -s jmap-password -a you@example.com -w
# remove it
$ security delete-generic-password -s jmap-password -a you@example.com
- -s
- service — názov, ktorý jmapcli vyhľadáva: jmap-password pre heslo, alebo jmap-token pre nosný token (napr. Fastmail); nastavte iba ten, ktorý používate.
- -a
- account — vaša e-mailová adresa (rovnaké používateľské meno, ktoré zadávate do jmapcli).
- -l
- label — čo uvidíte v aplikácii Správa kľúčeniek; -U aktualizuje existujúcu položku na mieste.
- -w
- bez hodnoty — výzva na zadanie tajomstva. Toto je časť, ktorá ho uchráni pred ~/.zsh_history a zoznamom procesov.
2 · Nasmerujte jmapcli na váš server. Zaregistrujte účet raz; tajomstvo sa načítava priamo z položky kľúčenky, ktorú ste práve uložili, takže sa nikdy neobjaví na príkazovom riadku.
$ jmapcli login --url https://mail.example.com --username you@example.com \
--password "$(security find-generic-password -s jmap-password -a you@example.com -w)"
# token auth: swap --password for --token (and store under jmap-token above)
$ jmapcli list # from here on, every command reads the Keychain for you
3.1
Nič vo vašej histórii, logoch — ani v kontexte umelej inteligencie
Keď je tajomstvo v kľúčenke, bežné príkazy (list, send, draft, sync) nikdy nenesú heslo, takže ho nemožno zachytiť v ~/.zsh_history, výpise procesov ani v logoch CI. Práve to robí jmapcli bezpečným na používanie z terminalových nástrojov umelej inteligencie — agentovi je odovzdaný JMAP klient, nikdy vaše tajomstvo.
— zsh
CI · agents
3.2
Rotácia alebo odhlásenie
Zmenili ste heslo? Spustite znovu riadok security add-generic-password … -w — -U ho prepíše na mieste. Ak chcete odstrániť účet, jmapcli logout v jednom kroku vymaže položku konfigurácie aj tajomstvo v kľúčenke (--all vymaže každý účet).
— rotate
logout
3.3
Pre každý Mac zvlášť — zámerným dizajnom
Prihlasovacia kľúčenka sa nesynchronizuje cez iCloud — ide o zámerné ohraničenie, aby vaše heslo nikdy neopustilo Mac, na ktorom ste ho zadali. Krok security zopakujte raz na každom Maci; config.json môže byť uložený v synchronizovanom domovskom priečinku, pretože neobsahuje žiadne tajomstvo.
— per
machine