Laravel Passport客户证书授权

问题描述 投票:0回答:1

我使用Laravel Passport进行API身份验证。我已经设置了密码凭据授予,但它确实有效。现在我需要一个客户端凭证授予机器到机器的身份验证。 我用php artisan passport:client --client创建了一个新客户端。我试图用这个主体(使用Insomnia)向/ oauth / token发出请求:

{
    "client_id":3,
    "secret":"wJWuVVydkHIQQ6gC7xvd0eEKytIFAD3pa149e6TR",
    "grant_type":"client_credentials"
}

这是我从Passport得到的回复:

{
  "error": "invalid_client",
  "error_description": "Client authentication failed",
  "message": "Client authentication failed"
}

有谁知道为什么它是一个无效的客户? 这是我的客户端的oauth_clients表中的条目,导出为json:

{
    "id":"3",
    "user_id":null,
    "name":"ClientCredentials Grant Client",
    "secret":"wJWuVVydkHIQQ6gC7xvd0eEKytIFAD3pa149e6TR",
    "redirect":"",
    "personal_access_client":"0",
    "password_client":"0",
    "revoked":"0",
    "created_at":"2019-04-30 17:06:17",
    "updated_at":"2019-04-30 17:06:17"
}
laravel laravel-5 oauth-2.0 laravel-passport laravel-5.8
1个回答
1
投票

在你的请求中,secret param应该是client_secret而不是。

来自文档:https://laravel.com/docs/master/passport#client-credentials-grant-tokens

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.