2011-10-31 32 views
7

我正在忙於做一些關於在移動應用程序中使用REST服務的研究,並希望得到一些見解。情景如下。保護Grails REST服務以便與移動應用程序一起使用

考慮爲用戶提供服務的Web應用程序。 Web應用程序也將成爲用戶的主要交互點。這將在Grails中完成,並由Spring Security進行保護。

現在,我們希望提供REST服務,以便用戶可以通過移動應用程序使用該服務。由於Grails對現有的Web應用程序RESTful提供了很好的支持,因此我們將使用內置的Grails支持。

我現在的問題是,什麼是保護REST服務接口的「最佳」方法,以便可以從移動應用程序(native-iOS,Andriod,WM7,BB)使用它。

交流的信息非常敏感,所以越安全越好。

感謝

回答

5

我們決定在三個分裂我們的Grails工程...

  • 領域模型的項目(這是所有的意見/控制器中的「管理」部分腳手架,所有服務,域)
  • Web的應用程序(這是主要的應用,控制器,視圖)
  • API-休息,應用程序(這是其他控制器)

model-domain-project是插入到web-app和api-app的插件,包含域模型,服務以及所有數據庫安全性,事務處理等。

Web-app是所有的html模板,視圖和控制器,在這裏我們使用的是Spring Security的屬性

我們使用grails-filters的api-rest-app,我們通過https使用基本授權,帶有過期令牌日期...

如果令牌的到期日期已到,您將不得不要求另一個帶有「請求令牌」的令牌,我們向您發送了第一個令牌...(它或多或少都是l IKE的oauth2)

要獲得兩個第一令牌,你必須確認通過與用戶/電話/密碼登錄該設備,然後您會收到通過短信一鍵,你將不得不在應用程序進入

不知道是不是最好的辦法,但它是我們做事的方式...

有時候,我們所使用的web應用程序的客戶端,並調用API-REST的應用...

+0

有趣的方法,我們正在考慮做幾乎相同的事情。你能分享一個實現過濾器的例子嗎? – lucke84

+0

嗨!,我不再在該項目上工作了,而且我沒有src。 http://awalkingcity.com/blog/2008/03/07/basic-authentication-and-grails/這裏有一些非常簡單的東西。希望它有幫助 – jjchiw

+0

我會看看它,歡呼! – lucke84

相關問題