实现saml2 and social login
Laravel Version: 8.73.1 PHP Version: 7.4.16 Dcat Admin Version: 2.1.5-beta
Description:
客户希望可以实现用户可以用Saml2 和几个流行的social login,比如google, facebook这些。 用laravel-saml2 和socialite package, 用laravel auth都没有问题。 但是dcat-admin用pjax, 这些都不行啊。 后来我试图自己定义了一个login controller 和一个login.blade.php (不属于/admin). 如果用户在social login provider那边成功登录后, 查询admin_users table 是否有该用户,如果没有就新增一个用户记录。到这里都没有问题,但是如何通过CODE 实现该用户在dcat-admin中的自动登录? Admin::guard()->login($newUser); redirect(url('/admin')); 这里的重定向不起作用。
if ($newUser) {
$newUser->markEmailAsVerified();
Admin::guard()->login($newUser);
return redirect(url('/admin'));
} else {
info('Failed to create Social User Error: ' . $email);
}
@jqhph 急, 请大佬指教如何才能实现在auth provider 重定向回来如何在 代码中实现dcat-admin用户登录,并显示登录后的页面?比如在我上面的代码中return redirect(url('/admin'));后,还是显示登录页面,好像前面的登录代码没起作用,但是我在跳转前面加dd(Admin::user()); 有能看到该用户的信息打印出来。
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
只要基於原本 dcatadmin 管理員的認證機制,在 Middleware 稍作變化,就能處理
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.