1 \input texinfo @c -*-texinfo-*-
3 @settitle Emacs auth-source Library @value{VERSION}
8 \e$B$3$N%U%!%$%k$O
\e(B Emacs auth-source
\e$B%i%$%V%i%j!<$r@bL@$7$^$9!#
\e(B
10 Copyright @copyright{} 2008, 2009, 2010 Free Software Foundation, Inc.
13 Permission is granted to copy, distribute and/or modify this document
14 under the terms of the GNU Free Documentation License, Version 1.3 or
15 any later version published by the Free Software Foundation; with no
16 Invariant Sections, with the Front-Cover texts being ``A GNU Manual,''
17 and with the Back-Cover Texts as in (a) below. A copy of the license
18 is included in the section entitled ``GNU Free Documentation License''
21 \e$B$3$NJ8=q$r!"%U%j!<%=%U%H%&%'%":bCDH/9T$N
\e(B GNU
\e$B%U%j!<J8=qMxMQ5vBz7@Ls=q
\e(B
22 \e$BBh
\e(B 1.3
\e$BHG$^$?$O$=$l0J9_$NHG$,Dj$a$k>r7o$N2<$GJ#@=!"G[I[!"$"$k$$$OJQ99$9
\e(B
23 \e$B$k$3$H$r5v2D$7$^$9!#JQ99IT2DItJ,$O;XDj$7$^$;$s!#!H
\e(BA GNU Manual
\e$B!I$OI=I=;f
\e(B
24 \e$B%F%-%9%H!"0J2<$N
\e(B (a)
\e$B$ON"I=;f%F%-%9%H$G$9!#$3$NMxMQ5vBz7@Ls=q$NJ#<L
\e(B
25 \e$B$O
\e(B Emacs
\e$B%^%K%e%"%k$N!V
\e(BGNU
\e$B%U%j!<J8=qMxMQ5vBz7@Ls=q!W$H$$$&>O$K4^$^$l$F
\e(B
28 (a) The FSF's Back-Cover Text is: ``You have the freedom to copy and
29 modify this GNU manual. Buying copies from the FSF supports it in
30 developing GNU and promoting software freedom.''
32 (a) FSF
\e$B$NN"I=;f%F%-%9%H
\e(B:
\e$B!V$"$J$?$K$O$3$N
\e(B GNU Manual
\e$B$rJ#@=$7$?$jJQ99$9
\e(B
33 \e$B$k<+M3$,$"$j$^$9!#
\e(BFSF
\e$B$+$i$NJ#<L$N9XF~$O
\e(B GNU
\e$B$N3+H/$H%=%U%H%&%'%"$N<+M3
\e(B
34 \e$B$NB%?J$r;Y1g$7$^$9!#!W
\e(B
36 This document is part of a collection distributed under the GNU Free
37 Documentation License. If you want to distribute this document
38 separately from the collection, you can do so by adding a copy of the
39 license to the document, as described in section 6 of the license.
41 \e$B$3$NJ8=q$O!V
\e(BGNU
\e$B%U%j!<J8=qMxMQ5vBz7@Ls=q!W$K4p$E$$$FG[I[$5$l$?<}=8Cx:nJ*
\e(B
42 \e$B$N0lIt$G$9!#$b$7$"$J$?$,$3$NJ8=q$r<}=8Cx:nJ*$+$iJ,N%$7$FG[I[$7$?$$$H$-$O!"
\e(B
43 \e$B7@Ls=q$NBh
\e(B 6
\e$B9`$K5-=R$5$l$F$$$k$h$&$K!"J8=q$K7@Ls=q$NJ#<L$rIU2C$9$k$3$H
\e(B
44 \e$B$K$h$C$F!"9T$J$&$3$H$,$G$-$^$9!#
\e(B
50 * Auth-source-ja: (auth-ja). The Emacs auth-source library (Japanese).
54 @title Emacs auth-source Library
55 @author by Ted Zlatanov
57 @vskip 0pt plus 1filll
65 @top Emacs auth-source
66 \e$B$3$N%^%K%e%"%k$O
\e(B Emacs auth-source
\e$B%i%$%V%i%j!<$r@bL@$7$^$9!#
\e(B
68 \e$BMxMQ<T$NJX59$N$?$a$K!"J#?t$N%"%W%j%1!<%7%g%s$G!"
\e(B(Emacs
\e$B$^$?$O%U%!%$%k$K
\e(B
69 \e$B$"$k
\e(B)
\e$B0l$D$N@_Dj$r6&M-$9$k$?$a$N<jCJ$G$9!#
\e(B
74 * Overview:: auth-source
\e$B%i%$%V%i%j!<$N35MW
\e(B
76 * Secret Service API::
77 * Help for developers::
78 * GnuPG and EasyPG Assistant Configuration::
88 auth-source
\e$B%i%$%V%i%j!<$O!"!V%5!<%P!<L>$H%]!<%H$O$o$+$C$F$k$s$@$1$I!"%f!<
\e(B
89 \e$B%6!<L>$H%Q%9%o!<%I$O2?$@$C$1
\e(B?
\e$B!W$H$$$&@N$J$,$i$NG.Nu$JLd$$$KEz$($k$?$a$N!"
\e(B
90 Emacs
\e$B$H
\e(B Gnus
\e$BMQ$N?t$"$kC1=c$J<jCJ$N0l$D$G$9!#
\e(B
92 \e$B<B:]$K$O
\e(B auth-source
\e$B%i%$%V%i%j!<$OC1$J$k%f!<%6!<L>
\e(B (
\e$B$$$o$f$k
\e(B login)
\e$B$d
\e(B
93 \e$B%Q%9%o!<%I0J30$N$b$N$b07$&$3$H$,$G$-$^$9$,!":#F|$N
\e(B Emacs
\e$B$H
\e(B Gnus
\e$B$G$O$=
\e(B
94 \e$B$l$i
\e(B 2
\e$B$D$@$1$,;H$o$l$F$$$^$9!#F1MM$K
\e(B auth-source
\e$B%i%$%V%i%j!<$OB?$/$N5-
\e(B
95 \e$BO?7A<0!"8=:_$OEAE}E*$J
\e(B ``netrc''
\e$B7A<0
\e(B (
\e$B$3$NJ8=q$N8e$NJ}$K$"$j$^$9
\e(B)
\e$B$^$?
\e(B
96 \e$B$O%7!<%/%l%C%H%5!<%S%9
\e(B API
\e$B$r%5%]!<%H$7$^$9!#
\e(B
99 @chapter
\e$BMxMQ<T$N$?$a$N%X%k%W
\e(B
101 ``Netrc''
\e$B%U%!%$%k$O;v<B>e$NI8=`$G$9!#$=$l$i$O$3$N$h$&$K$J$C$F$$$^$9
\e(B:
103 machine @var{mymachine} login @var{myloginname} password @var{mypassword} port @var{myport}
106 machine
\e$B$O%5!<%P!<$G$9
\e(B (DNS
\e$BL>$^$?$O
\e(B IP
\e$B%"%I%l%9
\e(B)
\e$B!#
\e(B
108 \e$B%]!<%H$N;XDj$OL5$/$F$b9=$$$^$;$s!#L5$$>l9g!"
\e(Bauth-source
\e$B$O$I$s$J%]!<%H
\e(B
109 \e$B$b
\e(B OK
\e$B$J$N$@$H2r<a$7$^$9!#<B:]$N$H$3$m!"%]!<%H$O%W%m%H%3%k$NL>A0$+%]!<%H
\e(B
110 \e$BHV9f$N$I$A$i$G$bNI$$$N$G!"$b$7$=$&$7$?$$$N$J$i$P!"%]!<%H
\e(B @var{143}
\e$B$H%W
\e(B
111 \e$B%m%H%3%k
\e(B @code{imap}
\e$B$N$?$a$N9`L\$rJL!9$K;}$D$3$H$,$G$-$^$9!#$H$b$"$l!"
\e(B
112 \e$B$b$7%]!<%H$N;XDj$,MW$i$J$$>l9g$O>JN,$7$F$b9=$$$^$;$s!#
\e(B
114 login
\e$B$H
\e(B password
\e$B$O!"%5!<%P!<$KBP$7$F4J7i$K$"$J$?$N%m%0%$%s;q3J$r>ZL@$9
\e(B
115 \e$B$k$?$a$N$b$N$G$9!#
\e(B
117 ``Netrc''
\e$B%U%!%$%k$ODL>o
\e(B @code{.authinfo}
\e$B$^$?$O
\e(B @code{.netrc}
\e$B$H8F$P$l
\e(B
118 \e$B$^$9!#:#$G$O
\e(B @code{.authinfo}
\e$B$NJ}$,Ia5Z$7$F$$$k$h$&$J$N$G!"8e$G$o$+$k$h
\e(B
119 \e$B$&$K
\e(B auth-source
\e$B%i%$%V%i%j!<$O$=$l$r%G%#%U%)%k%H$K$9$k$3$H$K$h$C$F!"$3
\e(B
120 \e$B$N:.Mp$r=uD9$7$F$$$^$9!#
\e(B
122 \e$B$b$7%]!<%H$GLdBj$,$"$k$N$J$i
\e(B @code{auth-source-debug}
\e$B$r
\e(B @code{t}
\e$B$K@_Dj
\e(B
123 \e$B$7$F!"%i%$%V%i%j!<$,$I$N%]!<%H$r%A%'%C%/$7$F$$$k$+
\e(B
124 \e$B$r
\e(B @code{*Messages*}
\e$B%P%C%U%!!<$G8+$F$/$@$5$$!#F1MM$KB>$N$I$s$JLdBj$K$D
\e(B
125 \e$B$$$F$b!"2?$,%A%'%C%/$5$l$F$$$k$+$rD4$Y$k$N$,!"$"$J$?$NBh0lJb$G$9!#BhFs$N
\e(B
126 \e$B%9%F%C%W$O$b$A$m$s$=$l$K$D$$$F$N
\e(B blog
\e$B$r=q$$$F!"%3%a%s%H$G2sEz$rBT$D$3$H
\e(B
129 \e$BJQ?t
\e(B @code{auth-sources}
\e$B$r%+%9%?%^%$%:$9$k$3$H$,$G$-$^$9!#$b$78E$$%P!<
\e(B
130 \e$B%8%g%s$N
\e(B Emacs
\e$B$r;H$C$F$$$k$+!"2?$+$NM}M3$N$?$a$K
\e(B auth-source
\e$B%i%$%V%i%j!<
\e(B
131 \e$B$,FI$_9~$^$l$J$$>l9g!"<!$N$b$N$,I,MW$K$J$k$G$7$g$&!#
\e(B
134 (require 'auth-source) ;;
\e$B$*$=$i$/ITMW
\e(B
135 (customize-variable 'auth-sources) ;;
\e$BG$0U!"0l2s$@$19T$J$C$F$/$@$5$$
\e(B
139 @code{auth-sources}
\e$BJQ?t$O!"8D!9$N%[%9%H$H%W%m%H%3%k$N$?$a$N
\e(B netrc
\e$B%U%!
\e(B
140 \e$B%$%k$^$?$O%7!<%/%l%C%H%5!<%S%9
\e(B API
\e$B$N<}=8J*$,$I$3$K:_$k$+
\e(B
141 \e$B$r
\e(B auth-source
\e$B%i%$%V%i%j!<$KCN$i$;$^$9!#9%$_$K1~$8$F$I$&$K$G$b$G$-$^$9
\e(B
142 \e$B$,!"%G%#%U%)%k%H$N:G$b4J7i$J@_Dj$O<!$NDL$j$G$9
\e(B:
145 ;;;
\e$B5l%G%#%U%)%k%H
\e(B: :host
\e$B$H
\e(B :protocol
\e$B$,I,MW$@$C$?$,!"$b$O$dITMW!#
\e(B
146 (setq auth-sources '((:source "~/.authinfo.gpg" :host t :protocol t)))
147 ;;;
\e$B$[$\Ey2A$@$,!"$h$jC;$$
\e(B (
\e$B8e=R$N
\e(B fallback
\e$B$K$D$$$F$N5-=R$r;2>H
\e(B)
\e$B!#
\e(B
148 (setq auth-sources '((:source "~/.authinfo.gpg")))
151 \e$B$3$l$O!V$I$s$J%[%9%H$N$I$N%]!<%H$G$b!"$3$NC10l$N%U%!%$%k$r;H$&!W$H$$$&0U
\e(B
152 \e$BL#$G$9!#AG@2$i$7$/4JC1$G$7$g$&!#<B:]$K$O8e<T$,$9$G$K%G%#%U%)%k%H$K$J$C$F
\e(B
153 \e$B$$$k$N$G!"$=$N%U%!%$%k$,$"$l$P!"$3$l$O5!G=$7$^$9!#$=$l$,$"$k$3$H$r3N$+$a
\e(B
156 \e$BFCDj$N%[%9%H$+%W%m%H%3%k$N%(%s%H%j!<$rJ#?t
\e(B @code{auth-sources}
\e$B$KDI2C$9
\e(B
157 \e$B$k$3$H$K$h$C$F!"$=$N%[%9%H$+%W%m%H%3%k$KFC2=$7$?
\e(B netrc
\e$B%U%!%$%k$r;}$D$3
\e(B
158 \e$B$H$,$G$-$^$9!#IaDL$3$l$OI,MW$"$j$^$;$s$,!"
\e(Bnetrc
\e$B%U%!%$%k$r6&M-$7$?$jJQ$o$C
\e(B
159 \e$B$?@_Dj$,$"$k>l9g$O0UL#$,$"$k$+$b$7$l$^$;$s
\e(B (90%
\e$B$N
\e(B Emacs
\e$B%f!<%6!<$OJQ$J
\e(B
160 \e$B@_Dj$r;}$C$F$$$F!";D$j$N
\e(B 10%
\e$B$O
\e(B @emph{
\e$BK\Ev$K
\e(B}
\e$BJQ$o$C$F$$$^$9
\e(B)
\e$B!#
\e(B
162 \e$B$3$l$O!"$9$Y$F$N;2>H$K%7!<%/%l%C%H%5!<%S%9
\e(B API
\e$B$r;H$&Nc$G$9!#%G%U%)%k%H
\e(B
163 \e$B$N<}=8J*$r;H$$$^$9
\e(B:
166 (setq auth-sources '((:source (:secrets default))))
169 \e$B$=$7$F$3$l$O!":.:_$9$k
\e(B 2
\e$B$D$N%=!<%9$r;H$&Nc$G$9
\e(B:
172 (setq auth-sources '((:source (:secrets default) :host "myserver" :user "joe")
173 (:source "~/.authinfo.gpg")))
176 \e$B:GA1$N9gCW$O!"=i2s$NAv::$@$1$G
\e(B (
\e$B2<$+$i;O$^$k
\e(B)
\e$B=g=x$K$h$C$F7hDj$5$l$^
\e(B
177 \e$B$9
\e(B (
\e$B3FMWAG$O87L)$K>H9g$5$l$^$9
\e(B)
\e$B!#>e$NNc$G$O!"=i2s$NAv::$G%[%9
\e(B
178 \e$B%H
\e(B @code{myserver}
\e$B$X$NC10l$N9gCW$r8+$D$1$k$G$7$g$&!#
\e(BNetrc
\e$BA*Br$G$O!"$=
\e(B
179 \e$B$l$,$I$s$J%[%9%H$d%W%m%H%3%k$K$b0E$K
\e(B (@emph{fallback}
\e$B$H$7$F
\e(B)
\e$B9gCW$7$F$7
\e(B
180 \e$B$^$&$N$G!"<:GT$9$k$G$7$g$&!#
\e(B@code{auth-sources}
\e$B$K$*$1
\e(B
181 \e$B$k
\e(B @code{:host t}
\e$B$N@_DjCM$O!"
\e(B@code{:host}
\e$B$,L5$$>l9g$H0c$C$F!"=i2s$NAv
\e(B
182 \e$B::$K$*$1$k9gCW$rL\O@$s$@$b$N$G$"$k$H9MN8$5$l$^$9!#
\e(B
184 \e$B$5$F!"$b$7
\e(B ``
\e$BL$@_Dj
\e(B''
\e$B$N%[%9%H$rC5$=$&$H$9$k$H!"$=$l$O$I$s$J%=!<%9$K$bL@
\e(B
185 \e$B$i$+$J9gCW$O$7$J$$$G$7$g$&!#
\e(B2
\e$B2sL\$NAv::
\e(B (@emph{fallback}
\e$B%Q%9
\e(B)
\e$B$G$O!"$9
\e(B
186 \e$B$Y$F$N0EL[$N9gCW$rD4$Y$F!"$=$l$i$r<}=8$7$^$9!#$=$l$i$O%9%3%"IU$1$5$l!"%9
\e(B
187 \e$B%3%"$K$h$C$FJB$YJQ$($i$l$^$9!#%9%3%"$O!"9gCW$9$kL@<(E*$J%Q%i%a!<%?!<$N?t
\e(B
188 \e$BCM$K4p$E$$$F$$$^$9!#>\:Y$O
\e(B @code{auth-pick}
\e$B4X?t$r;2>H$7$F$/$@$5$$!#
\e(B
190 \e$BLuCm
\e(B fallback:
\e$B$"$kMWAG$,;XDj$5$l$F$$$J$$$?$a$K87L)$J9gCW$,5/$3$i$J$/$F
\e(B
191 \e$B$b!"$"$k5,B'$K$h$C$FA*Br$9$kL\E*J*!"$"$k$$$OA*Br$9$k$3$H!#
\e(B
194 \e$B$b$7
\e(B @code{auth-sources}
\e$B$r%+%9%?%^%$%:$7$J$$$H!"%G%#%U%)%k%H$G@83h$9$k
\e(B
195 \e$B$3$H$K$J$k$G$7$g$&!#$=$N%G%#%U%)%k%H$H$O!"$I$s$J%[%9%H$b%]!<%H$K$D$$$F
\e(B
196 \e$B$b
\e(B netrc
\e$B%U%!%$%k
\e(B @file{~/.authinfo.gpg}
\e$B$r;2>H$9$k$H$$$&$3$H$G$9!#$3$l
\e(B
197 \e$B$O
\e(B GnuPG
\e$B$G0E9f2=$5$l$?%U%!%$%k$G$9
\e(B (@pxref{GnuPG and EasyPG Assistant
198 Configuration})
\e$B!#
\e(B
200 \e$B<B:]$K;H$($k:G$b4JC1$J
\e(B netrc
\e$B9T$NNc$O!"%]!<%H$,L5$$$b$N$G$9!#
\e(B
203 machine YOURMACHINE login YOU password YOURPASSWORD
206 \e$B$3$l$O$I$NG'>Z%]!<%H$K$bBP1~$7$^$9!#4JC1$G$7$g$&
\e(B?
\e$B$G$b
\e(B SMTP
\e$B%5!<%P!<
\e(B
207 \e$B$,
\e(B IMAP
\e$B%5!<%P!<$H0[$J$k%Q%9%o!<%I$rI,MW$H$9$k$=$N%^%7%s$N%]!<%H
\e(B 433
\e$B$K
\e(B
208 \e$B$"$k$J$i$P!"$I$&$G$9$+!)
\e(B
211 machine YOURMACHINE login YOU password SMTPPASSWORD port 433
212 machine YOURMACHINE login YOU password GENERALPASSWORD
215 url-auth
\e$BG'>Z
\e(B (HTTP/HTTPS)
\e$B$N$?$a$K$O!"$3$l$r
\e(B netrc
\e$B%U%!%$%k$KCV$$$F$*$/
\e(B
216 \e$BI,MW$,$"$j$^$9
\e(B:
219 machine yourmachine.com:80 port http login testuser password testpass
222 \e$B$3$l$O
\e(B HTTP
\e$B$G@\B3$9$k$I$s$J3&LL$HG'>ZJ}<0
\e(B (basic
\e$B$^$?$O
\e(B digest)
\e$B$K$bBP
\e(B
223 \e$B1~$7$^$9!#
\e(BHTTPS
\e$B$bF1MM$K@_Dj$7$^$9!#$b$C$H$-$a:Y$+$$@)8f$,I,MW$J$i!"
\e(B
224 url-auth
\e$B$N%=!<%9%3!<%I$HJQ?t$rD4$Y$F$/$@$5$$!#
\e(B
226 Tramp
\e$B$NG'>Z$K$O$3$l$r;H$C$F$/$@$5$$
\e(B:
229 machine yourmachine.com port scp login testuser password testpass
232 \e$B%]!<%H$O
\e(B Tramp
\e$B$N@\B3J}K!$r0UL#$9$k$3$H$KCm0U$7$F$/$@$5$$!#$b$7%]!<%H$N
\e(B
233 \e$B9`$r;H$o$J$1$l$P!":G=i$NJ}$G@bL@$7$?$h$&$K!"$9$Y$F$N
\e(B Tramp
\e$B$NJ}<0$K9gCW
\e(B
234 \e$B$7$^$9!#
\e(BTramp
\e$B$K$O
\e(B 88
\e$B<oN`$N@\B3J}K!$,$"$k$N$G!"JQ$o$C$?@_Dj$,$"$k>l9g$O
\e(B
235 \e$B$3$l$,I,MW$+$b$7$l$^$;$s
\e(B (
\e$B$=$l$i$K$D$$$F$N0JA0$N%3%a%s%H$r8+$F$/$@$5$$
\e(B)
\e$B!#
\e(B
237 @node Secret Service API
238 @chapter
\e$B%7!<%/%l%C%H%5!<%S%9
\e(B API
240 TODO:
\e$B$I$&F/$/$+$r0lHLE*$K!"
\e(Bsecrets.el
\e$B$O$I$&$d$k$+!"$$$/$D$+$NNc!#
\e(B
242 @node Help for developers
243 @chapter
\e$B3+H/<T$N$?$a$N%X%k%W
\e(B
245 auth-source
\e$B%i%$%V%i%j!<$K$O!"30It$G;H$&$?$a$N4X?t$O0l$D$7$+$"$j$^$;$s!#
\e(B
247 @defun auth-source-user-or-password mode host port &optional username
248 \e$B%[%9%H
\e(B @var{host}
\e$B$*$h$S%]!<%H
\e(B @var{port}
\e$B$N$?$a$N
\e(B @var{mode}
\e$B$G7h$^$kE,
\e(B
249 \e$B@Z$JG'>Z%H!<%/%s$r<h$j9~$_$^$9!#$b$7
\e(B @var{username}
\e$B$,M?$($i$l$l$P!"F1MM
\e(B
250 \e$B$K>H9g$5$l$^$9!#
\e(B@code{auth-source-debug}
\e$B$,
\e(B @code{t}
\e$B$@$C$?$i%G%P%C%0$N
\e(B
251 \e$B$?$a$N%a%C%;!<%8$rI=<($7$^$9!#%m%0$r:N$k$?$a$N4X?t$r;H$&$K$O!"
\e(B
252 @code{auth-source-debug}
\e$B$r$=$N4X?t$K@_Dj$7$F$/$@$5$$!#EO$5$l$k%Q%i%a!<
\e(B
253 \e$B%?!<$O
\e(B @code{message}
\e$B4X?t$,<u$1<h$k$b$N$HF1$8$G$9!#$D$^$jMM<0;HMQ$NJ8;z
\e(B
254 \e$BNs$HG$0U$N%Q%i%a!<%?!<$G$9!#
\e(B
256 \e$B$b$7
\e(B @var{mode}
\e$B$,J8;zNs$N%j%9%H$J$i$P!"4X?t$OJ8;zNs$N%j%9%H
\e(B
257 \e$B$+
\e(B @code{nil}
\e$B$rJV$7$^$9
\e(B (
\e$B$=$N$?$a!"$b$&
\e(B 1
\e$B2s
\e(B netrc
\e$B%U%!%$%k$r2r@O$;$:$K!"
\e(B
258 \e$B$^$?$O%7!<%/%l%C%H%5!<%S%9
\e(B API
\e$B$r>H9g$;$:$K:Q$_$^$9
\e(B)
\e$B!#:#$N$H$3
\e(B
259 \e$B$m
\e(B ``login''
\e$B$H
\e(B ``password''
\e$B$@$1$,G'$a$i$l$F$$$^$9$,!">-Mh$O$b$C$HB?$/
\e(B
260 \e$B$N$b$N$,DI2C$5$l$k$G$7$g$&!#
\e(B
262 @var{host}
\e$B$O%[%9%HL>$NJ8;zNs$G$9!#
\e(B
264 @var{port}
\e$B$O%W%m%H%3%kL>
\e(B (
\e$BNc$($P
\e(B ``imap'')
\e$B$^$?$O%]!<%HHV9f$G$9!#%f!<%6!<
\e(B
265 \e$B$N
\e(B netrc
\e$B%U%!%$%k$K$"$k%]!<%H$KBP1~$9$kJ8;zNs$G$J$1$l$P$J$j$^$;$s!#
\e(B
267 @var{username}
\e$B$O%f!<%6!<L>$NJ8;zNs
\e(B (
\e$BNc$($P
\e(B ``joe'')
\e$B$G$9!#
\e(B
271 (setq auth (auth-source-user-or-password
272 '("login" "password")
275 (nth 0 auth) ;
\e$B%m%0%$%sL>
\e(B
276 (nth 1 auth) ;
\e$B%Q%9%o!<%I
\e(B
280 @node GnuPG and EasyPG Assistant Configuration
281 @appendix GnuPG
\e$B$*$h$S
\e(B EasyPG
\e$B%"%7%9%?%s%H$N@_Dj
\e(B
283 @code{auth-sources}
\e$B$r%+%9%?%^%$%:$7$J$$>l9g!"
\e(Bauth-source
\e$B%i%$%V%i%j!<
\e(B
284 \e$B$O
\e(B @file{~/.authinfo.gpg} (GnuPG
\e$B$G0E9f2=$5$l$?%U%!%$%k
\e(B)
\e$B$rFI$_9~$_$^$9!#
\e(B
286 Emacs 23
\e$B0J9_$G$O
\e(B @code{*.gpg}
\e$B%U%!%$%k$N0E9f$r<+F0E*$K2r$/$?$a$N%*%W%7%g
\e(B
287 \e$B%s
\e(B @code{auto-encryption-mode}
\e$B$,$"$j$^$9!#%G%#%U%)%k%H$GM-8z$G$9!#$b$7
\e(B
288 \e$B2?$i$+$NM}M3$G
\e(B Emacs
\e$B$N=i4|$NHG$r;H$C$F$$$k>l9g$O!"0J2<$,I,MW$G$9
\e(B:
295 \e$B$"$J$?$N
\e(B GnuPG
\e$B$N%Q%9%o!<%I$,%-%c%C%7%e$5$l$k$h$&$K$7$?$$$J$i!"
\e(B
296 @code{gpg-agent}
\e$B$^$?$O
\e(B EasyPG
\e$B%"%7%9%"%s%H$r@_Dj$7$F$/$@$5
\e(B
297 \e$B$$
\e(B (@pxref{Caching Passphrases, , Caching Passphrases, epa})
\e$B!#
\e(B
299 \e$B<jAa$/;H$$;O$a$k$K$O!"$^$:0J2<$N@_Ld$KBP$9$kEz$rMQ0U$7$F$/$@$5$$
\e(B:
303 GnuPG
\e$B$N%P!<%8%g%s
\e(B 1
\e$B$G$O$J$/!"%P!<%8%g%s
\e(B 2
\e$B$r;H$C$F$$$^$9$+
\e(B?
305 \e$B8x3+800E9f$G$J$J$/!"6&DL800E9f$r;H$C$F$$$^$9$+
\e(B?
307 gpg-agent
\e$B$r;H$$$?$$$G$9$+
\e(B?
310 \e$B0J2<$O>e5-$N<A5?$KBP$9$k$"$J$?$N2sEz$K4p$E$$$?@_Dj$G$9
\e(B:
312 @multitable {111} {222} {333} {configuration configuration configuration}
313 @item @b{1} @tab @b{2} @tab @b{3} @tab Configuration
314 @item Yes @tab Yes @tab Yes @tab gpg-agent
\e$B$r@_Dj$7$F$/$@$5$$!#
\e(B
315 @item Yes @tab Yes @tab No @tab gpg-agent
\e$BL5$7$G$O$G$-$^$;$s!#
\e(B
316 @item Yes @tab No @tab Yes @tab gpg-agent
\e$B$r@_Dj$7$F$/$@$5$$!#
\e(B
317 @item Yes @tab No @tab No @tab gpg-agent
\e$BL5$7$G$O$G$-$^$;$s!#
\e(B
318 @item No @tab Yes @tab Yes @tab ELisp
\e$BHG$N%Q%9%o!<%I!&%-%c%C%7%e$r@_Dj$7$F$/$@$5$$!#
\e(B
319 @item No @tab Yes @tab No @tab ELisp
\e$BHG$N%Q%9%o!<%I!&%-%c%C%7%e$r@_Dj$7$F$/$@$5$$!#
\e(B
320 @item No @tab No @tab Yes @tab gpg-agent
\e$B$r@_Dj$7$F$/$@$5$$!#
\e(B
321 @item No @tab No @tab No @tab gpg-agent
\e$BL5$7$G$O$G$-$^$;$s!#
\e(B
324 gpg-agent
\e$B$r@_Dj$9$k$K$O
\e(B GnuPG
\e$B%^%K%e%"%k
\e(B (@pxref{Invoking GPG-AGENT, ,
325 Invoking GPG-AGENT, gnupg})
\e$B$N@bL@$K=>$C$F$/$@$5$$!#
\e(B
327 ELisp
\e$BHG$N%Q%9%o!<%I!&%-%c%C%7%e$r;H$&>l9g
\e(B
328 \e$B$O
\e(B @code{epa-file-cache-passphrase-for-symmetric-encryption}
\e$B$r@_Dj$7$F
\e(B
336 @chapter Function Index
340 @chapter Variable Index
346 @c coding: iso-2022-7bit
349 @c use-kuten-for-period: t
350 @c use-touten-for-comma: t