您可在 Amazon RDS User Guide 中查看支援延伸模組的清單。若要請求支援其他延伸模組,您可寄送電子郵件到 rds-postgres-extensions-request@amazon.com 並附上延伸模組名稱及使用案例。
Trusted Language Extensions for PostgreSQL
問:為什麼我應該使用 Trusted Language Extensions for PostgreSQL?
Trusted Language Extensions (TLE) for PostgreSQL 可讓開發人員建立高效能 PostgreSQL 延伸模組,並在 Amazon RDS 上安全執行該模組。這樣一來,TLE 可縮短您的上市時間,並減輕資料庫管理員在驗證用於生產資料庫工作負載的自訂和第三方程式碼方面的負擔。一旦確定擴展符合您的需求,就能繼續進行。獨立軟體開發廠商 (ISV) 採用 TLE 後,即可向在 Amazon RDS 上執行的客戶提供全新 PostgreSQL 延伸模組。
問:在 PostgreSQL 中執行擴展的傳統風險有哪些?TLE for PostgreSQL 如何降低這些風險?
PostgreSQL 擴展在相同的程序空間執行以獲得高效能。然而,擴展可能存在可導致資料庫崩潰的軟體缺陷。
TLE for PostgreSQL 可提供多層保護來降低這種風險。TLE 的設計可限制對系統資源的存取。rds_superuser 角色可確定允許誰安裝特定擴展。不過,這些變更只能透過 TLE API 進行。TLE 的設計可限制擴展缺陷對單一資料庫連線的影響。除了這些保護措施之外,TLE 的設計還可為 rds_superuser 角色中的 DBA 提供細粒度線上控制,以控制誰可以安裝擴展,並且他們可以建立執行這些擴展的許可模型。使用者只有具有足夠的許可,才能在 TLE 擴展上使用「CREATE EXTENSION」命令來執行和建立。DBA 還可將更複雜的擴展所需的「PostgreSQL 掛鉤」列入允許清單,這些擴展可修改資料庫的內部行為,並且通常需要提升的許可。
問:TLE for PostgreSQL 如何與其他 AWS 服務建立關聯/搭配使用?
TLE for PostgreSQL 可用於 Amazon RDS on PostgreSQL 14.5 及更高版本。TLE 本身以 PostgreSQL 延伸模組形式實作,您可從與 Amazon RDS 上支援的其他延伸模組相似的 rds_superuser 角色將其啟動。
問:我可以在哪些版本的 PostgreSQL 中執行 TLE for PostgreSQL?
您可以在 Amazon RDS 的 PostgreSQL 14.5 或更高版本中執行 TLE for PostgreSQL。
問:Trusted Language Extensions for PostgreSQL 在哪些區域可供使用?
TLE for PostgreSQL 目前在所有 AWS 區域 (不包括 AWS 中國區域) 和 AWS GovCloud 區域可用。
問:執行 TLE 需要多少費用?
TLE for PostgreSQL 可供 Amazon RDS 客戶免費使用。
問:TLE for PostgreSQL 與目前 Amazon Aurora 和 Amazon RDS 上可用的擴展有何不同?
Aurora 和 Amazon RDS 支援超過 85 個經策管的 PostgreSQL 擴展集。AWS 在 AWS 共同責任模式下管理每個擴展的安全風險。實作 TLE for PostgreSQL 的擴展包含在這個集合中。您編寫或從第三方來源獲得並安裝在 TLE 中的擴展,會被視為應用程式的程式碼的一部分。您須對使用 TLE 擴展的應用程式的安全負責。
問:我可以使用 TLE for PostgreSQL 執行哪些擴展範例?
您可以建置開發人員功能,例如點陣圖壓縮和差分隱私權 (如保護個人隱私權的可公開存取的統計查詢)。
問:我可以使用哪些程式設計語言開發 TLE for PostgreSQL?
TLE for PostgreSQL 目前支援 JavaScript、PL/pgSQL、Perl 和 SQL。
問:如何部署 TLE for PostgreSQL 擴展?
一旦 rds_superuser 角色啟用 TLE for PostgreSQL,即可使用來自任何 PostgreSQL 用戶端 (例如 psql) 的 SQL CREATE EXTENSION 命令部署 TLE 擴展。這種方式類似於建立以程序語言 (例如 PL/pgSQL 或 PL/Perl) 編寫的使用者定義函數。您可以控制哪些使用者具有部署 TLE 擴展並使用特定擴展的許可。
問:TLE for PostgreSQL 擴展如何與 PostgreSQL 資料庫通訊?
TLE for PostgreSQL 透過 TLE API 來專門存取您的 PostgreSQL 資料庫。TLE 支援的受信任語言包括 PostgreSQL 伺服器程式設計介面 (SPI) 的所有函數,以及對 PostgreSQL 掛鉤的支援,包括檢查密碼掛鉤。
問:在哪裡可以進一步了解有關 TLE for PostgreSQL 開放原始碼專案的資訊?
您可以前往官方 TLE GitHub 頁面,進一步了解有關 TLE for PostgreSQL 專案的資訊。