[Building Sakai] BasicLTI Feature for Setting Grades from an External Tool (BLTI-68)

Jon Gorrono jpgorrono at ucdavis.edu
Sun Jul 25 16:19:05 PDT 2010


The ultimate disposition of grades (tables) for GB and GB2 is the
same... so saving a grade to the GB service in edu-services will allow
them to be surfaced in GB2. The patching that GB2 needed has been
applied to the data model in edu-services 1.0.0 AFAICT and which is in
2.7.... no service-call level changes to my knowledge: just weighting
info and few other things... on the data model objects.

If there are some stirrings about a grade repository for 2.8 (with 3
in mind) beginning again, fellow gb2 geeks (of which I am n00b) would
like to follow the conversation if permissible



On Sat, Jul 24, 2010 at 2:59 PM, csev <csev at umich.edu> wrote:
> Nate,
> The simple answer is of course, "yes".  The more important question is how
> convenient it is.  I would like it to be as convenient as possible (i.e. no
> patch required).  I think but am not sure that this is more about some of
> the broader Grade book service work we have slated for 2.8 that makes
> running GB and GB2 at the same time easier and paves the way for elegant
> support for an increasing number of different grade sources.
> For me that GB service cleanup work is high priority for 2.8.
> I am planning on meeting with the UMich folks working on grade book to help
> me navigate the GB/GB2 issue.
> So the short summary is that I am sure this will work - the question is
> simply 'how much work'.
> /Chuck
> On Jul 24, 2010, at 3:15 PM, Nate Angell wrote:
>
> Good experiment!
> Will the web services strategy mean that the BLTI tool could set grades in
> Gradebook2 rather than Gradebook should the Sakai site be using GB2?
> Maybe that question might be best answered by the GB2 team...
> On Sat, Jul 24, 2010 at 10:23 AM, csev <csev at umich.edu> wrote:
>>
>> Hello all,
>> I am starting work on a new feature for Basic LTI in Sakai - the ability
>> to set a grade from an external tool using a web service.  The specs for
>> this work are here:
>> http://jira.sakaiproject.org/browse/BLTI-68
>> I would love some review of the approach - in particular, I would love
>> some examination of the security approach.  Since we are taking grades from
>> a web service, it should be safe enough that we trust it.   Here is the
>> outline of the approach:
>> Instructor places the Basic LTI portlet and configures with the url,
>> secret, and key.
>> Instructor uses the config UI to (a) indicate that the tool will be
>> sending grades, (b) creating the column if necessary, (c) picking the
>> gradebook column to store results.  This sets the outcome_gradebook
>> properties in the tool placement.
>> Student launches the tool in the consumer  The launch includes the
>> lis_result_sourcedid which is an encrypted version of a random number,
>> placement if, and user id using the Blowfish system-wide private key (same
>> as TinkTool).
>> The Tool Provider stores the lis_result_sourcedid in its tables somewhere,
>> remembering the oauth_consumer_key as well.
>> Student uses the tool and earns a grade, or perhaps the student uses the
>> tool and the instructor goes into the tool and grades the student work
>> Either as a side effect of the student complteing the work, or the
>> instructor pressing a "send-grades" button, the tool provider creates a
>> simple-lis-replaceresult message including the lis_result_sourcedid and
>> signing it using OAuth using the oauth_consumer_key which the Tool Consumer
>> used to sign the launch request.
>> The message is sent to a servlet on the tool consumer, first, the servlet
>> decrypts the lis_result_sourcedid using the system-wide Blowfish private key
>> and if it decrypts successfully, it parses it to extract the placement id
>> and user id from the lis_result_sourcedid.
>> It then looks up the oauth_consumer_key and secret from the placement and
>> checks the OAuth signature of the message.
>> If the OAuth signature is valid, the servlet uses SecurityAdvisor to set
>> the grade.
>> There is much more detail in design documents in the JIRA mentioned above.
>> Please review and comment.
>> /Chuck
>>
>> _______________________________________________
>> sakai-dev mailing list
>> sakai-dev at collab.sakaiproject.org
>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>
>> TO UNSUBSCRIBE: send email to
>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>> "unsubscribe"
>
>
>
> _______________________________________________
> sakai-dev mailing list
> sakai-dev at collab.sakaiproject.org
> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>
> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org
> with a subject of "unsubscribe"
>



-- 
Jon Gorrono
PGP Key: 0x5434509D -
http{pgp.mit.edu:11371/pks/lookup?search=0x5434509D&op=index}
GSWoT Introducer - {GSWoT:US75 5434509D Jon P. Gorrono <jpgorrono - gswot.org>}
http{sysdev.ucdavis.edu}


More information about the sakai-dev mailing list