我正在探索銀行移動HTML5應用程序的可能性。它將通過RESTful API與主服務器聯繫。很多時候我聽說人們在移動應用程序中使用OAuth來訪問API。例如,SpringSource的html5expense演示應用程序。爲什麼在將使用REST的移動HTML5應用程序中使用OAuth?
所以我不完全明白爲什麼要麻煩?用戶是否只需以標準方式登錄,就可以接收帶有會話ID(或Play框架,會話數據)的cookie,當應用向REST發送請求時,該cookie將用於標識用戶?
我正在探索銀行移動HTML5應用程序的可能性。它將通過RESTful API與主服務器聯繫。很多時候我聽說人們在移動應用程序中使用OAuth來訪問API。例如,SpringSource的html5expense演示應用程序。爲什麼在將使用REST的移動HTML5應用程序中使用OAuth?
所以我不完全明白爲什麼要麻煩?用戶是否只需以標準方式登錄,就可以接收帶有會話ID(或Play框架,會話數據)的cookie,當應用向REST發送請求時,該cookie將用於標識用戶?
如果你不打算要你的API發佈到第三方開發者;真的沒有理由打擾OAuth。
的OAuth存在的最大原因是爲了讓你的API集成無需用戶不得不放棄了自己的用戶名和密碼給第三方。其他原因是它可以爲第三方訪問資源或範圍訪問設置時間框架。
的Oauth通常是很多比大多數基本身份驗證,或途徑「的標準方式登錄」(和OAuth正在成爲一個標準的越來越多)更安全。
當您通過大多數「標準」方式登錄時,用戶將他的用戶名密碼&輸入到應用程序中,然後通常將用戶名/密碼存儲在本地或轉移到應用程序,然後可能被中繼到例如提供API的「主服務器」。因此,用戶必須輸入他非常祕密的登錄信息(例如,用於銀行?),到客戶端,應用程序或系統,他不知道或不信任......
使用OAuth,用戶將被引導到一個登錄該API所有者的頁面例如他的銀行,他登錄到他知道的安全登錄頁面,並被要求他同意應用程序「xyz」想要訪問他的數據....已經請求訪問的應用程序隨後被給予令牌,它可以訪問API而無需知道用戶名和密碼。這樣用戶名/密碼只能在用戶信任的位置輸入一次。此外,用戶可以稍後登錄並接受頁面(銀行應用程序或管理前端),並刪除給定的API訪問權限,從而阻止應用程序訪問其信息,而不必改變他的密碼。
超越的是實際安全,使用類似OAuth的,對於一個銀行應用程序的影響也有意義的,因爲如果應用現代化的安全技術將帶給人們更多信心。它使它感覺更安全。