2011-03-12 11 views
7

पर openid4java के साथ हाइब्रिड google openid + oauth के साथ हाइब्रिड google openid + oauth का विकास और परीक्षण करना, मैं अपने उपयोगकर्ताओं की पहचान करने और उनके Google कैलेंडर डेटा तक पहुंचने के लिए हाइब्रिड Google OpenID + OAuth प्रोटोकॉल को लागू करने का प्रयास कर रहा हूं।स्थानीयहोस्ट

https://www.google.com/accounts/o8/id 
?openid.ns=http://specs.openid.net/auth/2.0 
&openid.claimed_id=http://specs.openid.net/auth/2.0/identifier_select 
&openid.identity=http://specs.openid.net/auth/2.0/identifier_select 
&openid.return_to=http://www.example.com/checkauth 
&openid.realm=http://www.example.com 
&openid.assoc_handle=ABSmpf6DNMw 
&openid.mode=checkid_setup 
&openid.ns.oauth=http://specs.openid.net/extensions/oauth/1.0 
&openid.oauth.consumer=www.example.com 
&openid.oauth.scope=http://docs.google.com/feeds/+http://spreadsheets.google.com/feeds/ 

मैं openid4java उपयोग कर रहा हूँ:

नमूना अनुरोध तरह दिखता है। मैंने इस पोस्ट का पालन करने की कोशिश की: library-to-integrate-googles-oauth-openid-hybrid-in-java-web-app

लेकिन स्थानीयहोस्ट पर मेरे आवेदन का परीक्षण करते समय मुझे परेशानी आई।

आप ऊपर उल्लिखित नमूना अनुरोध में देख सकते हैं, वहाँ तीन विशेषताओं को बराबर होना चाहिए रहे हैं:

openid.realm 
openid.oauth.consumer 
openid.return_to 

मैं गूगल और प्राप्त उपभोक्ता कुंजी और रहस्य के साथ कुछ डोमेन पंजीकृत किया है। लेकिन जब मैं स्थानीय एप्लिकेशन (यानी openid.return_to = http://localhost:8080/ और openid.realm = http: //*.mydomain.com और openid.oauth.consumer = www.mydomain.com) पर अपना एप्लिकेशन विकसित और डिबग करना चाहता हूं और मेरी कुंजी की आपूर्ति करता हूं और गुप्त, openid4java RealmVerifier इस प्रमाणीकरण अनुरोध को खारिज कर देता है।

मैंने पूरी तरह से मान्य विकल्प (स्थानीयहोस्ट के बजाय मेरा पंजीकृत डोमेन) आपूर्ति करने की भी कोशिश की है - यह काम करना प्रतीत होता है, लेकिन पुनर्निर्देशन चला गया (मैं उस डोमेन में एप्लिकेशन को तैनात नहीं करना चाहता/चाहती हूं क्योंकि गायब प्रौद्योगिकियों के।)।

क्या आप सलाह दे सकते हैं कि स्थानीयहोस्ट पर इस तरह के एप्लिकेशन को कैसे विकसित किया जाए? क्या इस तरह के आवेदन का परीक्षण करने के लिए कोई चाल है?

किसी भी मदद के लिए धन्यवाद!

उत्तर

6

जोड़ने की कोशिश अपने your-machine.your-domain.com जो (लिनक्स पर) अपने देव बॉक्स पर/etc/hosts में 127.0.0.1 और उसके बाद आपके आवेदन को हिट करने के लिए अंक के रूप में http://your-machine.your-domain.com

(ध्यान दें: Google के साथ पंजीकृत डोमेन के साथ अपनी मशीन के नाम और अपने डोमेन के साथ अपनी मशीन को प्रतिस्थापित करें)

+0

आपके उत्तर के लिए धन्यवाद। हमने अंततः ऐपइंजिन पर सरल रीस्टफुल प्रमाणीकरण सेवा विकसित करके इस मुद्दे को हल किया, जिसे क्लाइंट द्वारा बुलाया गया था। (हमें सर्वर को वैसे भी चाहिए, इसलिए हमने इस तरह से चुना है।) –

+0

@ मार्टिन मैं आपके प्रश्न के बारे में सोचता हूं यह उत्तर स्वीकार्य है। –