2010-04-30 3 views
1

Stack Overflow에서 찾을 수있는 것처럼 PHP로 OpenID 로그인을 만들고 싶습니다.Stack Overflow와 같은 OpenID

나는 이것에 대해 많은 질문이 있다는 것을 알고 있지만, 내 것은 다릅니다.

정확하게 이해한다면 모든 OpenID는 고유 한 URL로 정의됩니다. 하지만 : Stack Overflow 로그인 페이지에서 Google 버튼을 누르면 텍스트 필드에 하나의 일반 URL이 삽입됩니다. 이것은 OpenID 서버에 대한 직접적인 URL입니까? 그렇다면 URL을 this class으로 전달하려면 어떻게해야합니까? 오픈 ID 사양에서

+1

하나의 Google URL을 'OP 식별자'라고하며 예, Google과의 로그인에 사용되는 식별자입니다. PHP 작동 방식에 관해서는 단서가 없습니다. :) –

답변

0

(section 7.3.1)가 오픈 ID 인증 요청을 만드는 목적

을 말한다 값은 "http://specs.openid.net/auth/2.0/identifier_select"는 주장 식별자 및 영업 영업-지역 식별자 모두로 사용한다 식별자가 입력되었습니다.

은 이제 어떻게이 기본적으로 의미하는 대신 "사용자 특정 오픈 ID URL"을 사용하는 당신은 일반적인 URL을 사용하여 단순히 ID 공급자가 사용자의 실제 오픈 ID URL이 무엇 반환에 제공하도록 지정할 수 있다는 것입니다 .

이것은 OpenID 2.0의 기능입니다. 거기 도서관의 많은 아직 오픈 ID 1.x에서

HTH 있습니다

0

당신은 구글이 SimpleOpenID을 사용하여 인증 할 수 없습니다. 이 라이브러리는 OpenID 1.1 만 지원하며 Google은 OpenID 2.0 만 지원합니다.

0

Google에서 SimpleOpenID가 작동하지 않는다는 다른 답변으로 이동하십시오. 나는 최근에 프로젝트에 http://gitorious.org/lightopenid을 사용했고 작동합니다 (그리고 구글에 대한 예제가 포함되어 있습니다).

라이브러리는 php5에서 정상적인 오류/경고를 사용하여 정상적으로 작동합니다.

0

OpenID 프로세스는 여러 단계로 구성됩니다. 첫 번째는 브라우저를 OpenID 제공 업체로 리디렉션하면 사용자가 다시 페이지로 돌아오고 그에 대한 정보를 얻습니다.

반품 정보 중에서 그의 OpenID가 제공됩니다. 이것은 사용자가 찾고있는 OpenID가 아니라 사용자가 텍스트 필드에 쓴 OpenID입니다.

이 "OpenID"는 ID 제공 업체를 찾는 데 사용됩니다. 이것은 단순히 yahoo.com을 OpenID 상자에 넣고 야후로 로그인 할 수있는 이유입니다.