我有一個連接到Azure SQL Server的客戶端。在連接字符串中,我添加了Encrypt=True
以確保SQL Server和客戶端之間的數據是加密的。檢查加密的Azure SQL Server流量
現在我想檢查這是否真的是這種情況,我(和其他人)看不到SQL查詢。檢查此問題的最佳方法是什麼?我可以使用像Wireshark這樣的嗅探器來檢查端口1433(SQL端口)上的流量,但是這是做到這一點的最佳方式嗎?
我有一個連接到Azure SQL Server的客戶端。在連接字符串中,我添加了Encrypt=True
以確保SQL Server和客戶端之間的數據是加密的。檢查加密的Azure SQL Server流量
現在我想檢查這是否真的是這種情況,我(和其他人)看不到SQL查詢。檢查此問題的最佳方法是什麼?我可以使用像Wireshark這樣的嗅探器來檢查端口1433(SQL端口)上的流量,但是這是做到這一點的最佳方式嗎?
所有到SQL Azure的連接都是加密的 - 無論您是否使用Encrypt=True
字符串。即使您不這樣做,連接設置也不能降低安全級別,但會強制連接進行加密。但是,出於幾個原因,您確實希望使用該字符串。
只要包含Encrypt=True
字符串,連接就會要求客戶端驗證SQL Azure提供的證書,以確保該密鑰是Microsoft使用的密鑰。如果您不包含該字符串,則可能 - 不太可能,但可能 - 某人可能設置了錯誤的DNS,導致您的證書在其他地方被驗證。更可能的是,證書不會被驗證。如果證書無法驗證,則連接嘗試失敗。欲瞭解更多信息,請參閱link和link。
因此,當您使用工具捕獲數據包時,您都將獲得加密數據包。沒有人可以看到您的查詢。
謝謝你這個非常簡潔的答案! –