I have the following scenario with Canvas and my LTI 1.3 tool. I have a course X and I assigned a Canvas teacher into the course as student .When the user open the tool, the LTI payload contain both roles in the LTI role claim ( teacher + student) but it also assigned the role to the other courses. Shouldn't Canvas assign the role per course instead of assign it globally for the user ?
Shouldn't Canvas assign one role instead of mixing them ? Asking because based on this scenario the tool is not able to determine when the user have an specific role for an specific course.
Canvas sends you a set of LTI roles but only the membership roles are based on the Course context. https://www.imsglobal.org/spec/lti/v1p3#lis-membership-variables.
{
"https://purl.imsglobal.org/spec/lti/claim/roles":[
"http://purl.imsglobal.org/vocab/lis/v2/institution/person#Administrator"
"http://purl.imsglobal.org/vocab/lis/v2/institution/person#Instructor"
"http://purl.imsglobal.org/vocab/lis/v2/institution/person#Student"
"http://purl.imsglobal.org/vocab/lis/v2/membership#Instructor"
"http://purl.imsglobal.org/vocab/lis/v2/system/person#User"
]
}
In the previous example, the user is a Teacher/Instructor based on his membership role