Monday, 15 March 2010

Grails oauth plugin not setting Authentication header when requesting Token(/oauth/token) -


मैं उपयोग करते समय त्रुटि प्राप्त करता हूं

{"error": "unauthorized", "Error_description": "इस संसाधन को एक्सेस करने के लिए पूर्ण प्रमाणीकरण की आवश्यकता है"}

टोकन अनुरोध करते समय प्रमाणीकरण शीर्षलेख नहीं मिला था

मेरा कॉन्फ़िगरेशन दिखाया गया है // $:

  OAuth {{प्रदाताओं पासपोर्ट {एपीआई = com.company.package.security.passport.api.PassportApi कुंजी = 'MyProject' गुप्त = 'गुप्त' authorizationUrl = "http नीचे {providerURL} / OAuth / अधिकृत करें "tokenEndpointUrl =" http: // $ {providerURL} / OAuth / टोकन "कॉलबैक =" http: // {applicationContextPath} / परियोजना / OAuth / पासपोर्ट / कॉलबैक "successUri = '/ लॉगिन / passportSuccess 'विफलता यूरी =' / लॉगिन / पासपोर्टफ़ाइल्यर्न 'हस्ताक्षर टाइप = org.scribe.model.SignatureType.Header scope =' प्रोफ़ाइल '}} डिबग = सच connectTimeout = 5000 receiveTimeout = 5000}  

मैं भी नीचे

दिखाया गया है एक कस्टम providerapi
  सार्वजनिक वर्ग PassportApi फैली DefaultApi20 उपयोग कर रहा हूँ {निजी स्थिर अंतिम स्ट्रिंग AUTHORIZE_URL_WITH_STATE = "% s? client_id =% s & amp; client_secret =% s & amp; redirect_uri =% s & amp; राज्य =% s & amp; response_type = कोड में & amp; grant_type = authorization_code ", निजी स्थिर अंतिम स्ट्रिंग SCOPED_AUTHORIZE_URL_WITH_STATE = AUTHORIZE_URL_WITH_STATE +" & amp; गुंजाइश =% s "; @Override सार्वजनिक स्ट्रिंग GetAccessTokenEndpoint () {गुण appConfig = धारकों .getConfig ()। ToProperties (); स्ट्रिंग टोकनEndpointUrl = appConfig.getProperty ("oauth.providers.passport.tokenEndpointUrl") + "" अगर (tokenEndpointUrl! = नल) {return tokenEndpointUrl;} ।} @Override सार्वजनिक स्ट्रिंग getAuthorizationUrl (OAuthConfig passportOAuthConfig) {गुण appConfig = Holders.getConfig () toProperties;: और {नई RuntimeException फेंक ( "oauth.providers.passport.tokenEndpointUrl पासपोर्ट API टोकन यूआरएल config संपत्ति की जांच करें कॉन्फ़िगर नहीं")} (); स्ट्रिंग प्राधिकरणयूआरएल = ऐप कॉन्फ़िग.टेटप्रॉपर्टी ("oauth.providers.passport.authorizationUrl"); अगर (प्राधिकरण यूआरएल! = नल) {यदि (पासपोर्टओअट HConfig.has स्कोप ()) {वापसी String.format (SCOPED_AUTHORIZE_URL_WITH_STATE, authorizationUrl, passportOAuthConfig.getApiKey (), पासपोर्टओअथ कन्फिग.गेट एपीआईसिरेक्ट (), OAuthEncoder.encode (passportOAuthConfig.getCallback ()), OAuthEncoder.encode ("Yithe"), passportOAuthConfig। getScope ()); } Else {वापसी String.Format (AUTHORIZE_URL_WITH_STATE, authorizationUrl, passportOAuthConfig.getApiKey (), OAuthEncoder.encode (passportOAuthConfig.getCallback ()), OAuthEncoder.encode ( "Yithe")); }} और {नया रनटाइम एक्सपैशन ("पासपोर्ट एपीआई प्राधिकरण यूआरएल कॉन्फ़िगर नहीं है कृपया कॉन्फिग प्रॉपर्टी चेक करें: oauth.providers.passport.authorizationUrl"); साथ ही, दूसरा / oauth / token अनुरोध बनाने का सही तरीका क्या है क्योंकि अगर मैं सामान्य पोस्टस्टेशन सेटिंग प्राधिकरण हैडर का उपयोग करता हूं: बेसिक  client_id: client_secret  (बेस 64 का उपयोग करके एन्कोडेड), यह काम करता है 


No comments:

Post a Comment