Opções de contexto de SSL

Opções de contexto de SSLLista de opções de contexto de SSL

Descrição

Opções de contexto dos transportadores ssl:// e tls://.

Opções

peer_namestring

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_peerbool

Exige a verificação do certificado SSL utilizado.

true como padrão.

verify_peer_namebool

Exige a verificação do nome do peer.

true como padrão.

allow_self_signedbool

Permite certificados auto assinados. Necessita o parâmetro verify_peer.

false como padrão.

cafilestring

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.

capathstring

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_certstring

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_pkstring

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.

passphrasestring

Senha usada para codificar seu arquivo local_cert

verify_depthint

Abortará se a cadeia de certificados for muito profunda.

Não verificar por padrão.

ciphersstring

Define a lista de cifras disponíveis. O formato desta string é descrita em » ciphers(1).

DEFAULT como padrão.

capture_peer_certbool

Se definida como true, a opção de contexto peer_certificate será criada contendo o certificado peer.

capture_peer_cert_chainbool

Se definida como true, a opção de contexto peer_certificate_chain será criada contendo a cadeia certificadora.

SNI_enabledbool

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_compressionbool

Se definida, desabilita a compressão TLS. Pode ajudar a mitigar o ataque de vetor criminoso.

peer_fingerprintstring | 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_levelint

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.

Registro de Alterações

VersãoDescrição
7.2.0 Adicionado security_level. Requer 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.

To Top