這似乎是一個重複發生的問題,因爲我似乎在過去幾年中對移動應用程序感興趣。除了Web用戶之外,我想驗證和授權移動用戶。我需要使這一切足夠無縫,以便用戶可以輕鬆擁有網絡帳戶而不會中斷他們的數據。我希望解決方案成爲主題的架構,而不是針對任何語言/框架。移動和Web用戶身份驗證/授權體系結構
要求/假設
- 移動用戶必須能夠使用本地應用程序,而不登錄,包括對促進內容(標記收藏,上傳照片等)。
- 即使沒有指定帳戶憑證,移動用戶也應該安全且唯一地對Web服務進行身份驗證。
- 移動用戶可能有多個設備,這些設備將彼此不知道。
- 移動用戶應該能夠註冊/登錄,它應該將任何內容放入該賬戶的所有權。對於隨後登錄的每個帳戶應該發生此「同步」。
- 帳戶是在移動設備還是網絡上創建應該沒有關係。
架構考慮
- NO襯衫,沒有鞋,NO LOGIN =沒有貢獻。需要登錄才能提供任何形式的內容。這可以防止需要將設備帳戶與主帳戶「同步」。只需要一個用戶名/密碼+令牌以便設備登錄。服務器對象:用戶,角色
- 多設備自我認證。服務器與設備協商並交付設備存儲的證書。每個設備都會進行自我認證並與匿名賬戶關聯,直到註冊/登錄發生。如果發生註冊,匿名賬戶將轉換爲已知賬戶。如果登錄發生,來自匿名賬戶的內容會被轉移到已知的賬戶,然後被丟棄。丟失自我認證詳細信息的設備將獲得新的認證詳細信息,而之前的匿名帳戶將被放棄(然後希望稍後會丟棄),並且因爲它從未轉換爲已知帳戶而不可恢復。服務器對象:用戶,角色,設備
您認爲什麼是一個好的解決方案?其中之一還是其他?
我真的很喜歡你的思路。我不確定它是否真正說明了解決這個問題的常用技術,但我非常感謝您的迴應。 (請注意,我在2010年閱讀了此回覆,但現在我不得不通知您,因爲它已被讚賞和有用) – 2012-03-29 07:51:10