问题标签 [laravel-passport]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - 如何通过护照为 AngularJS 和 Laravel 应用程序创建基于令牌的身份验证(oauth2)
我创建了一个使用 laravel 默认注册(auth)的网络应用程序,我已经从 taylor 教程测试了护照 oauth2 客户端访问令牌。我的网络应用程序使用 angular js 作为 UI 和 laravel 作为后端,所以我需要创建用户,当创建用户请求从 angular 发送时,然后创建一个全局访问令牌以在我对 angular 的响应中给出它,然后在所有以后的请求中我使用它来验证请求。
实际上我想为我的网络应用程序实现 oauth2 身份验证,但到目前为止我已经搜索了很多,但我找不到任何有用的分步教程。
任何人都可以帮助我吗?
仅供参考:我正在使用启用护照的 laravel 5.3 和前端的 angular js 1.5。
php - Laravel 5.3 个人访问令牌 500
我正在尝试使用 Passport 设置我的自定义 API(好吧,我已经完成了一半,只需要构建我的身份验证)。每当我尝试从我的 Passport 仪表板(/home 路由)创建个人访问令牌时,我都会收到“哎呀,出了点问题!” 错误。
这来自我的 Vue 组件(PersonalAccessTokens.vue),我的控制台在 Post 路由中记录了一个 500 内部服务器错误,用于存储个人访问令牌......
\Laravel\Passport\Http\Controllers\PersonalAccessTokenController@store 是负责的方法,但我似乎找不到不寻常的东西,因为我完全按照关于 Passport 的 Laracasts 视频
还有其他人遇到这个问题吗?
蒂亚!
laravel-5.3 - laravel 护照自定义密码栏
如何使用 Laravel 的 Passport 包来验证不同的密码列。
如果我想从不同的“用户名”列进行身份验证,可以使用以下代码完成:
它将以 Id 作为列。如果我想使用不同的“密码”列怎么办。表中具有不同名称的列,例如“uid_token”。
php - 第一方应用程序的 Laravel Passport
我希望能够使用 Laravel Passport 来使用我的 API。我只希望第一方应用程序使用它(我的网络应用程序和我的移动应用程序)。
我不希望用户登录以访问 Web 上的 API 或移动应用程序。
我在中间件下放置了一些路由,auth_client
并通过了access_token
我获得的client_credentials
授权。
我放置的其他路线auth:api
,我传递了一个通过password
授权获得的令牌。
问题在于,我无法使用auth_client
我的网络应用程序下的路线。
我几乎想要一种方法来保护我的 API 免受第三方的侵害,同时仍然能够在我的 Web 应用程序和我的移动应用程序中使用它。
php - laravel 护照撤销和修剪事件监听器没有做任何事情
我已将这两个事件侦听器添加到我的:EventServiceProvider
在我的 AuthServiceProvider 中,我有:
我希望护照撤销所有其他用户访问令牌,然后在它们被撤销时修剪它们。但是什么也没发生,每次我向邮递员请求访问令牌时,我都会得到一个新的访问令牌,而数据库中有几个访问令牌。
api - 护照密码授予令牌刷新
我执行此问题中描述的步骤:
从 api 的路线来看,一切正常,我可以注册新用户,读取他们的数据等。
然后在 AuthServiceProvider 上添加这个命令
Passport::tokensExpireIn(Carbon::now()->addMinute(2)); Passport::refreshTokensExpireIn(Carbon::now()->addDays(1));
我在 url {{url}}/oauth/token中登录邮递员
正文:application/x-www-form-urlencoded
{
grant_type : 'password'
client_id : {{用户注册的电子邮件}}
client_secret : {{从移动应用程序生成客户端密码}}
用户名 : {{email with用户注册}}
密码:{{用户输入的密码}}
范围:''
}
响应成功
{
“token_type”:“Bearer”
“expires_in”:120
“access_token”:{{access_token}}
“refresh_token”:{{refresh_token}}
}
我尝试将令牌生命周期刷新到一天发送到{{url}}/oauth/token
参考 => https://laravel.com/docs/5.3/passport#refreshing-tokens
在邮递员中我发送
标题:
授权:承载 {{access_token}}
正文:application/x-www-form-urlencoded
{
client_secret : {{从移动应用程序生成客户端密码}}
grant_type : refresh_token
refresh_token : {{刷新令牌}}
client_id : {{用户注册的电子邮件}}
范围:''
}
预期的反应:
{
"access_token": {{new access_token}}
"token_type": 'Bearer'
"expires_in": 86400
"refresh_token": {{new access_token}}
}
但它没有按预期工作,它的响应
{
"access_token": {{new access_token}}
"token_type": 'Bearer'
"expires_in": 120
"refresh_token": {{new access_token}}
}
php - Laravel 5.3 密码授予令牌 [用户凭据不正确]
使用 vagrant/homestead 设置 Laravel 的 5.3 Passport。跟随直到我到达密码授予令牌
在这里,我找到了这个 GuzzleHttp 片段来发帖/oath/token
:
尽管我已经发送了所有必需且正确的信息,但我继续收到:(注意:我是唯一的用户,因此它是我的电子邮件和虚拟密码,并且客户端正确关联到我在 oauth 客户端表上的 user_id 并且 password_client 设置为 1 );
我已经搞砸了几个小时了。我已经尝试了用户和密码的所有可能组合。(来自用户模型的电子邮件作为用户名,来自用户模型的用户作为用户名,用户模型中的密码作为密码等)。
php - Laravel 5.3 中未显示 Passport 组件
我按照本教程进行操作,并且正在使用“ Passport 的默认 Vue 前端”。现在的问题是Vue 组件 没有出现在Laravel 5.3中。
资源/js/app.js:_
资源/视图/ home.blade.php :
laravel - Laravel Passport API 多个中间件
甚至可以在一条路线中拥有多个中间件。现在我有我的网络应用程序使用 auth 的中间件发出 ajax 请求,该中间件默认为 auth:web
我还希望我的移动应用程序具有 API 访问令牌(使用 laravel 护照)来验证用户是否能够访问这些相同的路由。为此,我只需在中间件中指定“auth:api”。
唯一的问题是我不能指定多个中间件。我可以使用 'auth:api' 或 'auth:web' 但不能同时使用。我想我可以为每个 ajax 请求设置两条路由,一条用于 Web 应用程序,另一条用于 api 请求,但如果我可以只使用一条路由会好得多。
我试过了,但它不起作用。有谁知道如何做到这一点?有没有可能
laravel - Laravel/Passport - 那是安全漏洞吗?
关于:
- https://laravel.com/docs/5.3/passport#sumption-your-api-with-javascript
- https://github.com/laravel/passport/blob/1.0/src/ApiTokenCookieFactory.php
假设 Access-Control-Allow-Origin: *
所以我们有这样的场景:我被授权将 laravel_token 设置到我的 cookie 中,并将 csrfToken 提供给前端框架。
请告诉我为什么我无法使用已经提供的 csrfToken 轻松创建新的 laravel_token,将其放入我的 cookie 并将其发送到被授权为不同用户的后端?
从现在开始,当我将 cookie 更改为使用不同用户的劫持 JWT 时,我不会以他的身份登录,对吗?