Options de contexte SSL

Options de contexte SSLListe des options de contexte SSL

Description

Options de contexte pour les protocoles ssl:// et tls://.

Options

peer_namestring

Nom de paires à utiliser. Si cette valeur n'est pas définie, alors le nom sera deviné en se basant sur le nom d'hôte utilisé lors de l'ouverture du flux.

verify_peerbooléen

Nécessite une vérification du certificat SSL utilisé.

Par défaut, vaut true.

verify_peer_namebool

Nécessite la vérification du nom de paires.

Par défaut, vaut true.

allow_self_signedbooléen

Permet les certificats autosignés. Requière le paramètre verify_peer.

Par défaut, vaut false

cafilestring

Endroit où se trouve le fichier de l'autorité du certificat sur le système de fichiers local et qui devra être utilisé avec l'option de contexte verify_peer pour identifier le pair distant.

capathstring

Si cafile n'est pas spécifié ou si le certificat n'a pas été trouvé, une recherche dans le dossier pointé par capath sera effectuée afin d'y trouver un certificat valide. capath doit être un dossier de certificat valide.

local_certstring

Chemin vers le certificat local, sur le système de fichiers. Ce doit être un fichier encodé PEM qui contient votre certificat et votre clé privée. Il peut, optionnellement, contenir la chaîne de certification de l'émetteur. La clé privée peut également être contenue dans un fichier distinct spécifié par local_pk.

local_pkstring

Chemin d'accès au fichier de clé privée locale sur le système de fichiers dans le cas de fichiers distincts pour le certificat (local_cert) et la clé privée.

passphrasestring

La phrase passe avec laquelle votre fichier local_cert a été encodé.

verify_depthint

Échoue si la chaîne de certification est trop profonde.

Par défaut, aucune vérification.

ciphersstring

Définit la liste des chiffrements. Le format de la chaîne est décrite sur la page » ciphers(1).

Par défaut, vaut DEFAULT.

capture_peer_certbool

Si définit à true, un option de contexte peer_certificate sera créée, contenant le certificat de l'émetteur.

capture_peer_cert_chainbool

Si définit à true, une option de contexte peer_certificate_chain sera créée, contenant la chaîne de certification.

SNI_enabledbool

Si vaut true, l'indication sur le nom du serveur sera activée. Le fait d'activer SNI permet d'utiliser plusieurs certificats sur la même adresse IP.

disable_compressionbool

Si défini, la compression TLS sera désactivée. Cela peut aider à mitiger le vecteur d'attaque CRIME.

peer_fingerprintstring | array

Stop lorsque le certificat digest distant ne correspond pas au hash spécifié.

Lorsqu'une chaîne de caractères est utilisée, la longueur va déterminer l'algorithme de hachage utilisé, soit "md5" (32), soit "sha1" (40).

Lorsqu'un tableau est utilisé, la clé indique le nom de l'algorithme de hachage, et chaque valeur correspondante représente le digest attendu.

security_levelint

Définie le niveau de sécurité. Si non spécifié le niveau de sécurité par défaut est utilisé. Les niveaux de sécurités sont décrit dans » SSL_CTX_get_security_level(3).

Disponible à partir de PHP 7.2.0 et OpenSSL 1.1.0.

Historique

VersionDescription
7.2.0 Ajout de security_level. Requit OpenSSL >= 1.1.0.

Notes

Note: Vu que ssl:// est un protocole sous-jacent pour les gestionnaires https:// et ftps://, toutes les options de contexte appliquées à ssl:// seront également appliquées à https:// et ftps://.

Note: Afin que SNI (Server Name Indication) soit disponible, PHP doit être compilé avec OpenSSL 0.9.8j ou supérieur. Utilisez la constante OPENSSL_TLSEXT_SERVER_NAME pour déterminer si SNI est supporté ou non.

To Top