2009-12-22 23 views
0

我即將開發的widget將使用構建在現有功能之上的web服務,並且要求該web服務應該知道請求來自哪裏。例如,消費者在註冊中可以提供關於它的博客的信息或者它將使用該小部件的網站。 現在我需要確定請求的來源(www.mysite.com或www.otherside.com),瞭解它是否被授權以及是否處理請求。 我必須承認,我不知道從哪裏開始或從哪裏進行研究。 如果有人可以說出一些亮點,我會更高興。我將使用java.thanks如何識別http重定向

+0

mmmmh bruv bas因爲我很無語! – 2009-12-22 14:20:04

回答

3

通常的做法是爲每個站點提供身份驗證令牌,並在發出請求時將其傳回給您。爲避免令牌被攔截和濫用,您只能通過HTTPS(而不僅僅是HTTP)提供Web服務。這是(例如)亞馬遜如何用他們的各種網絡服務來完成的。

+0

感謝您的答案!我想到了ssl上的令牌,但是如果由於某種原因某人拿到了他的牌,他可能會使用該服務而沒有我注意到它是正確的? – 2009-12-22 14:20:36

+0

@black sensei:對,這就是爲什麼它對於特定於個人最終用戶的令牌非常重要,並且他們(和您)有責任保證其安全和私密。這也是爲什麼SSL;如果您在網絡上清楚傳輸令牌,那麼所有投注都將關閉。 – 2009-12-22 15:04:42

1

該信息可以被添加到所述web服務請求在可選頭元件

<SOAP-ENV:Header> 
// add your auth element here 
</SOAP-ENV:Header> 

或可以添加包含該信息到請求的主體的元件。

<SOAP-ENV:Body> 
// add your auth element here 
</SOAP-ENV:Body> 

然後,您可以檢查授權元素,查看授權者是否有權使用該服務。

+0

感謝您的答案將嘗試建議和做更多的Web服務標題研究 – 2009-12-22 14:30:58