You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure Portal中配置身份认证,解决本地URI无法使用的问题?

解决方案步骤

1. 修正Azure Portal的重定向URI配置

Azure AD仅允许http://localhost开头的非HTTPS重定向地址,其他自定义本地域名(比如你使用的myteam.local)必须走HTTPS协议,二选一完成配置即可:

  • 方案1:临时调试用localhost地址,直接配置http://localhost/login/microsoft/callback作为重定向URI
  • 方案2:给本地的myteam.local域名配置自签名SSL证书,走HTTPS访问,然后配置https://myteam.local/login/microsoft/callback作为重定向URI

注意:配置的时候重定向URI的类型要选「Web」,不能选单页应用或者其他类型,否则回调会报错。

2. 调整Laravel项目配置

2.1 环境变量配置

修改项目根目录的.env文件,补充以下配置:

AZURE_CLIENT_ID=你在Azure Portal注册应用的应用程序(客户端)ID
AZURE_CLIENT_SECRET=你在Azure Portal生成的客户端密码值
AZURE_REDIRECT_URI=和Azure Portal配置完全一致的重定向URI,比如https://myteam.local/login/microsoft/callback或者http://localhost/login/microsoft/callback
AZURE_TENANT_ID=你在Azure Portal注册应用的目录(租户)ID

2.2 服务配置验证

打开config/services.php文件,确认microsoft配置项和以下内容一致:

'microsoft' => [
    'client_id' => env('AZURE_CLIENT_ID'),
    'client_secret' => env('AZURE_CLIENT_SECRET'),
    'redirect' => env('AZURE_REDIRECT_URI'),
    'tenant' => env('AZURE_TENANT_ID', 'common'), // 单租户应用填对应租户ID,多租户应用填common
],

3. 本地HTTPS配置(选方案2时需要操作)

如果坚持要用myteam.local域名访问,可以用对应工具快速配置HTTPS:

  • 用Laravel Valet的用户,直接在项目目录执行valet secure myteam即可自动生成自签名证书,开启HTTPS访问
  • 用Laravel Sail的用户,修改docker-compose.yml的services.laravel.test.ports配置,加上443:443端口映射,启动后默认支持HTTPS访问
  • 用其他集成环境(XAMPP、WAMP等)的用户,自行给站点配置自签名SSL证书即可

4. 回调路由验证

确认你的路由文件里已经注册了微软登录的路由和回调路由,示例如下:

// 跳转微软登录页
Route::get('/login/microsoft', [SocialiteController::class, 'redirectToMicrosoft']);
// 微软回调处理
Route::get('/login/microsoft/callback', [SocialiteController::class, 'handleMicrosoftCallback']);

对应控制器的方法示例:

use Laravel\Socialite\Facades\Socialite;

public function redirectToMicrosoft()
{
    return Socialite::driver('microsoft')->redirect();
}

public function handleMicrosoftCallback()
{
    $user = Socialite::driver('microsoft')->user();
    // 此处处理用户登录逻辑,比如查询用户是否存在、创建用户、写入会话等
    return redirect()->route('dashboard');
}

内容的提问来源于stack exchange,提问作者TrJoke

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 22:15:08