bdsu/limesurvey-oauth2

使用 OAuth2 启用 LimeSurvey 的单点登录

1.0.0 2021-12-10 12:59 UTC

This package is not auto-updated.

Last update: 2024-09-27 23:35:25 UTC


README

这是一个 LimeSurvey 的身份验证插件,允许使用 OAuth2 协议与任何身份提供者实现单点登录。

它使用了 league/oauth2-client,并可以配置支持 OAuth2 协议且具有自动创建新用户功能的任何身份提供者。

安装

  • 前往 发布版 并下载最新的 Zip 归档
  • LimeSurvey 5.x 版本:在插件管理器中上传 Zip 归档
  • LimeSurvey 3.x 版本:解压 Zip 归档并将内容放置在 <limesurvey_root>/plugins/AuthOAuth2/
  • 在插件管理器中配置插件
  • 在插件管理器中激活插件

要测试最新的开发版本,请将 git clone 此存储库 克隆到 <limesurvey_root>/plugins/AuthOAuth2/,并在其中运行 composer install 以下载所有依赖项。

配置

在激活插件之前,请从插件管理器打开其配置。

使用您的身份提供者为 LimeSurvey 创建一个新的应用,并将 LimeSurvey 配置中显示的 重定向 URI 粘贴到那里。根据您的身份提供者的文档填写 客户端 ID客户端密钥授权 URL作用域访问令牌 URL

用户详情 URL 应指向一个 API 端点,该端点使用检索到的访问令牌提供有关当前用户的 JSON 对象的详细信息。这些详细信息应包括唯一的用户名、电子邮件地址和显示名称。以下您可以指定包含这些详细信息的 JSON 对象的键。

使用 标识属性,您可以配置是否应使用 用户名电子邮件 与 LimeSurvey 数据库中的现有用户进行匹配。如果启用 创建新用户,则当无法在数据库中找到时,将自动创建新的 LimeSurvey 用户。您可以配置权限和(从 LimeSurvey 4.x 版本开始)将自动分配给所有创建用户的用户角色。

如果启用 作为默认登录使用,则不会显示 LimeSurvey 登录表单,而是将用户重定向到配置的 OAuth2 身份提供者,并在成功时自动登录。否则,用户必须手动选择 OAuth2 作为身份验证方法。

作为默认登录使用 复选框下方显示了一个 URL,可以始终使用该 URL 访问默认登录表单,并使用内部数据库登录,即使在启用自动重定向时也是如此。

您可以在此处找到 Azure Active Directory 的配置示例

支持的 LimeSurvey 版本

此插件已与以下版本测试过

  • 最新稳定版本 v5.2.5
  • 最新 LTS 版本 v3.27.28

应该与所有 3.x 或更高版本兼容。从 LimeSurvey 4.x 版本开始支持为新用户配置用户角色。

所需的最低 PHP 版本是 5.6。