Restrict non-editing teacher's ability to see info outside of its group?

Restrict non-editing teacher's ability to see info outside of its group?

by Jordan Kintzle -
Number of replies: 1

I'm looking for recommendations on an approach to limit what information a non-editing teacher can view in a course in Moodle 4.4.1.

Background
We are selling access to a course built in our Moodle LMS. We are using a single course for all customers/schools.

In the course we have applied the following settings:

  • Group mode: Separate groups
  • Force group mode: Yes
  • Default grouping: None

At this time, we are only supporting self-enrollment using an enrollment key. We create a new Self-enrolment enrollment method for each school that purchases access. Here are some of the key properties we are utilizing:

  • Custom instance name: School name
  • Allow new self enrolments: Yes
  • Enrolment key: we generate a unique key and enter it here
  • Use group enrolment keys: Yes
  • Default assigned role: Student
  • Max enrolled users: we set to the number of users purchased

Next we create a new group in the course for the school. Here are the key properties we are utilizing:

  • Group name: School name
  • Enrolment key: same key that was generated for the Enrolment key
  • Group membership visibility: Only see own membership or Hidden

So far this is working well for us. We are able to provide each school with their unique enrollment key and when users enroll, they are automatically added to the group. From my testing so far, this has been sufficient to ensure students can't find students from other course groups.

For additional context, we have comments, discussions, and messaging disabled so there's really no need for students to find each other.

What we desire

Next we want to figure out how to get the teacher into the course. The primary purpose for this is so that the teacher can track student progress and to view students' grades. The teacher does not need much else and does not need to be able to edit grades. The assumption is that if the teacher wants to utilize the grade results from this course, they will have to manually copy them over to their own system (until next year when we get LTI with grade sync working).

Requirements:

  • A teacher can be added to the course as a non-editing teacher or similar custom role
  • The teacher can view their students in the course participants section, but filtered to just the students in their group regardless of the selected filter
  • The teacher can view the gradebook, but is limited to only the grades of the users in their school's group
  • The teacher can not find any data from users of a different group
  • A single course is used for all schools

As you can infer, we are trying to answer data privacy concerns before we allow teacher roles in the course. I'm looking for validation that this is achievable and that I'm not missing anything obvious from my initial testing mentioned below.

Questions

  • Is it possible to restrict the data a user can view by a group?
    • Is this actually the default behavior in moodle when using Separate group mode?
    • I tested this by creating a group and enrolling 1 teacher and 1 student in the same group. There are other participants in the course too.
    • When I signed in as the teacher and viewed participants, my view was automatically filtered by my group. I then removed my group filter and applied changes. Interestingly, I still only see users in my group.
    • I then went to the gradebook and I again only see users in my group and I don't see a way to remove the filter here.
  • If this seems like asking too much out of Moodle, what would you recommend to achieve similar functionality? We are trying hard to avoid duplicating courses for this school year.
  • Is it possible to create one self-enrollment key used for students and another used for teachers that both enroll into the same course and group but with different roles?
  • How does a user manually enroll in a group using a group key?
    • I assume this must be possible somehow, but I haven't seen a place a user can go to join a group manually.
  • What gotchas and downsides will we run into with this methodology?
Average of ratings: -
In reply to Jordan Kintzle

Re: Restrict non-editing teacher's ability to see info outside of its group?

by Mary Cooch (personal account) -
Picture of Documentation writers Picture of Testers
Regarding restricting a teacher's ability to only see their group - please see the documentation Groups FAQ and the specific question How do I restrict a teacher to view only the information about the groups they are in?
 
Regarding adding a teacher to a group manually, assuming they have an account on the site, go go the course as admin, click Participants in the course navigation and click  the Enrol users button and enrol them as non-editing teacher - and then from the dropdown on the left, click Groups and manually move them from the box on the right to the correct group on the left.
 
An alternative if you want them to self enrol is to set up self enrolment with a group enrolment key but make the 'Default assigned role' non-editing teacher (yes you can do this, when you access the self-enrolment settings)  and only tell the teacher that group enrolment key - otherwise students could enrol themselves as non-editing teachers instead of students.
Average of ratings: Useful (1)