Identify user logged-in device in moodle

Identify user logged-in device in moodle

by Namodaya Balaarachchi -
Number of replies: 7

Hi experts,

We have started to develop online tuition class system for school students using Moodle. We need to implement below requirement in our platform.

  • We need to identify the devices which will be logged-in by users because  we plan to implement that maximum two devices will be allowed to log-in for one users in our site. Ex: Student can register his mobile phone and his laptop to log-in for our site.
  • Devices can be anyone like, Mobile Phones, Laptops, Tablets...
  • Reason for this requirement: Students can be shared their credentials with their friends or anyone so that this will become a problem for teachers who will be planned to use our site.

Is there way to do it in moodle or is there any plugin to use for this requirement?
Please help on this. We use 3.9.3 Version in Moodle.

Thanks and regards,
Namodaya Balaarachchi


Average of ratings: -
In reply to Namodaya Balaarachchi

Re: Identify user logged-in device in moodle

by Ken Task -
Picture of Particularly helpful Moodlers

Maybe? ...

https://moodle.org/mod/forum/discuss.php?d=366992

Comments: networking comes before application.   Moodle is the application and you could do some things there, but you cannot control network nor devices ... at least the student end point if that tech is student owned.  Good luck!

So is the purpose to deter cheating/plagiarism?

'SoS', Ken


Average of ratings: Useful (1)
In reply to Namodaya Balaarachchi

Re: Identify user logged-in device in moodle

by Ken Task -
Picture of Particularly helpful Moodlers

Student A uses their computer to connect to your moodle site and logs on.   IP address shown is student A's.

Student A launches a screen sharing app, calls or text student B info for sharing, student B connects to student A's computer, takes control of keyboard and mouse.   Navigates your moodle.   Takes a quiz for student A.

Catch 'em! smile

'SoS', Ken


Average of ratings: Useful (2)
In reply to Namodaya Balaarachchi

Re: Identify user logged-in device in moodle

by Namodaya Balaarachchi -
Thanks a lot Ken/ Visvanath/ Behan for quick responses.

With these solutions, my problem will not be solved. Let me explain my user scenario in more detail.
  • In out site teachers will upload video lessons and quizzes in their profile. We will not allow to download those stuffs from our site for students.
  • Teachers will store all these stuffs in sometime in our site.
  • In this scenario, students can share their credentials with their friends. Friends can log to our sites sometime back using these credentials and can watch the all above mentioned stuffs using their friends credentials.
We need to prevent such a logins.
For this scenario, we have come-up with following solution.
  • One user can register two devices for their log-in.
  • If they try to log-in with another device, we will not allow to do that.
For this solution, we need to identify their devices which are going to register for our site. Do we have a way to do it in Moodle?
Example: We can take a mac address of the device. This is just an example. Could you please suggest a better way to do it in moodle?

Thanks and regards,
Namodaya Balaarachchi
In reply to Namodaya Balaarachchi

Re: Identify user logged-in device in moodle

by Ken Task -
Picture of Particularly helpful Moodlers

I'll repeat ... 'networking comes before application.' Moodle is an application ... so if trying to do this with Moodle, undesired network traffic has already reached the server.   If you did anything at application layer it would have to be your web service ... which serves moodle.

A huge list of allowed IP addresses in an .htaccess file IF using apache.

Yes, you know about MAC addresses and the fact they are supposed to be unique to a device ... no 2 the same on entire internet.   Here again ... that's at the network layer ... not at the application layer.

Students using a smart phone could have their phone connect to local lan ... thus the IP address shown to the moodle is the same IP address as their computer would show.   But, student could opt to have their smartphone connect to carrier.   Different IP address.

To build such list one would have to know the IP addresses of carriers used by students and IP addresses used by students smartphones if they connected to carrier.

Attempting such things would be continuous and on-going ... maybe daily ... networking.   Something automated, if one could find/create such a thing, had better work 100% of the time, or you could find yourself locked out of your own server IF the server is remotely hosted.  There had better be a 2nd NIC on the server that's configured to use/respond to another iP address for your backdoor to server should the primary NIC get mis-configured.

Me thinks the only way one could use MAC address is where your entity issued tablets and laptops to students ... you could record those MAC addresses of those devices then and through contols of operating system/networking ... server or a switch that sits in front of the Moodle server ... allow only those MAC addresses access.

And why are doing this?  The only content on a server that deserves that much protection is a finanical institution or something related to the national security of your nation, IMHO!!!

Best of luck!

'SoS', Ken


Average of ratings: Useful (1)
In reply to Namodaya Balaarachchi

Re: Identify user logged-in device in moodle

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
Hi Namodaya

Now I can understand your plan. Unfortunately that is not the way the World Wide Web (WWW) works. The obstacle you will face is that the web browser runs in a sandbox. The reason: The WWW is no more just rendering static HTML like in the old days. Today real program code, Java, JavaScript, Flash, ActiveX run on the browser. Unless the browser is isolated from the operating system, web sites can do everything you do in your computer. So harvesting MAC addresses is out, as well as collecting unique mother board or chip IDs.

Well, that is how it is supposed to work, as can be audited in Free and Open Source Software (FOSS) environments. If you are a victim of closed source software like iOS, Android and the like, then your fate is different.

Even with FOSS, there are ingenious methods like fingerprinting computers. But Moodle, being FOSS, doesn't do such things. You have to investigate alternative solutions.