我正在使用Rails爲移動應用程序編寫一個API,OAuth似乎是處理用戶授權的標準方式。沒有網絡視圖的門衛
如果我正確理解門衛文檔,它需要用戶在授予移動應用訪問權限之前先登錄網站。
這個問題可能是真的沒有任何網站(它可能在未來,但現在它只是API)。我想用戶創建/簽入等在ios應用程序中處理。
這讓我想知道OAuth是否是正確的解決方案?
我正在使用Rails爲移動應用程序編寫一個API,OAuth似乎是處理用戶授權的標準方式。沒有網絡視圖的門衛
如果我正確理解門衛文檔,它需要用戶在授予移動應用訪問權限之前先登錄網站。
這個問題可能是真的沒有任何網站(它可能在未來,但現在它只是API)。我想用戶創建/簽入等在ios應用程序中處理。
這讓我想知道OAuth是否是正確的解決方案?
根據rfc6749的第4.3節,OAuth「資源所有者密碼憑證授予」將授予授權令牌和給定用戶名和密碼的刷新令牌(可選)。因此,移動應用程序不必存儲用戶名和密碼以獲得授權訪問。它變得像使用令牌和刷新令牌的長時間運行的會話。 OAuthClientSetup一個針對守門員API運行的iOS示例。
因此,有OAuth方法獲得授權,而無需使用網站登錄認證和訪問授權。
剩下的是如何從您的移動應用程序註冊新用戶。同意這看起來不被OAuth覆蓋。 OmniAuth將讓您註冊由第三方站點授權的用戶。您允許用戶成爲Twitter或FaceBook,StackOverflow或GitHub或其他地方的用戶。也許這會有所幫助。
謝謝你的回答! – chumakoff
與門衛non-web oauth流相關的問題http://stackoverflow.com/questions/25203229/how-to-do-application-only-authentication-in-doorkeeper-oauth2?rq=1 –
OAuth是相關的,但不是整個故事。您需要一些通過移動設備創建/註冊用戶的其他受保護API。我很感興趣如何解決這個問題。創建用戶的API非常容易受到濫用。 –