AppAuth iOS 實作 2-實作解析OAuth2.0串接第三方登入
(AppAuth iOS, openid, OAuth)
AppAuth 原理請參考
實作解析OAuth2.0串接第三方取得帳號資訊
實作解析
OAuth2.0串接第三方登入
專案手機畫面中
按Auto登入,這時候會被導向 Authorization Server 的位址,透過SFSafariViewController開啟網頁,並驗證clientId是否正確
當ClientID正確時,建立Authorization Request(透過 HTTP Post 請求)含用來驗證應用程式身份的相關資訊(Client ID、Client Secret 等),建立一個OIDExternalUserAgentSession,準備做交換 Access Token步驟
註
authWithAutoCodeExchange: 取得token,並且自動更新AuthState
authNoCodeExchange: 只取得Authorization Code,需手動取Access Token
此時App畫面出現彈窗詢問使用者,按繼續後會導向Authorization Server 的位址」
*若點擊取消,或跳轉網頁取消登入的流程,authState則返回nil
顯示使用者身份驗證與授權,顯示了應用程式希望你授權同意它代為取得的相關資源訊息,可繼續完成登入google帳號動作
成功取得AccessToken,印出至下方textview
完成透過OAuth2.0登入第三方