本文檔介紹了資料安全和加密的常見問題。
設定叢集白名單常見問題
Q:如何指定伺服器只能訪問叢集中的某個節點?
A:使用自訂叢集地址訪問叢集,就只能訪問叢集中的特定節點。
Q:IP白名單最多支援填寫多少個IP地址?
A:IP白名單最多可以填寫1000個IP地址或地址組。安全性群組關聯的IP不受此限制。
Q:已添加ECS的IP地址到IP白名單中,為何還是無法訪問叢集?
A:請按以下步驟進行排查:
確認IP白名單是否正確。如果是通過內網地址訪問,需添加ECS的私網IP地址;如果是通過公網地址進行訪問,需添加ECS的公網IP地址。
確認網路類型是否一致。如果ECS執行個體的網路類型是傳統網路,可參見傳統網路遷移到專用網路方案將ECS執行個體遷移至PolarDB所在的專用網路。
說明如果該ECS還要訪問其他傳統網路內網資源,請勿操作,因為遷移後會無法訪問傳統網路。
或者通過ClassicLink打通傳統網路到專用網路的網路。
確認是否位於同一個VPC。如果不是,需要重新購買一個PolarDB,或者通過雲企業網來打通兩個VPC網路實現訪問。
Q:什麼原因會導致公網串連失敗?
A:公網串連失敗的原因如下所示:
如果是ECS通過公網地址進行訪問,請確認添加的是ECS的公網IP地址,而不是私網IP地址。
IP白名單設定為
0.0.0.0/0,然後嘗試訪問,如果能成功訪問,表示IP白名單中之前填寫的公網地址錯誤。請參見管理串連地址確定真正的公網地址。
Q:如何限制某個使用者只能從特定的IP地址訪問PolarDB?
A:您可以使用以下命令建立高許可權帳號,並使用高許可權帳號對普通帳號限定訪問IP。

Q:已設定叢集白名單,為什麼訪問不了資料庫?
A:檢查是否設定了白名單,如果允許全網訪問,則白名單中的IP地址設定為
0.0.0.0/0,且不能設定為0.0.0.0。如果設定了叢集白名單,請按照如下步驟校正設定的白名單是否正確。檢查設定的白名單格式。
如果將固定的IP地址設定為白名單,則不需要設定網段。如將IP地址
1.1.1.1設定為白名單,則不可以設定為1.1.1.1/2。如果將白名單設定為網段格式,則格式為
x.x.x.x/x。
如果在白名單中設定公網地址,則查詢當前環境的出口IP地址數量(多次重新整理看出口IP地址是否有變化),如果有多個,則需要將多個公網地址全部加入白名單中。如果已經將當前環境的所有公網地址全部加入白名單中,或在私網環境下訪問異常,則執行步驟3。
將白名單中的IP地址設定為0.0.0.0/0。
串連資料庫,執行
select user(),current_user();命令,並將查詢到的IP地址加入到白名單中。刪除白名單中的IP地址0.0.0.0/0。
Q:資料庫被攻擊了怎麼辦?
A:查看叢集白名單中的IP地址是否設定為0.0.0.0/0。
Q:為什麼無法通過ECS訪問PolarDB資料庫?
A:請按以下步驟進行排查:
檢查ECS和PolarDB是否位於同一地區。
檢查ECS和PolarDB的網路類型是否相同,如果ECS和PolarDB網路類型都是VPC,則必須位於同一個VPC網路。如果不在同一個VPC網路,則可以使用雲企業網實現同地區VPC互連(基礎版)。
檢查是否將ECS的IP地址添加到叢集白名單中,如果使用公網訪問PolarDB資料庫,則需要將ECS的公網IP地址添加到PolarDB叢集白名單中,添加白名單詳情請參見設定白名單(遷移至父級)。
設定SSL加密常見問題
Q:SSL認證到期後不更新會有什麼影響?會影響執行個體運行或資料安全嗎?
A:SSL認證到期後不更新,會導致使用加密串連的用戶端程式無法正常串連執行個體,不會影響執行個體運行或資料安全。
設定透明資料加密TDE常見問題
Q:開啟TDE後,常用資料庫工具(Navicat等)還能正常使用嗎?
A:可以正常使用。
Q:加密後查看資料為什麼還以明文顯示?
A:查詢資料時會解密並讀取到記憶體,所以是明文顯示。開啟TDE後儲存的資料是加密的。
Q:TDE加密是否需要更改?
A:空叢集開啟後將自動啟用加密功能,對於建立的表格,系統將預設進行加密。而對於現存的表格,您需要手動執行DDL操作以進行加密或解密。
安全管理常見問題
Q:什麼是TDE加密?
A:透明資料加密TDE(Transparent Data Encryption)可對資料檔案執行即時I/O加密和解密,資料在寫入磁碟之前進行加密,從磁碟讀入記憶體時進行解密。PolarDB MySQL版的TDE加密採用國際流行的AES演算法,密鑰長度為256位元。TDE加密使用的密鑰由Key Management Service(KMS)產生和管理,PolarDB MySQL版不提供加密所需的密鑰和認證。詳情請參見設定透明資料加密TDE。
Q:什麼是SSL加密?
A:SSL是Netscape公司所提出的安全保密協議,在瀏覽器和Web伺服器之間構造安全通道來進行資料轉送,採用RC4、MD5、RSA等密碼編譯演算法實現安全通訊。為了提高鏈路安全性,您可以啟用SSL(Secure Sockets Layer)加密,並安裝SSL CA認證到需要的應用服務。SSL在傳輸層對網路連接進行加密,能提升通訊資料的安全性和完整性,但會同時增加網路連接回應時間。詳情請參見設定SSL加密。
Q:TDE加密和SSL加密有什麼區別?
A:資料檔案加密需要開啟TDE,傳輸加密需要開啟SSL。
Q:TDE可以使用自訂密鑰嗎?
A:可以。
如果沒有自訂密鑰,需要先建立,在Key Management Service控制台建立密鑰並匯入內建的密鑰材料。詳情請參見建立密鑰。
使用已有自訂密鑰時,需要注意以下幾點:
禁用密鑰、設定密鑰刪除計劃或者刪除密鑰材料都會造成密鑰不可用。
撤銷授權關係後,重啟PolarDB叢集會導致PolarDB叢集不可用。
需要使用阿里雲帳號或者具有AliyunSTSAssumeRoleAccess許可權的帳號。
Q:如何管理TDE的自訂密鑰?
A:密鑰預設是系統內建,由KMS管理。使用者也可以自訂密鑰,自訂密鑰也可以在KMS中進行管理。詳情請參見設定透明資料加密TDE。
Q:如何配置SQL防火牆?
A:PolarDB的Proxy提供了SQL防火牆功能,該功能通過設定黑白名單規則來識別需要允許存取和攔截的SQL語句。具體操作請參見設定黑名單規則。
Q:已經開啟TDE,資料都能被加密了嗎?
A:開啟TDE後,您還需要登入資料庫對MySQL的表進行DDL操作才能進行資料加密或者解密,不同核心版本的加密和解密操作存在差異。詳情請參見設定透明資料加密TDE。