fr::ssl::SSL_CTX_set_session_cache_mode(3SSL)

NOM
SSL_CTX_set_session_cache_mode, SSL_CTX_get_session_cache_mode - Activer ou désactiver la mise en cache de session

SYNOPSIS
#include <openssl/ssl.h>

long SSL_CTX_set_session_cache_mode(SSL_CTX ctx, long mode);
 long SSL_CTX_get_session_cache_mode(SSL_CTX ctx);

DESCRIPTION
SSL_CTX_set_session_cache_mode() permet ou pas la mise en cache de session en définissant le mode opérationnel pour ctx à mode.

SSL_CTX_get_session_cache_mode() renvoie le mode actuel du cache.

NOTES
La bibliothèque OpenSSL peut mémoriser ou extraire des sessions SSL/TLS pour usage ultérieur. Les sessions peuvent être gardées en mémoire pour chaque ctx, si plus d’un objet SSL_CTX est conservé. Celui-ci n’a qu’une seule session.

Pour réutiliser une session, un client doit envoyer l’identifiant de session au serveur. Il ne peut envoyer qu’un seul identifiant. Le serveur choisit soit de réutiliser la session, soit de lancer une initialisation de connexion complète (pour créer une nouvelle session).

Un serveur recherchera la session dans son stockage interne de sessions. Si la session n’est pas trouvée dans le stockage interne ou que la recherche pour le stockage interne a été désactivée (SSL_SESS_CACHE_NO_INTERNAL_LOOKUP), le serveur essaiera dans le stockage externe s’il est disponible.

Puisqu’un client peut essayer de réutiliser la session pour l’utiliser dans un contexte différent, l’identifiant de session du contexte doit être défini par le serveur (consultez SSL_CTX_set_session_id_context(3)).

Les modes et modificateurs de cache de session suivants sont disponibles.

SSL_SESS_CACHE_OFF
    Pas de mise en cache de session pour le client ou le serveur.

SSL_SESS_CACHE_CLIENT
    Les sessions de client sont ajoutées au cache de session. Comme il n’est pas possible pour la bibliothèque OpenSSL de savoir si une session sera réutilisée ou quelle session choisir (à cause de la couche d'abstraction du BIO, le moteur SSL ne connait pas de détail sur la connexion), l’application doit choisir la session à réutiliser en utilisant la fonction SSL_set_session(3). Cette option n’est pas activée par défaut.

SSL_SESS_CACHE_SERVER
    Les sessions du serveur sont ajoutées au cache de session. Quand le client propose de réutiliser une session, le serveur recherche en premier la session correspondante dans le cache interne de session (à moins que SSL_SESS_CACHE_NO_INTERNAL_LOOKUP soit établie), puis dans le cache externe s’il est disponible. Si la session est trouvée, le serveur essayera de réutiliser la session. C’est l’action par défaut.

SSL_SESS_CACHE_BOTH
    Activer SSL_SESS_CACHE_CLIENT et SSL_SESS_CACHE_SERVER en même temps.

SSL_SESS_CACHE_NO_AUTO_CLEAR
    Normalement, les sessions expirées sont recherchées dans le cache de session toutes les 255 connexions en utilisant la fonction SSL_CTX_flush_sessions(3). Comme cela peut mener à un délai non contrôlable, la suppression automatique peut être désactivée et SSL_CTX_flush_sessions(3) peut être explicitement demandée par l’application.

SSL_SESS_CACHE_NO_INTERNAL_LOOKUP
    Avec cet attribut, les opérations de redémarrage de session dans un serveur SSL/TLS ne rechercheront pas automatiquement des sessions dans le cache interne, même si des sessions sont automatiquement stockées dedans. Si des rappels de mise en cache externe de session sont utilisés, cet attribut garantit que les recherches sont directement dirigées vers le cache externe.Comme la recherche automatique s’applique uniquement sur les serveurs SSL/TLS, l’attribut n’a aucun effet sur les clients.

SSL_SESS_CACHE_NO_INTERNAL_STORE
    En fonction de la présence de SSL_SESS_CACHE_CLIENT et/ou SSL_SESS_CACHE_SERVER, les sessions négociées dans une initialisation de connexion SSL/TLS peuvent être mises en cache pour une possible réutilisation. Normalement, une nouvelle session est ajoutée dans le cache interne, ainsi que pour n’importe quelle mise en cache externe de session (rappel) qui est configurée, pour le SSL_CTX. Cet attribut empêche les sessions d’être stockées dans le cache interne (bien que l’application puisse les ajouter manuellement en utilisant SSL_CTX_add_session(3)). Note : dans tous les serveurs SSL/TLS où la mise en cache externe est configurée, toute recherche de session réussie dans le cache externe (pour une requête de reprise de session) devrait normalement être copiée dans le cache local avant tout traitement ultérieur ; cet attribut empêche aussi son ajout dans le cache interne.

SSL_SESS_CACHE_NO_INTERNAL
    Activer SSL_SESS_CACHE_NO_INTERNAL_LOOKUP et SSL_SESS_CACHE_NO_INTERNAL_STORE en même temps.

Le mode par défaut est SSL_SESS_CACHE_SERVER.

VALEURS DE RETOUR
SSL_CTX_set_session_cache_mode() renvoie le précédent mode du cache.

SSL_CTX_get_session_cache_mode() renvoie l’actuel mode du cache.

VOIR AUSSI
ssl(3), SSL_set_session(3), SSL_session_reused(3), SSL_CTX_add_session(3), SSL_CTX_sess_number(3), SSL_CTX_sess_set_cache_size(3), SSL_CTX_sess_set_get_cb(3), SSL_CTX_set_session_id_context(3), SSL_CTX_set_timeout(3), SSL_CTX_flush_sessions(3)

HISTORIQUE
SSL_SESS_CACHE_NO_INTERNAL_STORE et SSL_SESS_CACHE_NO_INTERNAL ont été introduits dans OpenSSL 0.9.6h.

TRADUCTION
La traduction de cette page de manuel est maintenue par les membres de la liste <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.