我成功地使用了Laravel 5的社交功能,但我觉得当最终用户注册时,它要求的权限比最终用户更多。例如,Google告诉我的用户我需要:
知道你的基本资料,信息和名单的人在你的圈子。包括在你的个人资料中不公开的圈子里的人。
和
允许Google让这些圈子里的人知道你已经用Google注册了这个应用程序:你的圈子
所有我需要的是用户的名字和电子邮件地址。我如何缩小范围,使用户不必担心我为他们发布的东西?
Laravel的文档列出了以下内容:
http://laravel.com/docs/5.0/authentication#social-authentication
return Socialize::with('github')->scopes(['scope1', 'scope2'])->redirect();
但是没有关于我可以使用哪些作用域的文档,也没有关于是否可以删除默认作用域的文档。有什么想法吗?
发布于 2015-05-04 17:19:23
事实证明,这些额外的权限请求只是在我的Google控制台禁用API时才出现的。对于范围请求为何会更改没有意义,但是如果不启用API,请求无论如何也无法工作。启用Google只需将所有权限更改为“脱机访问”即可。看起来更干净,更适合最终用户。
发布于 2015-09-27 03:06:51
为了便于以后参考,您可以通过以下方式更改它:
public function redirectToProvider()
{
$scopes = [
'https://www.googleapis.com/auth/plus.me',
'https://www.googleapis.com/auth/plus.profile.emails.read'
];
return Socialite::driver('google')->scopes($scopes)->redirect();
}
您还可以在这里使用所有google作用域:https://developers.google.com/oauthplayground/。
https://stackoverflow.com/questions/30035023
复制相似问题