2015-06-26 55 views
1

我們有一個客戶端應用程序,它使用數據庫來存儲數據。它通常對它們執行CRUD操作(SQL Server,Oracle,SQL Azure ...)。通常這個應用程序安裝在最終用戶的筆記本電腦上,並直接與數據庫進行通信(無中間件)。從客戶端應用程序訪問SQL Azure

我們以前使用SQL Azure測試過我們的應用程序,它運行良好。但是,我們看到的一個絆腳石是我們需要將自己鎖定到Azure防火牆以允許訪問。

我們的客戶通常會從具有可變IP地址的各個位置訪問Azure,是否有任何方式允許他們使用我們的應用安全地訪問Azure,而不會影響安全性或管理Azure防火牆的巨大管理負擔?

感謝,

鮑勃

回答

2

如果你想直接提供從您將需要添加的規則來打開你的防火牆連接到服務器或數據庫級別不同地點的數據庫訪問。也許,這不是安全方面的最佳解決方案,但是如果您想將數據庫暴露給您的應用程序,這是唯一的解決方案。

Azure SQL Server and Database firewall rules

一個更好的想法是在應用程序和數據庫之間創建一個暴露數據的API。每個客戶向您的API發出請求,並在那裏進行驗證。如果是註冊用戶,則API從數據庫獲取信息並將其公開給客戶。它可能需要更多的工作,但它會使您更容易控制安全並延伸或修改它。

如果您想了解有關Azure SQL防火牆的更多詳細信息,可以從MSDN:How to configure an Azure SQL database firewall查看本文。

+0

使用Azure VPN的情況如何?那麼你將有一個固定範圍的IP? – bemoore

+0

我知道您可以將檢查標記爲使數據庫可用於其他Azure服務,但我不知道它是否包含Azure VPN。你應該試試:) – jangelfdez

1

我還沒有解決這個問題,但我發現了另一種可能對別人有用的方法。

我已經在Azure Remote App上部署了我的應用程序,並將SQL Azure數據庫設置爲它的存儲引擎。

這樣做效果很好,並具有用戶管理的附加優勢,我們可以使用Microsoft登錄來控制對我們帳戶的訪問,從而消除對防火牆的需求。

+0

你提供了一個解決方案非常棒。只是想知道,每個用戶都會爲這種方式使用應用程序付費嗎?我想是這樣。 – NoChance

+0

這是正確的。 – bemoore

相關問題