03.
— Section 3
Credentials
macOS Keychain
A jelszava soha nem kerül lemezre.
A jmapcli semmilyen titkot nem tárol lemezen. A jelszava (vagy bearer token) a macOS bejelentkezési Keychainben él; a fiókfájl — ~/.config/jmapcli/config.json, mód 0600 — csak a szerver URL-jét, a felhasználónevét és egy alapértelmezett jelzőt tartalmaz. Még nem használta a Keychaint terminálból? A teljes munkafolyamat mindössze három beépített security parancsból áll.
1 · Tároljon el egy titkot — és olvassa vissza. A macOS bekéri az értéket, így a titok soha nem kerül be a parancssorba, nem jelenik meg a képernyőn, és nem íródik bele a shell-előzményekbe.
# 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 — a jmapcli által keresett név: jmap-password jelszóhoz, vagy jmap-token bearer tokenhez (pl. Fastmail); csak azt állítsa be, amelyiket használja.
- -a
- account — az e-mail-címe (ugyanaz a felhasználónév, amelyet a jmapcli-nek megad).
- -l
- label — amit a Keychain Access alkalmazásban lát; a -U egy meglévő elemet frissít helyben.
- -w
- érték nélkül — bekéri a titkot. Ez az a rész, amely kívül tartja azt a ~/.zsh_history fájlból és a folyamatlistából.
2 · Irányítsa a jmapcli-t a szerverére. Regisztrálja a fiókot egyszer; a titok egyenesen az imént tárolt Keychain-elemből kerül elő, így soha nem jelenik meg a parancssorban.
$ 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
Semmi sem kerül be az előzményekbe, a naplókba — vagy egy mesterséges intelligencia kontextusába
Amint a titok a Keychainben van, a mindennapi parancsok (list, send, draft, sync) soha nem visznek magukkal jelszót, így az nem rögzülhet a ~/.zsh_history fájlban, a folyamatlistában vagy CI-naplókban. Éppen ettől biztonságos a jmapcli terminál-alapú AI-eszközökből való vezérlése — az ügynök egy JMAP-klienst kap, soha nem a titkát.
— zsh
CI · agents
3.2
Rotálás vagy kijelentkezés
Megváltoztatta a jelszavát? Futtassa újra a security add-generic-password … -w sort — a -U helyben felülírja. Egy fiók eltávolításához a jmapcli logout egy lépésben törli a konfigurációs bejegyzést és a Keychain-titkot is (--all minden fiókot töröl).
— rotate
logout
3.3
Mac-enkénti kialakítás
A bejelentkezési Keychain nem szinkronizálódik az iCloudon keresztül — ez szándékos határvonal, hogy a jelszava soha ne hagyja el azt a Macet, amelyen begépelte. Ismételje meg a security lépést Mac-enként egyszer; a config.json elhelyezhető egy szinkronizált home mappában, mivel semmilyen titkot nem tartalmaz.
— per
machine