I'm building an OIDC/OAuth server that will provide an SDK much like sign in with Google to be an IDP for mobile apps. We are wondering the risks of deviating from the protocol to simplify the flow.
The flow would be like this:
- OIDC Server is setup for company A.
- User opens app from company B, using company A OIDC SDK, and enters email
- Pin challenge sent to email
- Pin entered in app, screen shows consent prompt
- On ok, app gets ID + Auth token for user
The token accessible to the app is only scoped to a limited set of resources accessible to the app and can be revoked by the user at any time.
This cuts out a few steps from the normal PKCE+Auth code flow, and I’m having a hard time articulating why this may be worse for security (besides not following a widely accepted standard).