使用网络服务登录Moodle的问题

问题描述 投票:0回答:1

你好,整个社区。)

我目前正在为一个电子学习平台整合moodle。我已经使用网络服务(Javascript客户端)实现了大部分的功能,但不幸的是,我发现网络认证服务并不存在。但是,不幸的是,我发现网络认证服务并不存在。

我对自己说,为了在我的系统层面上进行身份验证,而不需要将用户从 moodle 数据库中的信息重定向到 moodle,我从登录中检索密码,并使用用户输入的数据进行测试,但问题是 core_user_get_users 和 core_user_get_users_by_fields 函数并没有向我发送密码(加密),而只是发送其他信息。

需要你的帮助!

javascript web-services authentication moodle
1个回答
0
投票

core_user_get_users和core_user_get_users_by_fields,很正确,不能发送用户的密码,因为Moodle本身不知道用户的密码是什么。

Moodle只存储了用户密码的单向哈希值--每次用户登录时,他们输入的密码的哈希值会与数据库中的密码进行比较,如果两者匹配,用户就被允许进入。从设计上看,从Moodle数据库中的哈希密码开始,找出用户的密码是非常困难的(而且很耗时)。

如果您需要一个机制从您的系统中登录用户到Moodle,而不需要他们输入密码,那么您应该考虑使用一个支持单点登录的Moodle认证插件--标准的Moodle认证插件列在下面。https:/docs.moodle.orgenAuthentication。但你可能会发现,有一个第三方认证插件可以帮助你。https:/moodle.orgplugins?q=type:auth (https:/moodle.orgpluginsauth_saml2。 往往是一个好的开始)。)

© www.soinside.com 2019 - 2024. All rights reserved.