Python có sử dụng cửa hàng chứng chỉ windows không?

Tôi muốn có một cách để tìm nạp chứng chỉ ứng dụng khách của người dùng từ cửa hàng chứng chỉ Windows, để xác thực các dịch vụ web được bảo vệ trong các công cụ xử lý địa lý

Trước đây tôi đã thực hiện việc này bằng pythonnet nhưng pythonnet [vẫn là?

Đối với những người trong chúng ta làm việc trong môi trường "cực kỳ có ý thức bảo mật", có thể mở rộng ArcGIS Pro để tích hợp các dịch vụ web được bảo vệ mà không can thiệp vào quy trình làm việc của người dùng và không phải sử dụng phần mềm. NET SDK, là một nhu cầu quan trọng

Python certifi cung cấp bộ sưu tập Chứng chỉ gốc được tuyển chọn kỹ lưỡng của Mozilla để xác thực độ tin cậy của chứng chỉ SSL trong khi xác minh danh tính của máy chủ TLS. Nó đã được lấy từ dự án yêu cầu. Thư viện yêu cầu của Python sử dụng tệp CA của chính nó theo mặc định hoặc sẽ sử dụng gói chứng chỉ của gói certifi nếu được cài đặt

Cài đặt chứng chỉ Python

Để cài đặt gói python certifi, bạn phải gõ lệnh sau

python3 -m pip install certifi

# OR

pip install certifi

Nếu bạn đã cài đặt thư viện yêu cầu thì 100% khả năng thư viện certifi cũng đã được cài đặt, nhưng bạn phải kiểm tra nó. Vì vậy, nếu bạn nhấn lệnh sau, nó sẽ cho chúng tôi biết rằng yêu cầu đã được đáp ứng hoặc nó sẽ cài đặt trên máy của bạn

Mặc dù có thể chuyển gói CA của riêng bạn tới các Yêu cầu để ghi đè các CA mặc định, nhưng một số gói của bên thứ ba sử dụng các Yêu cầu ngầm và không có cách nào bạn có thể yêu cầu họ sử dụng vị trí tùy chỉnh để xác minh

Cách cài đặt chứng chỉ Python trên Windows

Để cài đặt certifi Python trên Microsoft Windows

  1. Nhập cmd vào thanh tìm kiếm và nhấn Enter để mở dòng lệnh
  2. Nhập python3 -m pip install certifi trong dòng lệnh và nhấn Enter lần nữa. Điều này cài đặt certifi cho cài đặt Python mặc định của bạn
  3. Lệnh trước có thể không hoạt động nếu bạn có cả Python phiên bản 2 và 3 trên máy tính của mình. Trong trường hợp đó, hãy thử lệnh pip3 install certifi. Nó hiện đã được cài đặt trong hệ thống của bạn

Cách cài đặt chứng chỉ Python trên Linux

Để cài đặt certifi Python trên Linux

  1. Mở terminal hoặc shell trong hệ điều hành Linux của bạn
  2. Nhập python3 -m pip install certifi và nhấn Enter
  3. Nếu nó không hoạt động, hãy thử sử dụng lệnh này. pip3 cài đặt chứng chỉ hoặc python -m pip cài đặt chứng chỉ

Chứng chỉ Python. ở đâu[]

Giấy chứng nhận. hàm where[] giúp chúng ta tìm tham chiếu của gói tổ chức phát hành chứng chỉ [CA] đã cài đặt trong Python.

import certifi

print[certifi.where[]]

đầu ra

/Users/krunal/Library/Python/3.8/lib/python/site-packages/certifi/cacert.pem

Bạn cũng có thể tìm thấy cacert. đường dẫn pem từ dòng lệnh bằng lệnh sau

 python -m certifi
/Users/krunal/Library/Python/3.8/lib/python/site-packages/certifi/cacert.pem

Các trình duyệt và cơ quan cấp chứng chỉ đã kết luận rằng các khóa 1024 bit yếu không thể chấp nhận được đối với các chứng chỉ, đặc biệt là chứng chỉ gốc

Vì lý do tương tự, Mozilla đã loại bỏ bất kỳ điểm yếu nào [i. e. , khóa 1024-bit] từ gói của nó, thay thế nó bằng chứng chỉ mạnh tương đương [i. e. , khóa 2048 bit trở lên] từ cùng một CA

Ghi chú. Certifi không hỗ trợ bất kỳ bổ sung/xóa hoặc sửa đổi nào khác đối với nội dung của kho lưu trữ ủy thác CA.  

Nếu bạn đặt các chứng chỉ bổ sung trong tệp gói PEM, bạn có thể sử dụng hai biến môi trường này để ghi đè lên các cửa hàng chứng chỉ mặc định được Python OpenSSL và Yêu cầu sử dụng

SSL_CERT_FILE=/System/Library/OpenSSL/cert.pem
REQUESTS_CA_BUNDLE=/System/Library/OpenSSL/cert.pem

Tuy nhiên, chúng tôi có thể nhanh chóng kiểm tra điều này khi tập lệnh của chúng tôi khởi động và tự động cập nhật gói CA với một CA nhất định nếu cần

Trước tiên, chụp CA tùy chỉnh của bạn và lưu nó dưới dạng PEM;

Nếu bạn chỉ có một. chắc chắn,. crt, hoặc. derenSSL

openssl x509 -inform der -in certificate.cer -out certificate.pem

Nếu bạn có nhiều gốc hoặc trung gian tùy chỉnh, bạn có thể thêm tất cả chúng vào một. pem khi bạn chuyển đổi xong tất cả

Kéo chứng chỉ. pem vào thư mục gốc của dự án của bạn

Bây giờ, chúng tôi sẽ thử yêu cầu URL mục tiêu. Trong trường hợp của chúng tôi, đó là API Github và nếu chúng tôi gặp phải lỗi chứng chỉ, hãy cập nhật gói CA đang được Certifi sử dụng.

import certifi
import requests

try:
    print['Checking connection to Github...']
    test = requests.get['//api.github.com']
    print['Connection to Github OK.']
except requests.exceptions.SSLError as err:
    print['SSL Error. Adding custom certs to Certifi store...']
    cafile = certifi.where[]
    with open['certicate.pem', 'rb'] as infile:
        customca = infile.read[]
    with open[cafile, 'ab'] as outfile:
        outfile.write[customca]
    print['That might have worked.']

đầu ra

Checking connection to Github...
Connection to Github OK.

giải quyết. ModuleNotFoundLỗi. Không có mô-đun nào có tên là “certifi”

ModuleNotFoundError. Không có mô-đun nào có tên ngoại lệ “certifi” được đưa ra khi mô-đun certifi không được cài đặt đúng cách hoặc bạn quên cài đặt gói certifi trong Python

Để giải quyết ModuleNotFoundError. Lỗi không có mô-đun có tên “certifi” trong Python, trước tiên hãy cài đặt thư viện certifi bằng cách sử dụng “python3 -m pip install certifi” hoặc “pip install certifi” trong vỏ hoặc thiết bị đầu cuối của hệ điều hành

Đó là ví dụ về chứng chỉ Python

Bài viết liên quan

Yêu cầu Python nhận được

Python yêu cầu đăng bài

Python urllib. lời yêu cầu. urlopen[]

Facebook

Twitter

Pinterest

WhatsApp

Bài viết trước Cách in Loại biến trong Python

Bài viết tiếp theo Bộ Python bao gồm. Cách kiểm tra xem tập hợp có chứa phần tử hay không

kranal

https. //appdividend. com/

Krunal Lathiya là một kỹ sư công nghệ thông tin. Theo chuyên môn, anh ấy là một nhà phát triển web có kiến ​​thức về nhiều nền tảng back-end [e. g. , PHP, Nút. js, Python] và các khung JavaScript giao diện người dùng [e. g. , Góc, Phản ứng và Vue]

Python sử dụng kho chứng chỉ nào?

Theo mặc định, mô-đun ssl của Python sử dụng gói chứng chỉ CA hệ thống - /etc/pki/tls/certs/ca-bundle .

Yêu cầu Python có sử dụng SSL không?

Yêu cầu xác minh chứng chỉ SSL cho yêu cầu HTTPS , giống như trình duyệt web. Chứng chỉ SSL là các tệp dữ liệu nhỏ liên kết kỹ thuật số khóa mật mã với thông tin chi tiết của tổ chức. Thông thường, một trang web có chứng chỉ SSL được gọi là trang web an toàn.

Chứng chỉ Windows được lưu trữ ở đâu?

Kho chứng chỉ này được đặt trong sổ đăng ký dưới thư mục gốc HKEY_LOCAL_MACHINE . Loại kho lưu trữ chứng chỉ này là cục bộ đối với tài khoản người dùng trên máy tính. Kho chứng chỉ này nằm trong sổ đăng ký dưới thư mục gốc HKEY_CURRENT_USER.

OpenSSL có sử dụng cửa hàng Chứng chỉ Windows không?

Bạn không thể sử dụng trực tiếp kho chứng chỉ Windows với OpenSSL . Thay vào đó, OpenSSL mong đợi các CA của nó theo một trong hai cách. Nhiều tập tin. Trong một cấu trúc thư mục đặc biệt. Một tệp cho mỗi chứng chỉ có tên thông thường như Verisign-CA.

Chủ Đề