2017-03-29 48 views
0

在API Manager 2.0.0中,我爲oauth2配置了一個聯合身份驗證器,使用Google身份驗證進行設置,併爲應用程序配置服務提供者使用這個聯合身份驗證器。然後,我按照教程[1]爲了使用谷歌認證這個應用程序。從Store,Google Federated Authenticator生成用戶Oauth2令牌 - WSO2 AM 2.0.0

當我嘗試生成利用代碼或隱批類型的商店門戶的鑰匙,服務器給我下面的錯誤:

Error occurred while calling token endpoint: HTTP error code : 400

,並在日誌中顯示:

{"error_description":"Provided Authorization Grant is invalid","error":"invalid_grant"}


任何人都可以幫助我解決這個問題嗎?如何配置聯合身份驗證器以使用te API /應用程序?

謝謝。

Here你可以看到APIM的調試日誌。

[1] http://xacmlinfo.org/2015/04/28/federated-authentication-for-granting-oauth2-access-token-with-wso2-api-manager-apim/

+0

您可以附加在發佈期間創建的wso2 apim日誌嗎? – nwick

+0

嗨nwick,我已經添加日誌到原來的問題,謝謝。 – Garrido

+0

當獲取oauth令牌時'提供的授權許可無效'時,爲'org.wso2.carbon.identity.oauth2'包啓用調試日誌。你可以得到更具體的根本原因。 – lakshman

回答

0

也許你的服務提供商不默認允許隱式和代碼補助。

Service Providers - >List上將此日誌更改爲碳。選擇你的SP,然後點擊Edit

在編輯頁面中,轉到Inbound Authentication ConfigurationOAuth/OpenID Connect Configuration。您的應用程序密鑰和祕密應在此處列出,即您在商店中生成的密鑰和祕密。

點擊edit,這將帶來所有的OAuth授權。可能代碼和隱含未選中。檢查它們並點擊Update,你現在應該能夠使用兩種授權生成令牌。

+0

感謝您的回答丹尼爾,但它不起作用。我嘗試啓用來自商店門戶和Carbon門戶的代碼或隱式宏觀類型,但我得到相同的錯誤。 我已經完成了外部測試webapp [遊樂場](https://docs.wso2.com/display/IS530/OAuth+2.0+with+WSO2+Playground),但不是從商店門戶。看起來商店門戶allways發送client_credentials宏類型而不是代碼或隱式。 – Garrido