2010-01-02 2 views
0

Ok G'oogle의 페더레이션 된 로그인에 더 많은 행운을 보내고 있습니다. Google에서 다음 매개 변수를 다시 가져올 시점입니다. 문자열 사람들은 PARAMS 함께 다음 생성 :페더레이션 된 Google 로그인에 어떻게 서명합니까?

[openid_ns] => http://specs.openid.net/auth/2.0 
[openid_mode] => id_res 
[openid_op_endpoint] => https://www.google.com/accounts/o8/ud 
[openid_response_nonce] => 2010-01-02T14:58:22ZvP-t8tJXqGWaPw 
[openid_return_to] => http://localhost/blablabla/index.php?c=google 
[openid_assoc_handle] => AOQobUdTUUFVqQ9PeC9r19-rHOlEg_xvFmiIUahkmhNQ7Blrh14w2-eb 
[openid_signed] => op_endpoint,claimed_id,identity,return_to,response_nonce,assoc_handle,ns.ext1,ext1.mode,ext1.type.firstname,ext1.value.firstname,ext1.type.email,ext1.value.email,ext1.type.lastname,ext1.value.lastname 
[openid_sig] => tUZtUtVcvOfrodpPEx4bItcxVME= 
[openid_identity] => https://www.google.com/accounts/o8/id?id=xxxxxxxxxxxxxxxxxx 
[openid_claimed_id] => https://www.google.com/accounts/o8/id?id=xxxxxxxxxxxxxxxxxx 
[openid_ns_ext1] => http://openid.net/srv/ax/1.0 
[openid_ext1_mode] => fetch_response 
[openid_ext1_type_firstname] => http://axschema.org/namePerson/first 
[openid_ext1_value_firstname] => myName 
[openid_ext1_type_email] => http://axschema.org/contact/email 
[openid_ext1_value_email] => [email protected] 
[openid_ext1_type_lastname] => http://axschema.org/namePerson/last 
[openid_ext1_value_lastname] => MySurname 

내가 지금해야 할 유일한 것은을 서명하고 '나는 이해한다면이 제대로 구글은 나에게 [openid_signed]

예와 단서를주고있다 strin 연결 한 문자열 중 해시는 동일해야 [openid_sig] => tUZtUtVcvOfrodpPEx4bItcxVME =

그러나 확실 임 공식 서명 생성에 더이 - 사람이 내가 구글의 문서 anyw에서 그것을 찾을 수 없습니다 때문에 무엇인지 이리?

답변

0

JanRain의 RPX-Now를 동일하게 사용할 수 있습니다. 그것은 훨씬 더 간단하고 거의 모든 OpenID 공급자를 허용합니다. https://rpxnow.com/

+0

감사합니다.하지만 janRain은 프로젝트의 범위에 맞지 않습니다. (기본적으로 나는 그것을 좋아하지 않습니다.) 그래서 저는 현재 100 줄 내외의 코드를 작성하고 있습니다. 프로젝트와 나를 위해. –

0

Google 페더레이션 된 로그인은 몇 가지 사소한 변경 사항이 있지만 OpenID입니다. Google 페더레이션 된 로그인의 서명 프로토콜에서 문서를 찾으려면 how to generate a signaturehow to verify the signature에 대한 정보를 찾아보십시오.

JanRain 코드를 사용하지 않으려는 경우에도 코드를보고 이러한 질문에 대한 답변을 얻을 수 있습니다. 예를 들어 verify은 1320 행의 /Auth/OpenID/Server.php으로 서명 확인을위한 코드가 시작되는 곳인 것으로 보입니다.