[英]Python - Requests Library - How to ensure HTTPS requests
這可能是一個愚蠢的問題,但我只想確定以下內容。
我目前正在使用 python 中的請求庫。 我正在使用它來調用托管在 Azure 雲上的外部 API。
如果我使用來自虛擬機的請求庫,並且請求庫發送到 URL:http s ://api-management-example/run,這是否意味着我與這個 ZDB974238714CA8DE634A7CE1D08 的通信作為整個有效負載發送,安全嗎? 我在我的虛擬環境中的 Python 站點包中看到,有一個 cacert.pem 文件。 我需要更新嗎? 我是否需要做任何其他事情以確保通信安全,或者我調用 HTTPS URL 的事實意味着它是安全的?
任何信息/指導將不勝感激。
謝謝,
Post 請求更安全,因為它們可以以加密形式作為消息體攜帶數據。 而 GET 請求 append 中的參數 URL,這在瀏覽器歷史記錄中也可見,SSL/TLS 和 HTTPS 連接也加密了 GET 參數。 如果您不使用 HTTPs 或 SSL/TSL 連接,則 POST 請求是安全的首選。 字典 object 可用於將數據作為鍵值對發送到 post 方法的第二個參數。
如果您的 API 上有有效的 SSL 證書,則 HTTPS 協議是安全的。 如果您想更加安全,您可以實施端到端加密/加密。 基本上將您所謂的純文本轉換為加密文本,稱為密文。
您可以在requests
庫中顯式啟用驗證:
import requests
session = requests.Session()
session.verify = True
session.post(url='https://api-management-example/run', data={'bar':'baz'})
這是默認啟用的。 您還可以根據請求驗證證書:
requests.get('https://github.com', verify='/path/to/certfile')
或根據 session:
s = requests.Session()
s.verify = '/path/to/certfile'
閱讀文檔。
import requests
response = requests.get("https://api-management-example/run", verify=True)
import requests
response = requests.get("https://api-management-example/run", verify="/path/to/local/certificate/file/")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.