может кто-нибудь объяснить шаги, которые я должен выполнить, чтобы реализовать SSO на веб-сайте php. например, пользователь регистрируется на сайте www.siteA.com, а когда он заходит на сайт www.siteB.com, он должен быть уже зарегистрирован (в моем случае). как siteB будет идентифицировать пользователя? должен ли пользователь снова войти в openid?
Взгляните на Simple Single Sign-On для PHP .
OpenID не совсем то же самое. Однократная регистрация – это вход в систему в одном месте и автоматическое аутентификация в других местах. OpenID – это делегирование аутентификации поставщику OpenID, чтобы вы могли эффективно входить в систему на нескольких сайтах с одним набором учетных данных.
Стоит отметить, что StackOverflow использует OpenID для связывания пользователя между разными сайтами. Это то, что вы имеете в виду? Потому что это не SSO, поскольку вам нужно отдельно регистрироваться на каждом сайте. Кроме того, некоторые поставщики OpenID (в частности, Google) не играют в мяч в том смысле, что они не отправляют один и тот же идентификатор на каждый сайт, поэтому у вас нет способа узнать, что токен на каждом сайте происходит из одного и того же набора учетных данных.
Вы можете использовать OpenID в качестве схемы проверки подлинности для единого входа, но это случайно.