簡體   English   中英

AWS 文檔中 MySQL 和 PostgreSQL (boto3) 調用給出的 SSL 證書頒發機構的“[完整路徑]”組件是什么?

[英]What is the "[full path]" component of the SSL Certificate Authority given by MySQL and PostgreSQL (boto3) calls in the AWS docs?

In the AWS documentation for " Connecting to your DB instance using IAM authentication and the AWS SDK for Python (Boto3) ", the following call is made to both psycopg2.connect (shown) and mysql.connector.connect :

conn =  psycopg2.connect(
    host=ENDPOINT,
    user=USR, 
    passwd=token,
    port=PORT, 
    database=DBNAME,
    ssl_ca='[full path]rds-combined-ca-bundle.pem'
)

我看到一些關於ssl_ca路徑( 此處此處)以及這些捆綁包的用途的討論。 但是我在這里給出的三個鏈接都沒有描述 AWS 文檔給出的[full path]組件,或者它指向的位置。 我目前的猜測(來自第二個鏈接)是這個URL,但我想確定一下。

此外,將此捆綁包下載到運行這些 Python 3 (boto3) 腳本的遠程 EC2 有什么好處?

編輯:順便說一句,上述對psycopg2.connect的調用正在 Jupyter 中使用 Python 3.9.5 目前在 EC2 上運行, [full path]按原樣編寫...

您應該將“[完整路徑]”替換為您將 pem 文件下載到本地計算機時保存的文件系統路徑(目錄路徑)(從您提供的最后一個 URL)到本地計算機。

使用它的好處是您的客戶端將驗證它是否連接到正確的數據庫,而不是某些惡意系統正在攔截您的流量。 我不認為你認為這有多么有利:如果有人已經破壞了亞馬遜足以攔截他們的內部流量,他們也可能已經破壞了他們的 CA。 但至少有一些可能性,他們做了一個沒有另一個。

您顯示的代碼對我不起作用,因為 ssl_ca 不是它的拼寫方式。 假設您使用了 PostgreSQL 第一個鏈接中實際給出的代碼:

sslmode='prefer', sslrootcert="[full path]rds-combined-ca-bundle.pem"

然后,盡管存在虛假路徑,它仍然有效的原因是“首選”意味着它不在乎是否缺少 rootcert,它只是在這種情況下跳過驗證。 如果您將其更改為“驗證完整”,那么它可能會停止工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM