有没有办法从 Laravel 应用程序中获取 Moodle Single-Sign-On?

Is there a way for Moodle Single-Sign-On from a Laravel Application?

我正在 laravel 网站上为 moodle 设置 single-sign-on 功能。

  1. 用户访问 laravel 站点

  2. 用户登录

  3. 用户点击 link 到 Moodle

  4. 用户自动登录 Moodle,无需重新输入用户名和密码。

如果用户收藏或直接访问 Moodle,他们仍然可以使用他们的用户名和密码直接登录。

我已尝试将用户 php cURL 设为 post 用户名和密码以登录 url。

$url =  "http://moodle.site.com.na/sso/login/index.php";
$postData = array('username' => $username, 'password' => $password);
try {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($ch);
    curl_close($ch);
}
catch(Exception $e){
    dd($e);
}
return $response;​

当 single-sign-on 成功时,用户应该会自动登录到 moodle 站点,而无需 re-enter 他们的用户名和密码。

是 - 根据您的需要,有几种常见的解决方案:

希望一切顺利!