Laravel-Azure AD身份验证将我重定向回登录页面
我正在使用Laravel-5.8进行用户Azure AD身份验证。我安装了这个软件包:Laravel-Azure AD身份验证将我重定向回登录页面,laravel,azure,Laravel,Azure,我正在使用Laravel-5.8进行用户Azure AD身份验证。我安装了这个软件包: composer require socialiteproviders/microsoft-azure "socialiteproviders/microsoft-azure": "^3.0", 我也做了配置。从数据库的常规登录正在运行,但我对Laravel microsoft azure集成有问题 登录控制器 <?php namespace App\Http\Controllers\Auth;
composer require socialiteproviders/microsoft-azure
"socialiteproviders/microsoft-azure": "^3.0",
我也做了配置。从数据库的常规登录正在运行,但我对Laravel microsoft azure集成有问题
登录控制器
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Http\Request;
use Socialite;
class LoginController extends Controller
{
use AuthenticatesUsers;
protected $redirectTo = '/dashboard';
public function __construct()
{
$this->middleware('guest')->except('logout');
}
public function redirectToProvider()
{
return Socialite::with('azure')->redirect();
}
public function handleProviderCallback()
{
$user = Socialite::with('azure')->user();
}
可能是您已将重定向URI设置为http://localhost:8888/salesportal/dashboard
但是重定向URI应该是回调路由,所以http://localhost:8888/salesportal/login/azure/callback
。您可能还需要在Azure AD端将该url更新为“白名单”,作为有效回调。需要此回调来完成OAuth2流程(你的应用程序->azure->回调->检查数据库中的用户->登录或失败->你的应用程序仪表板)。@AlexBouma你在哪里得到azure的?我想是因为这个路由:route::get('login/azure/callback','Auth'\LoginController@handleProviderCallback');代码>你提到的。这就是Azure(重定向)回调应该结束的地方。@AlexBouma,请原谅。我有点糊涂了。让我解释一下:当用户单击Azure登录时,我希望他被重定向到。最初,当我设置url时,我得到了找不到的页面。我到底错过了什么?使用Azure AD之类的东西进行单点登录的想法当然是用户不必(在你的应用程序上)输入密码。你信任你从Socialite::with('azure')->user()得到的任何东西代码>为true。Azure AD已经为您验证了它。可能是您已将重定向URI设置为http://localhost:8888/salesportal/dashboard
但是重定向URI应该是回调路由,所以http://localhost:8888/salesportal/login/azure/callback
。您可能还需要在Azure AD端将该url更新为“白名单”,作为有效回调。需要此回调来完成OAuth2流程(你的应用程序->azure->回调->检查数据库中的用户->登录或失败->你的应用程序仪表板)。@AlexBouma你在哪里得到azure的?我想是因为这个路由:route::get('login/azure/callback','Auth'\LoginController@handleProviderCallback');代码>你提到的。这就是Azure(重定向)回调应该结束的地方。@AlexBouma,请原谅。我有点糊涂了。让我解释一下:当用户单击Azure登录时,我希望他被重定向到。最初,当我设置url时,我得到了找不到的页面。我到底错过了什么?使用Azure AD之类的东西进行单点登录的想法当然是用户不必(在你的应用程序上)输入密码。你信任你从Socialite::with('azure')->user()得到的任何东西代码>为true。Azure广告已经为您验证了它。