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
boolean
-
Exige a verificação do certificado SSL utilizado.
TRUE
como padrão.
-
verify_peer_name
boolean
-
Exige a verificação do nome do peer.
TRUE
como padrão.
-
allow_self_signed
boolean
-
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
-
CN_match
string
-
Common Name esperado. O PHP executará o casamento de
curingas. Se o Common Name não casar com este, a tentativa de conexão
falhará.
Nota:
Esta opção foi depreciada em favor de peer_name
,
a partir do PHP 5.6.0.
-
verify_depth
integer
-
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
boolean
-
Se definida como TRUE
, a opção de contexto peer_certificate
será criada contendo o certificado peer.
-
capture_peer_cert_chain
boolean
-
Se definida como TRUE
, a opção de contexto peer_certificate_chain
será criada contendo a cadeia certificadora.
-
SNI_enabled
boolean
-
Se definida como TRUE
, o indicador do nome do servidor será habilitado. Habilitar a SNI
permite múltiplos certificados no mesmo endereço IP.
-
SNI_server_name
string
-
Se definida, o valor será usado como o nome do servidor no indicador do nome de
servidor. Se este valor não for definido, o nome do servidor é adivinhado
baseando-se o nome do servidor utilizado na abertura da stream.
Nota:
Esta opção foi depreciada em favor de peer_name
,
a partir do PHP 5.6.0.
-
disable_compression
boolean
-
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 o resumo esperado.
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.