介紹過 OAuth 四種 grants 類型以及 OpenID (OIDC) 三種 flows,今天就讓我們來看看如何挑選合適的 grant 和 flow 來使用
這種情況下,其實也就不需要 OIDC flow 來取得使用者的驗證資訊,Client
也不需要取得使用者的授權,因此採用 OAuth Client Credential Grant 即可
有安全的後端可以處理 authorization code 以及 PKCE 流程,就可以選擇最安全的 OAuth Authorization Code Grant 以及 OIDC Authorization Code Flow
這裡也可以採用 OAuth Authorization Code Grant 以及 OIDC Authorization Code Flow
如果 Client
是自己家的服務,那麼就比較不怕經手自己家使用者的 credential(至少會比較負責一點),因此可以 Resource Owner Password Credential Grant。另一方面,這時候也就不需要 OIDC flow 來另外取得使用者的驗證資訊。
最後一種,終端使用者使用第三方的純前端 Client
,因此沒有安全的後端可以處理 authorization code 與 PKCE 流程,另外在這種情況下,也不會放心將使用者的 credential 讓第三方 Client
經手,因此就會採取 OAuth Implicit Grant 與 OIDC Implicit Flow