What is the purpose of the implicit grant authorization type in OAuth 2?

Here are my thoughts:

The purpose of auth code + token in authorization code flow is that token and client secret will never be exposed to resource owner because they travel server-to-server.

On the other side, implicit grant flow is for clients that are implemented entirely using javascript and are running in resource owner’s browser. You do not need any server side code to use this flow. Then, if everything happens in resource owner’s browser it makes no sense to issue auth code & client secret anymore, because token & client secret will still be shared with resource owner. Including auth code & client secret just makes the flow more complex without adding any more real security.

So the answer on “what has been gained?” is “simplicity”.

Leave a Comment