Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Registration an end-user by openid connect specification

I can't found specification for registration the end-user in openid connect.

Maybe, you know how do it?

I have some idea, but I looking for official answer.

like image 300
Mediator Avatar asked Oct 20 '22 05:10

Mediator


1 Answers

That part is implicitly included when they talk about Authentication of the End-User.

When your provider attempts to Authenticate the End-User (by displaying a login form), then if the user has no account you can:

  • Show the registration form in the same view as the login.
  • Put a link somewhere in the view (ex. "Create account").

In both cases, you'll have a "next" or a "redirect_to" (call it whatever you like) that will have the OpenID Authentication Request URL-safe encoded (or an OAuth2 Authorization Request).

See an example:

# Auth Request from some client.
/openid/authorize?client_id=123&redirect_uri=http%3A%2F%2Fexample.com%2F&response_type=code&scope=openid%20profile%20email&state=abcdefgh

# Because user is not logged, you attempts to Authenticate it.
/login?next=%2Fopenid%2Fauthorize%3Fclient_id%3D123%26redirect_uri%3Dhttp%253A%252F%252Fexample.com%252F%26response_type%3Dcode%26scope%3Dopenid%2520profile%2520email%26state%3Dabcdefgh

# Because user is not registered. You provide a link like this.
/register?next=%2Fopenid%2Fauthorize%3Fclient_id%3D123%26redirect_uri%3Dhttp%253A%252F%252Fexample.com%252F%26response_type%3Dcode%26scope%3Dopenid%2520profile%2520email%26state%3Dabcdefgh

# After registration. The flow will continue.

Hope you understand it. Greetings.

like image 97
juanifioren Avatar answered Oct 29 '22 14:10

juanifioren