我正在嘗試使用OAuth2 grant_type = password作爲令牌請求,如here與WSO2 API Manager一樣。使用下面的curl命令。wso2 API管理器「不支持的客戶端身份驗證方法!」
curl -k -d "grant_type=password&username=<uname>&password=<pwd>&scope=PRODUCTION" http://localhost:8280/token
從這個請求的響應是:
{"error":"invalid_request","error_description":"Missing parameters: client_id"}
接下來,我提供我的消費鍵和捲曲的要求變爲:
curl -k -d "grant_type=password&username=<uname>&password=<pwd>&scope=PRODUCTION&client_id=<myconsumerkey>" http://localhost:8280/token
然而,反應是莫名其妙:
{"error":"unsupported_client_authentication_method","error_description":"Unsupported Client Authentication Method!"}
所以,我的問題是API Man是否不支持這個grant_type?或者,我在這裏做錯了什麼嗎?我應該看看這個授權類型的身份服務器嗎?
乾杯
謝謝@Asela。在這種情況下,我沒有客戶端密鑰或客戶端密鑰。因此,我試圖使用資源所有者密碼授予來檢索令牌。我想我看到的唯一選擇是使用store api登錄,然後檢索密鑰和祕密,然後生成對api標記的請求。有什麼想法嗎? –
通常,當您使用資源所有者密碼授權類型時,您還需要認證客戶端http://tools.ietf.org/html/rfc6749#section-4.3.2基本上,因爲您是應用程序開發人員,您必須註冊應用程序並從API存儲接收客戶端憑證。 – Asela