Amazon RDS 安全性

了解 Amazon RDS 中的安全功能

Amazon RDS 是一項受管的關聯式資料庫服務,提供八種熱門資料庫引擎選項供選擇,包括 Amazon Aurora PostgreSQL 相容版本Amazon Aurora MySQL 相容版本RDS for PostgreSQLRDS for MySQLRDS for MariaDBRDS for SQL ServerRDS for OracleRDS for Db2

Amazon RDS 和 Amazon Aurora 提供一系列功能來確保安全儲存和存取您的資料。在 Amazon 虛擬私有雲端 (VPC) 中執行您的資料庫,以進行網路層級隔離。使用安全群組來控制哪些 IP 地址或 Amazon EC2 執行個體可以連線到您的資料庫。除了您指定的規則以外,此內建防火牆可防止任何資料庫存取。

使用 AWS 身分與存取管理 (IAM) 政策指派權限,以決定誰可以管理 Amazon RDS 資源。使用資料庫引擎的安全性功能來控制誰可以登入資料庫,就像資料庫位於您的本機網路一樣。您也可以將資料庫使用者對應至 IAM 角色以進行聯合存取。

使用安全通訊端層/傳輸層安全性 (SSL/TLS) 連線來加密傳輸中的資料。使用 Amazon Key Management Service (KMS) 加密資料庫儲存空間和靜態備份。監控資料庫活動,並透過資料庫活動串流與合作夥伴資料庫安全應用程式整合。

靜態資料加密

Amazon RDS 使用 AWS 金鑰管理服務 (KMS) 管理的金鑰來加密您的資料庫。在以 Amazon RDS 加密執行的資料庫執行個體上,於基礎儲存體中存放的靜態資料,以及其自動備份、僅供讀取複本和快照都會加密。Amazon RDS 加密採用業界標準 AES-256 加密演算法,在託管 Amazon RDS 執行個體的伺服器上加密您的資料。

Amazon RDS 還支援 Transparent Data Encryption (TDE) for SQL Server (SQL 伺服器企業版和標準版) 和 Oracle (Oracle 企業版中的 Oracle 進階安全性選項)。使用 TDE,資料庫伺服器會在將資料寫入儲存裝置之前自動加密,並在從儲存區讀取資料時自動解密資料。

傳輸中的資料加密

使用 SSL/TLS 加密應用程式與資料庫執行個體之間的通訊。佈建執行個體時,Amazon RDS 會建立 SSL 憑證,並將憑證安裝到執行個體上。對於 MySQL,您使用 --ssl_ca 參數啟動 mysql 客戶端來引用公開金鑰,以加密連接。對於 SQL Server,請下載公開金鑰,然後將憑證匯入您的 Windows 作業系統。RDS for Oracle 透過資料庫執行個體來使用 Oracle 本機網路加密。您只需將原生網路加密選項新增至選項群組,然後將該選項群組與資料庫執行個體相關聯。建立加密連線後,資料庫執行個體和應用程式之間傳輸的資料會在傳輸期間加密。您還可以要求您的資料庫執行個體只接受加密的連線。

存取控制

Amazon RDS 可與 AWS Identity and Access Management (IAM) 整合,並讓您能夠控制 AWS IAM 使用者和群組可在特定資源 (例如,資料庫執行個體、資料庫快照、資料庫參數群組、資料庫事件訂閱,以及資料庫選項群組) 採取的動作。此外,您可以為資源加上標籤,並控制您的 IAM 使用者和群組可以對一組具有相同標籤 (和標籤值) 的資源進行的操作。如需有關 IAM 整合的詳細資訊,請參閱 IAM 資料庫身分驗證文件

此外,您還可以為 Amazon RDS 資源加上標籤,並控制 IAM 使用者和群組能對一組具有相同標籤和關聯值的資源進行的動作。例如,您可以設定 IAM 規則,以確保開發人員能夠修改「開發」資料庫執行個體,但只有資料庫管理員能變更「生產」資料庫執行個體。

當您首次在 Amazon RDS 中建立資料庫執行個體時,將建立主要使用者帳戶,該帳戶僅在 Amazon RDS 前後關聯中用來控制對資料庫執行個體的存取權。主要使用者帳戶是原生資料庫使用者帳戶,可讓您使用所有資料庫權限登入資料庫執行個體。您建立資料庫執行個體時,可以指定與每個資料庫執行個體相關聯的主要使用者名稱和密碼。建立資料庫執行個體之後,您可以使用主要使用者憑證連接到資料庫。之後,您可以建立其他使用者帳戶,以便限制誰能存取您的資料庫執行個體。

網路隔離和資料庫防火牆

使用 Amazon 虛擬私有雲端 (VPC),您可以將資料庫執行個體隔離在自己的虛擬網路中,並使用產業標準的加密 IPSec VPN 連接到現有 IT 基礎架構。

使用 Amazon VPC,您可指定要使用的 IP 範圍來隔離您的資料庫執行個體,並透過經過產業標準加密的 IPsec VPN 連接到現有 IT 基礎架構。在 VPC 中執行 Amazon RDS 可讓您在私有子網路中擁有資料庫執行個體。您也可以設定一個 虛擬私有閘道,將公司網路擴展到 VPC,然後允許存取該 VPC 中的 Amazon RDS 資料庫執行個體。有關詳細資訊,請參閱 Amazon VPC 使用者指南。您可以透過 Amazon VPN 或在公有子網路中可啟動的堡壘主機,從 VPC 外部的 Amazon EC2 執行個體存取 VPC 內部署的資料庫執行個體。要使用堡壘主機,您需要設定一個公有子網路,包含當作 SSH Bastion 的 EC2 執行個體。這個公有子網路必須有網際網路閘道和路由規則,允許透過 SSH 主機引導流量,然後必須將請求轉發到 Amazon RDS 資料庫執行個體的私有 IP 地址。資料庫安全群組可用來協助確保 Amazon VPC 內資料庫執行個體的安全。此外,透過網路 ACL 可允許或拒絕進出每個子網路的網路流量。透過 IPsec VPN 連接進出 Amazon VPC 的所有網路流量都可以由內部部署的安全基礎設施 (包括網路防火牆、入侵偵測系統) 監視。

資料庫活動串流

除了外部安全威脅之外,受管的資料庫還需要防範資料庫管理員 (DBA) 造成的內部風險。資料庫活動串流目前受 Amazon Aurora 和 Amazon RDS for Oracle 支持,可提供關聯式資料庫中資料庫活動的即時資料串流。與第三方資料庫活動監控工具整合時,您可監控和稽核資料庫活動,為您的資料庫提供安全保護,並滿足合規和法規要求。

資料庫活動串流透過實作可控制 DBA 存取資料庫活動串流的防護模型,以保護您的資料庫免受內部威脅。因此,資料庫活動串流的收集、傳輸、儲存和後續處理在管理資料庫的 DBA 的存取範圍以外。

該串流會被推送到代表您的資料庫建立的 Amazon Kinesis 資料串流。然後,Amazon CloudWatch 或合作夥伴應用程式 (例如 IBM Security Guardium) 可以使用 Kinesis Data Firehose 中的資料庫活動串流來進行合規性管理。這些合作夥伴應用程式可以使用資料庫活動串流資訊產生提醒,並提供 Amazon Aurora 資料庫所有活動的稽核功能。

您可以在文件頁面中進一步瞭解如何針對 PostgreSQL 和 MySQL 相容的 Aurora 版本使用資料庫活動串流,並在文件頁面中瞭解 Amazon RDS for Oracle。

合規

Amazon RDS 致力於為客戶提供強大的合規架構及進階工具和安全措施,客戶可使用這些措施來評估、達成和證明符合適用法律和法規要求的合規性。客戶應檢閱 AWS 共同責任模式,並對應 Amazon RDS 的責任和客戶責任。客戶也可使用 AWS Artifact 存取 RDS 稽核報告,並對控制責任進行評估。

如需詳細資訊,請瀏覽 AWS 合規性頁面

常見問答集

Amazon RDS 透過分析資料庫執行個體的組態和用量指標,提供最佳實務指導。建議涵蓋安全性、加密、IAM 和 VPC 等領域。您可以瀏覽可用的建議、立即執行或排定在下一個維護時段執行建議的動作,或是完全不理會。

Amazon VPC 可讓您在 AWS 雲端的私有、隔離部分建立虛擬聯網環境,您可以在其中全面控制私有 IP 地址範圍、子網路、路由表和網路閘道。您可以利用 Amazon VPC 定義虛擬網路拓撲和自訂網路設定,使其非常類似於您在自己的資料中心所操作的傳統 IP 網路。

當您想要執行公有 Web 應用程式,同時仍在私有子網路中保留非公開存取的後端伺服器時,就能利用 VPC。您可以為 Web 伺服器建立一個可存取網際網路的公有子網路,並將後端 Amazon RDS 資料庫執行個體置於不能存取網際網路的私有子網路中。如需 Amazon VPC 的詳細資訊,請參閱 Amazon Virtual Private Cloud 使用者指南

如果您的 AWS 帳戶在 2013 年 12 月 4 日之前建立,您可以在 Amazon Elastic Compute Cloud (EC2)-Classic 環境中執行 Amazon RDS。無論使用 EC2-Classic 或 EC2-VPC,Amazon RDS 的基本功能完全相同。不管資料庫執行個體是部署在 VPC 內部還是外部,Amazon RDS 都能管理備份、軟體修補、自動故障偵測、僅供讀取複本和恢復。如需 EC2-Classic 和 EC2-VPC 之間差異的詳細資訊,請參閱 EC2 文件

資料庫子網路群組是您希望為 VPC 中的 Amazon RDS 資料庫執行個體指定的子網路集合。每個子網路群組都應該至少有指定區域中每個可用區域的一個子網路。當您在 VPC 中建立資料庫執行個體時,需要選擇資料庫子網路群組。然後 Amazon RDS 使用該資料庫子網路群組和您的可用區域選擇子網路以及該子網路內的 IP 地址。Amazon RDS 會建立彈性網路界面,並以該 IP 地址將其與您的資料庫執行個體建立關聯。

請注意,我們強烈建議您使用 DNS 名稱來連線資料庫執行個體,因為基礎 IP 地址可能變更 (例如在容錯移轉時)。

對於多可用區部署,為一個區域的所有可用區域定義子網路將可讓 Amazon RDS 根據需要在其他可用區域建立新的備用執行個體。即使是單一可用區部署也需要這麼做,以便未來需要將它們轉換為異地同步備份部署。

如需完成此處理的逐步程序,請參閱《Amazon RDS 使用者指南》中的在 VPC 中建立資料庫執行個體

請參閱《Amazon RDS 使用者指南》的安全群組部分,了解控制資料庫執行個體存取的不同方法。

在 VPC 內部署的 EC2 執行個體可以存取相同 VPC 內部署的資料庫執行個體。如果這些 EC2 執行個體部署在具有關聯彈性 IP 的公有子網路中,您可以透過網際網路存取 EC2 執行個體。您可以透過 VPN 或在公有子網路中可啟動的堡壘主機,或使用 Amazon RDS 可公開存取的選項,從 VPC 外部的 EC2 執行個體存取 VPC 內部署的資料庫執行個體:

  • 若要使用堡壘主機,您需要使用 EC2 執行個體來設定公有子網路,作為 SSH 堡壘。該公有子網路必須具有網際網路閘道和路由規則,允許流量透過 SSH 主機定向,然後 SSH 主機必須將要求轉送至您的 Amazon RDS 資料庫執行個體的私有 IP 地址。
  • 只要將 Publicly Accessible 選項設定為 "yes" 以建立資料庫執行個體後,即可使用公有連線。使用公開存取時,預設就可以從您的 VPC 外部完整存取 VPC 內的資料庫執行個體。這表示您不需要設定 VPN 或堡壘主機來允許存取您的執行個體。 

您也可以設定一個 VPN 閘道,將公司網路擴展到 VPC,然後允許存取該 VPC 中的 Amazon RDS 資料庫執行個體。如需詳細資訊,請參閱 Amazon VPC 使用者指南

強烈建議您使用 DNS 名稱來連接資料庫執行個體,因為基礎 IP 地址可能變更 (例如在容錯移轉時)。

如果資料庫執行個體不在 VPC 中,您可使用 AWS 管理主控台輕鬆地將資料庫執行個體移至 VPC。如需詳細資訊,請參閱 Amazon RDS 使用者指南。您也可以拍攝 VPC 外部資料庫執行個體的快照,然後透過指定要使用的資料庫子網路群組,將其還原到 VPC。或者,您也可以執行「還原到時間點」操作。

不支援從 VPC 內部到外部遷移資料庫執行個體。基於安全考量,無法將 VPC 內資料庫執行個體的資料庫快照還原到 VPC 外部。同樣地,也無法執行「還原到時間點」功能。 

您需要負責在 VPC 中修改路由表聯網 ACL,以確保能夠從 VPC 中的用戶端執行個體存取您的資料庫執行個體。 針對多可用區部署,在容錯移轉之後,您的用戶端 EC2 執行個體和 Amazon RDS 資料庫執行個體可能位於不同的可用區域。您應該設定聯網 ACL 以確保能夠跨可用區域進行通訊。

現有的資料庫子網路群組可以進行更新,以便為現有的可用區域或建立資料庫執行個體時加入的新可用區域新增更多子網路。 如果從子網路群組移除特定的可用區域,則從現有資料庫子網路群組中移除子網路,可能導致在該可用區域中執行的執行個體無法使用。如需詳細資訊,請參閱 Amazon RDS 使用者指南

您需要有 AWS 開發人員帳戶才能開始使用 Amazon RDS。如果在註冊 Amazon RDS 之前沒有 AWS 開發人員帳戶,系統會在您開始註冊程序時提示您建立帳戶。主要使用者帳戶與 AWS 開發人員帳戶不同,前者僅在 Amazon RDS 環境內控制對資料庫執行個體的存取時使用。主要使用者帳戶是讓您可用來連接資料庫執行個體的原生資料庫使用者帳戶。 

您建立資料庫執行個體時,可以指定與每個資料庫執行個體相關聯的主要使用者名稱和密碼。建立資料庫執行個體之後,您可以使用主要使用者憑證連接到資料庫。之後,您也可以建立其他使用者帳戶,以便限制誰能存取您的資料庫執行個體。

對於 MySQL,主要使用者的預設權限包括:建立、退出、參考、事件、更改、刪除、建立索引、插入、選擇、更新、建立臨時表、鎖定表、觸發、建立檢視、顯示檢視、更改常式、建立常式、執行、觸發、建立使用者、處理、顯示資料庫、授與選項。

對於 Oracle,會授與主要使用者 "dba" 角色。主要使用者會繼承與該角色關聯的大部分權限。有關限制權限以及執行需要這些權限的管理任務時對應的替代項目清單,請參閱 Amazon RDS 使用者指南

對於 SQL Server,會授與建立資料庫的使用者 "db_owner" 角色。有關限制權限以及執行需要這些權限的管理任務時對應的替代項目清單,請參閱 Amazon RDS 使用者指南

否,一切都與您自己管理關聯式資料庫時使用的熟悉方式相同。

是。您必須特別設定安全群組開啟此功能,才能透過網際網路存取資料庫。您只能對特定 IP、IP 範圍或自己資料中心伺服器所對應的子網路授與存取權限。

是,所有 Amazon RDS 引擎均支援此選項。 Amazon RDS 會為每個資料庫執行個體產生一個 SSL/TLS 憑證。建立加密連線後,資料庫執行個體和應用程式之間傳輸的資料會在傳輸期間加密。雖然 SSL 有安全上的優點,但應注意 SSL/TLS 加密操作需使用大量運算資源,會增加資料庫連線的延遲現象。Amazon RDS 中的 SSL/TLS 支援是用於應用程式和資料庫執行個體之間的連線加密,不應用於資料庫執行個體本身的身分驗證作業。

有關與 Amazon RDS 建立加密連線的詳細資訊,請參閱 Amazon RDS 的 MySQL 使用者指南MariaDB 使用者指南PostgreSQL 使用者指南Oracle 使用者指南

Amazon RDS 支援所有資料庫引擎的靜態加密,可使用您透過 AWS Key Management Service (KMS) 管理的金鑰。在以 Amazon RDS 加密執行的資料庫執行個體上,於基礎儲存體中存放的靜態資料,以及其自動備份、僅供讀取複本和快照都會加密。加密和解密的處理完全透明。如需使用 KMS 搭配 Amazon RDS 的詳細資訊,請參閱 Amazon RDS 使用者指南

您也可以建立資料庫快照,然後建立該快照的副本並指定 KMS 加密金鑰,對之前未加密的資料庫執行個體或資料庫叢集新增加密。之後,您便可以從加密的快照恢復加密的資料庫執行個體或資料庫叢集。

Amazon RDS for Oracle 與 SQL Server 支援那些引擎的透明資料加密 (TDE) 技術。如需詳細資訊,請參閱 Amazon RDS 使用者指南中有關 OracleSQL Server 的章節。

不可以,Amazon RDS 上的 Oracle 執行個體無法與 AWS CloudHSM 整合。若要將透明資料加密 (TDE) 與 AWS CloudHSM 結合使用,需要在 Amazon EC2 上安裝 Oracle 資料庫。

您可以控制您的 AWS IAM 使用者和群組在 Amazon RDS 資源上可執行的動作。而方法是在套用到使用者和群組的 AWS IAM 政策中參考相關的 Amazon RDS 資源。可在 AWS IAM 政策中參考的 Amazon RDS 資源包括資料庫執行個體、資料庫快照、僅供讀取複本、資料庫安全群組、資料庫選項組、資料庫參數群組、事件訂閱以及資料庫子網路群組。 

此外,您還可以將這些資源加上標籤,以新增額外的中繼資料到您的資源。您可以使用標記來分類資源 (例如,「開發」資料庫執行個體、「生產」資料庫執行個體、「測試」資料庫執行個體等等),也可以撰寫 AWS IAM 政策,列出可在具有相同標籤的資源上執行的許可 (即動作)。如需詳細資訊,請參閱標記 Amazon RDS 資源

是。 AWS CloudTrail 是一項 Web 服務,用於記錄您帳戶的 AWS API 呼叫並為您提供日誌檔案。CloudTrail 產生的 AWS API 呼叫歷史記錄可用於安全分析、資源變更追蹤以及合規稽核。 

答:是,所有 Amazon RDS 資料庫引擎均符合 HIPAA,因此可用於建立 HIPAA 合規應用程式及存放醫療保健相關資訊,包括與 AWS 共同履行的商業夥伴協議 (BAA) 下的受保護醫療資訊 (PHI)。

如果您已經有履行的 BAA,則您不需要進行任何動作,就能透過 BAA 涵蓋的帳戶開始使用這些服務。如果您沒有與 AWS 供同履行的 BAA,或是對 AWS 上符合 HIPAA 規範的應用程式有任何其他疑問,請聯絡
您的客戶經理。

  • Imperva

    Imperva 資料保護取得來自 AWS 資料庫活動串流 (DAS) 事件 (以及各種其他 AWS 來源) 的摘要,並透過強大的專用分析來增加安全性前後關聯。Imperva 偵測惡意活動、逃避行為和濫用權限,這些可能是被入侵的帳戶和內部威脅元素的指標。其他優點包括互動式資料探索、豐富的自動化功能,以及透過使用手冊內建回應,可降低總體擁有成本並彌補大多數公司在遷移雲端時面臨的技能差距。」– Neault,Imperva 資料安全事業部資深副總裁兼總經理。

    若要進一步了解,請瀏覽 Imperva 資料安全頁面。 »
  • IBM

    IBM Security® Guardium® 資料保護有助於確保確保從資料庫到大數據、混合/雲端、檔案系統等各種環境中關鍵資料的安全性、隱私性和完整性。我們很高興能與 AWS 資料庫活動串流 (DAS) 整合。這種整合使我們的共同客戶能夠近乎即時地瞭解資料庫活動,使他們能夠快速識別威脅,並在內部部署和雲端環境中採取一致的策略性方法來保護資料。」 – Benazeer Daruwalla,IBM Security 資料保護產品組合產品經理。

    若要進一步了解,請瀏覽 IBM 安全性頁面。 »