03.
— Section 3
Credentials
macOS Keychain
Jou wagwoord raak nooit die skyf nie.
jmapcli hou geen geheim op skyf nie. Jou wagwoord (of draerteken) leef in die macOS-aanmeld-Keychain; die rekeninglêer — ~/.config/jmapcli/config.json, modus 0600 — hou slegs die bediener-URL, jou gebruikersnaam en ’n verstekmarkering. Nuut by die Keychain vanaf die terminaal? Die hele werkstroom bestaan uit drie ingeboude security-opdragte.
1 · Stoor ’n geheim — en lees dit terug. macOS vra vir die waarde, sodat die geheim nooit op die opdragreël getik, op die skerm gewys of na jou shellgeskiedenis geskryf word nie.
# 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
- diens — die naam wat jmapcli opsoek: jmap-password vir ’n wagwoord, of jmap-token vir ’n draerteken (bv. Fastmail); stel slegs die een in wat jy gebruik.
- -a
- rekening — jou e-posadres (dieselfde gebruikersnaam wat jy aan jmapcli gee).
- -l
- etiket — wat jy in die Keychain Access-program sal sien; -U werk ’n bestaande item op sy plek by.
- -w
- sonder waarde — vra vir die geheim. Dit is die deel wat dit uit ~/.zsh_history en die proseslys hou.
2 · Wys jmapcli na jou bediener. Registreer die rekening eenmalig; die geheim word regstreeks uit die Keychain-item wat jy pas gestoor het, getrek, sodat dit nooit op die opdragreël verskyn nie.
$ 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
Niks in jou geskiedenis, logs — of ’n KI se konteks nie
Sodra die geheim in die Keychain is, dra alledaagse opdragte (list, send, draft, sync) nooit ’n wagwoord nie, sodat dit nie in ~/.zsh_history, ’n proseslys of CI-logs vasgevang kan word nie. Dit is wat jmapcli veilig maak om vanuit terminaal-KI-gereedskap te bestuur — ’n agent kry ’n JMAP-kliënt oorhandig, nooit jou geheim nie.
— zsh
CI · agents
3.2
Roteer of teken uit
Het jy jou wagwoord verander? Voer die security add-generic-password … -w-reël weer uit — -U skryf dit op sy plek oor. Om ’n rekening te verwyder, verwyder jmapcli logout beide die konfigurasie-inskrywing en die Keychain-geheim in een stap (--all maak elke rekening skoon).
— rotate
logout
3.3
Per-Mac by ontwerp
Die aanmeld-Keychain word nie deur iCloud gesinkroniseer nie — ’n doelbewuste grens, sodat jou wagwoord nooit die Mac verlaat waarop jy dit getik het nie. Herhaal die security-stap eenmalig per Mac; config.json kan op ’n gesinkroniseerde tuisgids ry omdat dit geen geheim dra nie.
— per
machine