Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_session_crypto - Serveur Apache HTTP Version 2.4</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur Apache HTTP Version 2.4</p>
<img alt="" src="../images/feather.png" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_session_crypto</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_session_crypto.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_session_crypto.html" title="Franais"> fr </a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Support du chiffrement des sessions</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Exprimental</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">IdentificateurdeModule:</a></th><td>session_crypto_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">FichierSource:</a></th><td>mod_session_crypto.c</td></tr>
<tr><th><a href="module-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.3 d'Apache</td></tr></table>
<h3>Sommaire</h3>
<div class="warning"><h3>Avertissement</h3>
<p>Les modules de session font usage des cookies HTTP, et peuvent
ce titre tre victimes d'attaques de type Cross Site Scripting,
ou divulguer des informations caractre priv aux clients.
Veuillez vous assurer que les risques ainsi encourus ont t pris
en compte avant d'activer le support des sessions sur votre
serveur.</p>
</div>
<p>Ce sous-module du module <code class="module"><a href="../mod/mod_session.html">mod_session</a></code> fournit le
support du chiffrement des sessions utilisateur avant de les
enregistrer dans une base de donnes locale, ou dans un cookie HTTP
au niveau du navigateur distant.</p>
<p>Il peut contribuer prserver la confidentialit des sessions
lorsque leur contenu doit rester priv pour
l'utilisateur, ou lorsqu'une protection contre les attaques de type
cross site scripting est ncessaire.</p>
<p>Pour plus de dtails propos de l'interface des sessions, voir
la documentation du module <code class="module"><a href="../mod/mod_session.html">mod_session</a></code>.</p>
</div>
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><h3>Sujets</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#basicusage">Utilisation de base</a></li>
</ul><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#sessioncryptocipher">SessionCryptoCipher</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#sessioncryptodriver">SessionCryptoDriver</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#sessioncryptopassphrase">SessionCryptoPassphrase</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#sessioncryptopassphrasefile">SessionCryptoPassphraseFile</a></li>
</ul>
<h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&list_id=144532&product=Apache%20httpd-2&query_format=specific&order=changeddate%20DESC%2Cpriority%2Cbug_severity&component=mod_session_crypto">Problmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_session_crypto">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><code class="module"><a href="../mod/mod_session.html">mod_session</a></code></li>
<li><code class="module"><a href="../mod/mod_session_cookie.html">mod_session_cookie</a></code></li>
<li><code class="module"><a href="../mod/mod_session_dbd.html">mod_session_dbd</a></code></li>
<li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="basicusage" id="basicusage">Utilisation de base</a></h2>
<p>Pour crer une session chiffre et la stocker dans un cookie
nomm <var>session</var>, configurez la comme suit :</p>
<div class="example"><h3>Session chiffre stocke au niveau du
serveur</h3><pre class="prettyprint lang-config">Session On
SessionCookieName session path=/
SessionCryptoPassphrase secret</pre>
</div>
<p>La session sera chiffre avec la cl spcifie. Il est possible
de configurer plusieurs serveurs pour qu'ils puissent partager des
sessions, en s'assurant que la mme cl de chiffrement est
utilise sur chaque serveur.</p>
<p>Si la cl de chiffrement est modifie, les sessions seront
automatiquement invalides.</p>
<p>Pour des dtails sur la manire dont une session peut tre
utilise pour stocker des informations de type nom
d'utilisateur/mot de passe, voir la documentation du module
<code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="sessioncryptocipher" id="sessioncryptocipher">Directive</a> <a name="SessionCryptoCipher" id="SessionCryptoCipher">SessionCryptoCipher</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>L'algorithme utiliser pour le chiffrement de la session</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SessionCryptoCipher <var>algorithme</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>aes256</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, rpertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Exprimental</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_session_crypto</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
</table>
<p>La directive <code class="directive">SessionCryptoCipher</code> permet de
spcifier l'algorithme utiliser pour le chiffrement. En l'absence
de spcification, l'algorithme par dfaut est <code>aes256</code>.</p>
<p>L'algorithme peut tre choisi, en fonction du moteur de chiffrement
utilis, parmi les valeurs suivantes :</p>
<ul><li>3des192</li><li>aes128</li><li>aes192</li><li>aes256</li></ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="sessioncryptodriver" id="sessioncryptodriver">Directive</a> <a name="SessionCryptoDriver" id="SessionCryptoDriver">SessionCryptoDriver</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le pilote de chiffrement utiliser pour chiffrer les
sessions</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SessionCryptoDriver <var>nom</var> <var>[param[=valeur]]</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>aucun</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Exprimental</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_session_crypto</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.3.0
d'Apache</td></tr>
</table>
<p>La directive <code class="directive">SessionCryptoDriver</code> permet de
spcifier le nom du pilote utiliser pour le chiffrement. Si aucun
pilote n'est spcifi, le pilote utilis par dfaut sera le pilote
recommand compil avec APR-util.</p>
<p>Le pilote de chiffrement <var>NSS</var> ncessite certains
paramtres de configuration, qui seront spcifis comme arguments de
la directive avec des valeurs optionnelles aprs le nom du
pilote.</p>
<div class="example"><h3>NSS sans base de donnes de certificats</h3><pre class="prettyprint lang-config">SessionCryptoDriver nss</pre>
</div>
<div class="example"><h3>NSS avec base de donnes de certificats</h3><pre class="prettyprint lang-config">SessionCryptoDriver nss dir=certs</pre>
</div>
<div class="example"><h3>NSS avec base de donnes de certificats et
paramtres</h3><pre class="prettyprint lang-config">SessionCryptoDriver nss dir=certs cl3=cl3.db cert7=cert7.db secmod=secmod</pre>
</div>
<div class="example"><h3>NSS avec chemins contenant des espaces</h3><pre class="prettyprint lang-config">SessionCryptoDriver nss "dir=My Certs" key3=key3.db cert7=cert7.db secmod=secmod</pre>
</div>
<p>Le pilote de chiffrement <var>NSS</var> peut avoir t configur
au pralable dans une autre partie du serveur, par exemple depuis
<code class="module"><a href="../mod/mod_nss.html">mod_nss</a></code> ou <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code>. Si c'est le
cas, un avertissement sera enregistr dans le journal, et la
configuration existante s'en trouvera affecte. Pour viter cet
avertissement, utilisez le paramtre <code>noinit</code> comme suit :</p>
<div class="example"><h3>NSS avec base de donnes de certificats</h3><pre class="prettyprint lang-config">SessionCryptoDriver nss noinit</pre>
</div>
<p>Pour viter la confusion, assurez-vous que tous les modules
utilisant NSS soient configurs avec des paramtres identiques.</p>
<p>Le pilote de chiffrement <var>openssl</var> accepte un paramtre
optionnel permettant de spcifier le moteur de chiffrement
utiliser.</p>
<div class="example"><h3>OpenSSL avec spcification du moteur de chiffrement</h3><pre class="prettyprint lang-config">SessionCryptoDriver openssl engine=nom-moteur</pre>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="sessioncryptopassphrase" id="sessioncryptopassphrase">Directive</a> <a name="SessionCryptoPassphrase" id="SessionCryptoPassphrase">SessionCryptoPassphrase</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>La cl utilise pour chiffrer la session</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SessionCryptoPassphrase <var>secret</var> [ <var>secret</var> ... ] </code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>none</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, rpertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Exprimental</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_session_crypto</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.3.0
d'Apache</td></tr>
</table>
<p>La directive <code class="directive">SessionCryptoPassphrase</code>
permet de spcifier les cls utiliser pour chiffrer de manire
symtrique le contenu de la session avant de l'enregistrer, ou pour
dchiffrer le contenu de la session aprs sa lecture.</p>
<p>L'utilisation de cls longues et composes de caractres vraiment
alatoires est plus performant en matire de scurit. Modifier une
cl sur un serveur a pour effet d'invalider toutes les sessions
existantes.</p>
<p>Il est possible de spcifier plusieurs cls afin de mettre en
oeuvre la rotation de cls. La premire cl spcifie sera utilise
pour le chiffrement, alors que l'ensemble des cls spcifies le
sera pour le dchiffrement. Pour effectuer une rotation priodique
des cls sur plusieurs serveurs, ajoutez une nouvelle cl en fin de
liste, puis, une fois la rotation complte effectue, supprimez la
premire cl de la liste.</p>
<p>Depuis la version 2.4.7, si la valeur de l'argument commence par <var>exec:</var> , la commande
spcifie sera excute, et la premire ligne que cette dernire
renverra sur la sortie standard sera utilise comme cl.</p>
<div class="example"><pre># cl spcifie et utilise en tant que tel
SessionCryptoPassphrase secret
# excution de /path/to/program pour gnrer la cl
SessionCryptoPassphrase exec:/path/to/program
# excution de /path/to/program avec un argument pour gnrer la cl
SessionCryptoPassphrase "exec:/path/to/otherProgram argument1"</pre></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="sessioncryptopassphrasefile" id="sessioncryptopassphrasefile">Directive</a> <a name="SessionCryptoPassphraseFile" id="SessionCryptoPassphraseFile">SessionCryptoPassphraseFile</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le fichier contenant les cls utilises pour chiffrer la
session</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SessionCryptoPassphraseFile <var>nom-fichier</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>none</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, rpertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Exprimental</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_session_crypto</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
</table>
<p>La directive <code class="directive">SessionCryptoPassphraseFile</code>
permet de spcifier le nom d'un fichier de configuration contenant
les cls utiliser pour le chiffrement et le dchiffrement de la
session (une cl par ligne). Le fichier est lu au dmarrage du
serveur, et un redmarrage graceful est ncessaire pour prendre en
compte un ventuel changement de cls.</p>
<p> la diffrence de la directive
<code class="directive">SessionCryptoPassphrase</code>, les cls ne sont pas
prsentes dans le fichier de configuration de httpd et peuvent tre
caches via une protection approprie du fichier de cls.</p>
<p>Il est possible de spcifier plusieurs cls afin de mettre en
oeuvre la rotation de cls. La premire cl spcifie sera utilise
pour le chiffrement, alors que l'ensemble des cls spcifies le
sera pour le dchiffrement. Pour effectuer une rotation priodique
des cls sur plusieurs serveurs, ajoutez une nouvelle cl en fin de
liste, puis, une fois la rotation complte effectue, supprimez la
premire cl de la liste.</p>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_session_crypto.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_session_crypto.html" title="Franais"> fr </a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_session_crypto.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2017 The Apache Software Foundation.<br />Autoris sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>