Образец базы данных сервера авторизации OAuth2 просто содержит несколько примеров записей клиента, чтобы образец клиента мог делать запросы.Он имеет таблицу пользователей, которая автоматически заполняется каждым пользователем, который успешно входит в систему, используя свой OpenID.Таким образом, на ваш вопрос, касающийся «формата OpenID», подойдет любой действительный идентификатор OpenID 1.1 / 2.0.
Пример сервера авторизации OAuth2 в этом отношении играет роль проверяющей стороны OpenID, но его функции OpenID не являются основной частью этого примера - существуют другие примеры сайтов OpenID RP, которые демонстрируют больше функциональности в этом отношении.Но поскольку сервер аутентификации OAuth2 и OpenID RP связаны таким образом, поток таков:
- Пользователь посещает сайт клиента OAuth2 и указывает клиенту, что он может запросить доступ к данным пользователя на ресурсесервер.
- Клиент перенаправляет пользователя на сервер авторизации, чтобы пользователь мог предоставить разрешение.
- Сервер авторизации предлагает пользователю войти в систему, если он еще не вошел в систему.
- Пользователь входитOpenID
- Сервер авторизации перенаправляет пользователя к своему провайдеру OpenID для входа в систему с использованием некоторых учетных данных (имя пользователя / пароль, инфокарта и т. Д.)
- Поставщик OpenID перенаправляет пользователя обратно на сервер авторизации.
- Образец сервера авторизации затем спрашивает пользователя "хотите ли вы поделиться ресурсом [x] с клиентом [y]?"Пользователь подтверждает.
- Сервер авторизации записывает, что пользователь авторизовал клиента [y] для доступа к [x], чтобы будущие запросы от этого клиента на этот ресурс могли автоматически подтверждаться без вмешательства пользователя.
- Сервер авторизации перенаправляет пользователя обратно клиенту с предоставлением авторизации.
- Клиент получает грант вместе с перенаправлением пользователя и использует прямой HTTP-запрос к серверу авторизации для обмена этим предоставлением для маркера доступа (и, возможно, токен обновления).
- Затем клиент включает токен доступа в HTTP-запросы к серверу ресурсов для доступа к личным данным пользователя.
Надеюсь, это поможет.