Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

create an "exam proctoring mode" #1919

Closed
williamstein opened this issue May 5, 2017 · 9 comments
Closed

create an "exam proctoring mode" #1919

williamstein opened this issue May 5, 2017 · 9 comments

Comments

@williamstein
Copy link
Contributor

In the “exam proctor mode”, you can lock SMC into only one worksheet that can be opened.

This is to focus the students and also to avoid cheating on exams, e.g., where the student just opens up their old files and copy code in.

Requested by instructors regularly.

@johnjeng
Copy link
Contributor

johnjeng commented May 5, 2017

My thoughts:

  1. It should be "optional" to the student in the sense that they must opt in by opening a file or directory.
  2. The student needs to be warned that they will be locked out.
  3. They should be able to navigate away officially but with a warning like "This will immediately conclude this exam and you will not be able to do any more work on it. Are you sure?"
  4. Sets a flag on the account so any other open tabs will also "lock down"

Proposal 1: Create a file extension .exam or something similar and create an editor for it which does some wrapping of the usual file extension. Files would look like quiz1.sagews.exam.

Proposal 2: Put some meta data in a distributed directory to let the client know that it's a exam, to warn the student before opening, and then lock down access to anything outside that directory for the duration of the exam.

Proposal 1 is super clean to me but Proposal 2 seems more general and matches how Assignments and Handouts work.

@williamstein
Copy link
Contributor Author

williamstein commented May 5, 2017

For genuine security, this will also require either:

  1. a fundamentally new addition to our security and collaboration model, or
  2. creating a new project just for this exam and temporarily removing the students from their project for the course.

I think (1) is basically impossibly hard -- the security problems are likely insurmountable. So (2) has to be the way to go, and will be easier after the k8s rewrite (when ephemeral projects will be easier to implement).

@johnjeng
Copy link
Contributor

johnjeng commented May 7, 2017

For genuine security

I'm confused what you mean by this. I think locking them out of certain things via the client should be sufficient..

@williamstein
Copy link
Contributor Author

I'm confused what you mean by this.

If you can execute code in a worksheet than you have 100% full read/write access to absolutely anything in that project. There is no possible way to restrict that. It's the underlying OS security model.

@johnjeng
Copy link
Contributor

johnjeng commented May 9, 2017

Oh, you mean they could do something like parse old homework from within the exam worksheet?

@williamstein
Copy link
Contributor Author

Yes.

@gabindu
Copy link

gabindu commented Aug 27, 2020

Are there any updates on this issue? This seems even more relevant these days, and I could & would certainly use this.

@williamstein
Copy link
Contributor Author

Are there any updates on this issue?

Unfortunately, there has been no further work on this issue.

@novoselt
Copy link
Collaborator

novoselt commented Mar 4, 2024

#7110 is a fresh follow up with some proposals.

@novoselt novoselt closed this as not planned Won't fix, can't repro, duplicate, stale Mar 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants