我有一個通過HTTPS進行通信的RESTful web服務。我想阻止其他開發人員調用API。 API位於一個數據庫前面,該數據庫從多個數據源中提取數據,所以我想控制誰使用它。使用一個登錄頁面是不是一種選擇RESTful API - 控制對API的訪問(沒有登錄頁面)
我在春天的安全性和OAuth但是看着既不提供正是我需要的。我不想在Web服務前面放置登錄頁面,而只是想在未知應用程序試圖呼叫我的服務時返回400或401 http代碼。
任何人都可以推薦我如何實現這個?
成果感謝在這個問題上的反饋。最後,我使用了一個名爲mod_authz_host的Apache模塊,它允許您將HTTP模式限制到特定的域。雖然有可能欺騙域名,但這是針對內部應用的,因此安全性要求更加寬鬆。我有下面包括一個片段與如何使用Apache模塊
包括虛擬主機
<Location /yourProtectedServices/ws>
Order deny,allow
Deny from all
Allow from trusteddomain.com
</Location>
我很好奇你是如何打開你的API來允許某人逆向工程你的應用程序? –
我試圖阻止其他開發人員使用這些API調用公開的內容。 Api位於一個數據庫前面,該數據庫從多個數據源中提取數據,我寧願控制誰可以獲取數據 – cduggan
好吧我在想,但這不是對您的應用程序進行逆向工程。我會換個話。 –