array (
0 => 'index.php',
1 => 'PHP Manual',
),
'head' =>
array (
0 => 'UTF-8',
1 => 'pt_BR',
),
'this' =>
array (
0 => 'context.ssl.php',
1 => 'Opções de contexto de SSL',
),
'up' =>
array (
0 => 'context.php',
1 => 'Opções e parâmetros de contexto',
),
'prev' =>
array (
0 => 'context.ftp.php',
1 => 'Opções de contexto do FTP',
),
'next' =>
array (
0 => 'context.phar.php',
1 => 'Opções de contexto do Phar',
),
'alternatives' =>
array (
),
'source' =>
array (
'lang' => 'pt_BR',
'path' => 'language/context/ssl.xml',
),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);
?>
Opções de contexto de SSL
Opções de contexto de SSL — Lista de opções de contexto de SSL
Descrição
Opções de contexto dos transportadores ssl://
e
tls://
.
Opções
-
peer_name
string
-
Nome do peer a ser utilizado. Se este valor não for defino, o nome será adivinhado
com base no nome do host utilizado na abertura da stream.
-
verify_peer
bool
-
Exige a verificação do certificado SSL utilizado.
true
como padrão.
-
verify_peer_name
bool
-
Exige a verificação do nome do peer.
true
como padrão.
-
allow_self_signed
bool
-
Permite certificados auto assinados. Necessita o parâmetro
verify_peer
.
false
como padrão.
-
cafile
string
-
Localização do arquivo de Autoridade Certificadora no sistema de arquivos
que deve ser usado pela opção de contexto verify_peer
para autenticar a identidade do peer remoto.
-
capath
string
-
Se a opção cafile
não for especificada, ou o certificado
não for encontrado, o diretório apontado pela opção capath
será utilizado na busca de um certificado adequado. A opção capath
deve ser um diretório de certificado com hash correto.
-
local_cert
string
-
Caminho para o certificado local no sistema de arquivos. Deve ser um
arquivo PEM codificado que contém seu certificado e chave privada.
Pode opcionalmente conter a cadeia de certificados dos emitentes.
A chave privada também pode estar em um arquivo separado especificada
pela opção local_pk
.
-
local_pk
string
-
Caminho para a chave privada local no sistema de arquivos, em caso de se usar
arquivos separados para o certificado (local_cert
) e a chave privada.
-
passphrase
string
-
Senha usada para codificar seu arquivo
local_cert
-
verify_depth
int
-
Abortará se a cadeia de certificados for muito profunda.
Não verificar por padrão.
-
ciphers
string
-
Define a lista de cifras disponíveis. O formato desta string é descrita
em » ciphers(1).
DEFAULT
como padrão.
-
capture_peer_cert
bool
-
Se definida como true
, a opção de contexto peer_certificate
será criada contendo o certificado peer.
-
capture_peer_cert_chain
bool
-
Se definida como true
, a opção de contexto peer_certificate_chain
será criada contendo a cadeia certificadora.
-
SNI_enabled
bool
-
Se definida como true
, o indicador do nome do servidor será habilitado. Habilitar a SNI
permite múltiplos certificados no mesmo endereço IP.
-
disable_compression
bool
-
Se definida, desabilita a compressão TLS. Pode ajudar a mitigar o ataque de vetor
criminoso.
-
peer_fingerprint
string | array
-
Abortará quando o certificado resumido remoto não corresponder a um hash
especificado.
Quando uma string for utilizada, o tamanho determinará qual algoritmo de hash será
aplicado, "md5" (32) ou "sha1" (40).
Quando um array for utilizado, as chaves indicarão o nome do hash
e os valores correspondentes ao resumo esperado.
-
security_level
int
-
Define o nível de segurança. Se não especificado, o padrão da biblioteca é usado.
Os níveis de segurança são descritos em
» SSL_CTX_get_security_level(3).
Disponível a partir do PHP 7.2.0 e OpenSSL 1.1.0.
Notas
Nota:
Por ssl://
ser um transporte básico para os empacotadores
https://
e
ftps://
,
qualquer opção de contexto aplicáveis a ssl://
, também se aplicam a
https://
e ftps://
.
Nota:
Para SNI (Server Name Indication) estar disponível, o PHP deve ser compilado
com o OpenSSL 0.9.8j ou superior. Utilize a constante
OPENSSL_TLSEXT_SERVER_NAME
para determinar o suporte ao
SNI.