基于LTI1.3开发工具:用户详情获取及Moodle LTI API咨询
LTI 1.3 Moodle集成问题解答
获取用户详情的正确Scope配置
要获取用户详情,你不需要注释token.php里的scope校验逻辑,而是得在请求这个接口时指定正确的scope参数。Moodle LTI 1.3支持的用户相关核心scope如下:
https://purl.imsglobal.org/spec/lti/scope/userinfo:必须包含这个scope,才能拿到基础的用户详情信息https://purl.imsglobal.org/spec/lti-nrps/scope/contextmembership.readonly:如果需要获取用户在课程中的角色、成员身份等额外信息,就加上这个scope
你需要在手动生成的JWToken payload里,把scope字段设置为上述需要的内容(多个scope用空格分隔),再用Postman请求token.php。拿到包含正确scope的Bearer Token后,就能调用对应接口获取用户详情了。
关于auth.php接口的用途
https://localhost/mod/lti/auth.php是Moodle LTI 1.3的OIDC认证端点,核心作用是:
- 处理LTI工具的身份验证流程:当用户从Moodle发起访问你的LTI工具时,会先跳转到这个端点完成身份校验
- 生成授权码(Authorization Code):这个授权码是后续调用
token.php交换Bearer Token的关键凭证,属于LTI 1.3 OAuth2流程的必备环节 - 校验请求合法性:包括验证JWToken签名、确认客户端身份、检查请求参数完整性等
简单说,auth.php是用户从Moodle进入你的工具时的身份验证入口,token.php则是用来兑换访问令牌的接口,两者是LTI 1.3认证流程的前后衔接环节。
内容的提问来源于stack exchange,提问作者Vishnu Kumar Singh
相关产品推荐
相关产品推荐

