簡體   English   中英

如何限制對RDS實例的訪問,即使分配了RDS公共地址

[英]How to limited access to RDS instance even RDS public address is assigned

我有一個RDS實例,它是mysql(VPC中的默認實例,並分配了公共IP地址)。 RDS的公共地址用於我的lambda函數,也可以通過mysql工作台直接訪問。

我知道在通過mysql工作台直接訪問時,使用安全組來阻止我的自定義IP地址並將其列入白名單。 但是,由於IP地址有限,這不允許我的lambda訪問RDS。

我之前嘗試過將lambda放在一個安全組中,並允許RDS安全組的入站用於lambda安全組。 這適用於允許RDS用於lambda功能和直接訪問。 問題是我的lambda函數由於使用aws-sdk調用其他人的aws資源而失去了Internet連接。 也許需要使用NAT網關?

關於以下方面的任何建議:如何通過僅允許使用自定義IP地址和lambda函數來保護我的RDS資源? 我的lambda函數允許通過API調用其他人的aws資源。

謝謝。

AWS最近針對RDS connect引入了IAM策略。 這可用於授予Lambda的訪問權限。

注意:您將需要為數據庫啟用IAM身份驗證

您的最佳配置為:

  • VPC中的RDS實例
  • 同一VPC的專用子網中的Lambda功能
  • VPC公用子網中的NAT網關
  • Lambda功能安全組( Lambda-SG
  • RDS實例上的安全組,允許來自Lambda-SG入站連接(按名稱,而不是IP地址)

Lambda函數僅在配置為使用VPC或VPC具有可將請求轉發到Internet的NAT網關時才可以訪問Internet。

為了獲得最佳安全性,通常建議您將數據庫放在專用子網中。 如果希望從Internet連接到它,則可以通過公共子網中的堡壘服務器使用SSH端口轉發。 但是,我懷疑您足夠高興將RDS實例保留在公共子網中。

暫無
暫無

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

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