Computer >> Máy Tính >  >> Lập trình >> PHP

Tùy chọn ngữ cảnh SSL PHP

Giới thiệu

Danh sách các tùy chọn Ngữ cảnh cho ssl:// tls:// phương tiện giao thông.

peer_name Tên ngang hàng sẽ được sử dụng. Nếu giá trị này không được đặt, thì tên được đoán dựa trên tên máy chủ được sử dụng khi mở luồng.
verify_peer Yêu cầu xác minh chứng chỉ SSL được sử dụng. Giá trị mặc định là TRUE.
verify_peer_name Yêu cầu xác minh tên ngang hàng. Giá trị mặc định là TRUE.
allow_self_signed Cho phép chứng chỉ tự ký. Yêu cầu verify_peer. Giá trị mặc định là FALSE
cafile Vị trí của Tổ chức phát hành chứng chỉ tệp trên hệ thống tệp cục bộ được sử dụng để xác thực danh tính của máy ngang hàng từ xa.
capath phải là một thư mục chứng chỉ được băm chính xác.
local_cert Đường dẫn đến tệp chứng chỉ cục bộ trên hệ thống tệp.
local_pk Đường dẫn đến tệp khóa cá nhân cục bộ trên hệ thống tệp trong trường hợp các tệp riêng biệt cho chứng chỉ và khóa cá nhân.
cụm mật khẩu Cụm mật khẩu dùng cho local_cert của bạn tệp đã được mã hóa.
CN_match Tên thông dụng mà chúng tôi đang mong đợi. Nếu Tên chung không khớp, cố gắng kết nối sẽ không thành công.
verify_depth Hủy nếu chuỗi chứng chỉ quá sâu.
mật mã Đặt danh sách các mật mã có sẵn. Định dạng của chuỗi được mô tả trong »ciphers (1).
capture_peer_cert Nếu được đặt thành TRUE một peer_certificate tùy chọn ngữ cảnh sẽ được tạo có chứa chứng chỉ ngang hàng.
capture_peer_cert_chain Nếu được đặt thành TRUE, một tùy chọn ngữ cảnh peer_certificate_chain sẽ được tạo có chứa chuỗi chứng chỉ.
SNI_enabled Nếu được đặt thành ĐÚNG, chỉ báo tên máy chủ sẽ được bật.
SNI_server_name Nếu được đặt, giá trị này sẽ được sử dụng làm tên máy chủ cho chỉ báo tên máy chủ. Nếu không, tên máy chủ được đoán dựa trên tên máy chủ được sử dụng
disable_compression Nếu được đặt, hãy tắt tính năng nén TLS.
peer_fingerprint Hủy bỏ khi thông báo chứng chỉ từ xa không khớp với hàm băm được chỉ định.
security_level Đặt mức bảo mật. Nếu không được chỉ định, mức bảo mật mặc định sẽ được sử dụng. Có sẵn kể từ PHP 7.2.0 OpenSSL 1.1.0 .

Ví dụ

Ví dụ này hiển thị cài đặt ngữ cảnh SSL.

$stream_context = stream_context_create([ 'ssl' => [
   'local_cert' => '/path/to/key.pem',
   'peer_fingerprint' => openssl_x509_fingerprint(file_get_contents('/path/to/key.crt')),
   'verify_peer' => false,
   'verify_peer_name' => false,
   'allow_self_signed' => true,
   'verify_depth' => 0 ]]);