<-
Apache > Serveur HTTP > Documentation > Modules

Module Apache mod_session_crypto d4e12

Langues Disponibles:  fr 

Description: du chiffrement des sessions
Statut: Expérimental
Identificateur de Module: session_crypto_module
Fichier Source: mod_session_crypto.c
Compatibilité: Disponible depuis la version 2.3 d'Apache

Sommaire 2j3d6p

Avertissement 26y4h

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 à caractère privé aux clients. Veuillez vous assurer que les risques ainsi encourus ont été pris en compte avant d'activer le des sessions sur votre serveur.

Ce sous-module du module mod_session fournit le du chiffrement des sessions utilisateur avant de les enregistrer dans une base de données locale, ou dans un cookie HTTP au niveau du navigateur distant.

Il peut contribuer à préserver 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 nécessaire.

Pour plus de détails à propos de l'interface des sessions, voir la documentation du module mod_session.

 Apache!

Sujets 4z484w

Directives 1a4l6m

Traitement des bugs 42h5l

Voir aussi 1m6745

top

Utilisation de base 3e2z26

Pour créer une session chiffrée et la stocker dans un cookie nommé session, configurez la comme suit :

Session chiffrée stockée au niveau du serveur 1z194w

Session On
SessionCookieName session path=/
SessionCryptophrase secret

La session sera chiffrée avec la clé spécifiée. Il est possible de configurer plusieurs serveurs pour qu'ils puissent partager des sessions, en s'assurant que la même clé de chiffrement est utilisée sur chaque serveur.

Si la clé de chiffrement est modifiée, les sessions seront automatiquement invalidées.

Pour des détails sur la manière dont une session peut être utilisée pour stocker des informations de type nom d'utilisateur/mot de e, voir la documentation du module mod_auth_form.

top

Directive SessionCryptoCipher 374r5k

Description: L'algorithme à utiliser pour le chiffrement de la session
Syntaxe: SessionCryptoCipher algorithme
Défaut: SessionCryptoCipher aes256
Contexte: configuration globale, serveur virtuel, répertoire, .htaccess
Statut: Expérimental
Module: mod_session_crypto
Compatibilité: Disponible depuis la version 2.3.0 du serveur HTTP Apache

La directive SessionCryptoCipher permet de spécifier l'algorithme à utiliser pour le chiffrement. En l'absence de spécification, l'algorithme par défaut est aes256.

L'algorithme peut être choisi, en fonction du moteur de chiffrement utilisé, parmi les valeurs suivantes :

top

Directive SessionCryptoDriver s2a24

Description: Le pilote de chiffrement à utiliser pour chiffrer les sessions
Syntaxe: SessionCryptoDriver nom [param[=valeur]]
Défaut: aucun
Contexte: configuration globale
Statut: Expérimental
Module: mod_session_crypto
Compatibilité: Disponible depuis la version 2.3.0 d'Apache

La directive SessionCryptoDriver permet de spécifier le nom du pilote à utiliser pour le chiffrement. Si aucun pilote n'est spécifié, le pilote utilisé par défaut sera le pilote recommandé compilé avec APR-util.

Le pilote de chiffrement NSS nécessite certains paramètres de configuration, qui seront spécifiés comme arguments de la directive avec des valeurs optionnelles après le nom du pilote.

NSS sans base de données de certificats g4854

SessionCryptoDriver nss

NSS avec base de données de certificats 3i2s1

SessionCryptoDriver nss dir=certs

NSS avec base de données de certificats et paramètres 2w5p1d

SessionCryptoDriver nss dir=certs clé3=clé3.db cert7=cert7.db secmod=secmod

NSS avec chemins contenant des espaces 5c696d

SessionCryptoDriver nss "dir=My Certs" key3=key3.db cert7=cert7.db secmod=secmod

Le pilote de chiffrement NSS peut avoir été configuré au préalable dans une autre partie du serveur, par exemple depuis mod_ldap. Si c'est le cas, un avertissement sera enregistré dans le journal, et la configuration existante s'en trouvera affectée. Pour éviter cet avertissement, utilisez le paramètre noinit comme suit :

NSS avec base de données de certificats 3i2s1

SessionCryptoDriver nss noinit

Pour éviter la confusion, assurez-vous que tous les modules utilisant NSS soient configurés avec des paramètres identiques.

Le pilote de chiffrement openssl accepte un paramètre optionnel permettant de spécifier le moteur de chiffrement à utiliser.

OpenSSL avec spécification du moteur de chiffrement 3t494j

SessionCryptoDriver openssl engine=nom-moteur
top

Directive SessionCryptophrase 241e65

Description: La clé utilisée pour chiffrer la session
Syntaxe: SessionCryptophrase secret [ secret ... ]
Défaut: none
Contexte: configuration globale, serveur virtuel, répertoire, .htaccess
Statut: Expérimental
Module: mod_session_crypto
Compatibilité: Disponible depuis la version 2.3.0 d'Apache

La directive SessionCryptophrase permet de spécifier les clés à utiliser pour chiffrer de manière symétrique le contenu de la session avant de l'enregistrer, ou pour déchiffrer le contenu de la session après sa lecture.

L'utilisation de clés longues et composées de caractères vraiment aléatoires est plus performant en matière de sécurité. Modifier une clé sur un serveur a pour effet d'invalider toutes les sessions existantes.

Il est possible de spécifier plusieurs clés afin de mettre en oeuvre la rotation de clés. La première clé spécifiée sera utilisée pour le chiffrement, alors que l'ensemble des clés spécifiées le sera pour le déchiffrement. Pour effectuer une rotation périodique des clés sur plusieurs serveurs, ajoutez une nouvelle clé en fin de liste, puis, une fois la rotation complète effectuée, supprimez la première clé de la liste.

Depuis la version 2.4.7, si la valeur de l'argument commence par exec: , la commande spécifiée sera exécutée, et la première ligne que cette dernière renverra sur la sortie standard sera utilisée comme clé.

# clé spécifiée et utilisée en tant que tel
SessionCryptophrase secret

# exécution de /path/to/program pour générer la clé
SessionCryptophrase exec:/path/to/program

# exécution de /path/to/program avec un argument pour générer la clé
SessionCryptophrase "exec:/path/to/otherProgram argument1"
top

Directive SessionCryptophraseFile 6hx4s

Description: Le fichier contenant les clés utilisées pour chiffrer la session
Syntaxe: SessionCryptophraseFile nom-fichier
Défaut: none
Contexte: configuration globale, serveur virtuel, répertoire
Statut: Expérimental
Module: mod_session_crypto
Compatibilité: Disponible depuis la version 2.3.0 du serveur HTTP Apache

La directive SessionCryptophraseFile permet de spécifier le nom d'un fichier de configuration contenant les clés à utiliser pour le chiffrement et le déchiffrement de la session (une clé par ligne). Le fichier est lu au démarrage du serveur, et un redémarrage graceful est nécessaire pour prendre en compte un éventuel changement de clés.

À la différence de la directive SessionCryptophrase, les clés ne sont pas présentes dans le fichier de configuration de httpd et peuvent être cachées via une protection appropriée du fichier de clés.

Il est possible de spécifier plusieurs clés afin de mettre en oeuvre la rotation de clés. La première clé spécifiée sera utilisée pour le chiffrement, alors que l'ensemble des clés spécifiées le sera pour le déchiffrement. Pour effectuer une rotation périodique des clés sur plusieurs serveurs, ajoutez une nouvelle clé en fin de liste, puis, une fois la rotation complète effectuée, supprimez la première clé de la liste.

Langues Disponibles:  fr 

top

Commentaires 3r6j1f

Notice:
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 by our s 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 Libera.chat, or sent to our mailing lists.