WeBWorK Main Forum

LTI authentication Issue with Blackboard

LTI authentication Issue with Blackboard

by Bianca Sosnovski -
Number of replies: 5
Hi everyone,

Our Blackboard Admin and I are trying to set up integration between WeBWorK and Blackboard for our institution. When trying to login to WeBWorK using Blackboard but it gives an error message (both Instructor and student - though we expected this would happen for instructors only). We can't figure out what is the problem with it. We appreciate if anyone can point out what the issue is.

We are running tests with the integration for a single course, using the parameters below:
$debug_lti_parameters=1;
$preferred_source_of_username="lis_person_sourceid"; (also tried "lis_person_contact_email_primary" didn't work)
$LTIBasicToThisSiteURL="";
$external_auth=0;
$LTIGradeMode ="homework";

The entire feedback from WeBWorK is below.

Thank you.


MA119-5B0A_HW_1

Warning -- There may be something wrong with this question. Please inform your instructor including the warning messages below.

test_LTI uses an external authentication system (e.g., Oncourse, CAS, Blackboard, Moodle, Canvas, etc.). Please return to system you used and try again.


WeBWorK Warnings

WeBWorK has encountered warnings while processing your request. If this occured when viewing a problem, it was likely caused by an error or ambiguity in that problem. Otherwise, it may indicate a problem with the WeBWorK system itself. If you are a student, report these warnings to your professor to have them corrected. If you are a professor, please consult the warning output below for more information.

Warning messages

  • ===== parameters received =======

  • ext_lms => bb-3700.0.2-rel.36+fbf2221

  • oauth_consumer_key => Webwork

  • tool_consumer_info_product_family_code => BlackboardLearn

  • oauth_signature => 2UlKzhtLxARkd2yC8ns4S6GIoUw=

  • tool_consumer_instance_description => City University of New York

  • tool_consumer_instance_name => City University of New York

  • context_id => cd2b62997c52466fa70c79af16e59f83

  • oauth_callback => about:blank

  • custom_caliper_federated_session_id => https://caliper-mapping.cloudbb.blackboard.com/v1/sites/5ed26b7a-8099-44c8-9823-6cae2c0a8104/sessions/F3705B5A129418A96B8CB1FD05E9784A

  • custom_tc_profile_url => https://bbhostedstage.cuny.edu/learn/api/v1/lti/profile?lti_version=LTI-1p0

  • launch_presentation_return_url => https://bbhostedstage.cuny.edu/webapps/blackboard/execute/blti/launchReturn?course_id=_1642145_1&content_id=_41786640_1&toGC=false&launch_id=99ae9d04-846c-4d2a-9486-1041f89c84bf&link_id=_41786640_1&launch_time=1563830545351

  • oauth_version => 1.0

  • oauth_signature_method => HMAC-SHA1

  • resource_link_description => First homework assignment.

  • lis_outcome_service_url => https://bbhostedstage.cuny.edu/webapps/gradebook/lti11grade

  • tool_consumer_instance_guid => 5591d91147c2486ab3e288180afcc949

  • context_label => QCC01_MA_336_PNT3_1189_1

  • lis_result_sourcedid => bbgc46951835gi10181526

  • lti_version => LTI-1p0

  • launch_presentation_document_target => window

  • oauth_timestamp => 1563830545

  • context_title => 2018 Fall Term (1) Statistics MA 336 PNT3[42324] (Queensborough CC)

  • resource_link_title => WeBWorK HW 1

  • ext_launch_presentation_css_url => https://bbhostedstage.cuny.edu/common/shared.css,https://bbhostedstage.cuny.edu/themes/as_2015/theme.css,https://bbhostedstage.cuny.edu/branding/_1_1/brand.css?ts=1561481925000

  • tool_consumer_instance_contact_email => bbsupport@cuny.edu

  • oauth_nonce => 501475493364190

  • lti_message_type => basic-lti-launch-request

  • tool_consumer_info_version => 3700.0.2-rel.36+fbf2221

  • launch_presentation_locale => en-US

  • ext_launch_id => 99ae9d04-846c-4d2a-9486-1041f89c84bf

  • custom_caliper_profile_url => https://cunystage.blackboard.com/learn/api/v1/telemetry/caliper/profile/_41786640_1

  • resource_link_id => _41786640_1

Request information

Time

Mon Jul 22 17:22:30 2019

Method

POST

URI

/webwork2/test_LTI/MA119-5B0A_HW_1


In reply to Bianca Sosnovski

Re: LTI authentication Issue with Blackboard

by Danny Glin -
Since you are getting the debug information, I'm assuming that the parameters that you've listed are just the ones that you've customized, and that the rest of authen_LTI.conf is loaded with the defaults.

The first thing I would try is commenting out
$LTIBasicToThisSiteURL="";

If that variable is undefined, then WeBWorK tries to reconstruct the URL from other settings. In this case, I believe that setting it to the empty string causes it to be defined, which means that WeBWorK is using the empty string as the base URL, which doesn't match what Blackboard is expecting.

If commenting it out doesn't work, you can try setting it to the base URL for your WeBWorK installation (typically "https://webwork.yourschool.edu/webwork2").
In reply to Danny Glin

Re: LTI authentication Issue with Blackboard

by Bianca Sosnovski -
Danny,

Thank you for your suggestion.

I already tried that but unfortunately it still gives me the same error message.
In reply to Bianca Sosnovski

Re: LTI authentication Issue with Blackboard

by Michael Gage -
I don't see either:

lis_person_sourceid

or

lis_person_contact_email_primary

listed in the set of key/value pairs sent from Blackboard to WeBWorK.

(The "error/warning" message is issued because you have set the debug flag to 1 which means
that the entire request from Blackboard with all of the key/value pairs is printed out as an "error")

I do see calls to caliper -- e. g.

custom_caliper_profile_url

(Andrew Gardner has just started implementing
caliper, but I don't have any experience with it. ) see https://github.com/openwebwork/webwork2/pull/971
although I don't think that is the problem. WeBWorK will just ignore those for this release of WW.

The problem seems to be that your Blackboard installation isn't sending any information that identifies the user. Possibly some privacy setting on Blackboard has been set too high.


oauth_signature => 2UlKzhtLxARkd2yC8ns4S6GIoUw=

might be involved if that is related to an individual users username -- but I'm not sure how WW is supposed to interpret that.

-- Mike

In reply to Michael Gage

Re: LTI authentication Issue with Blackboard

by Bianca Sosnovski -
Mike,

You were right about Blackboard not sending the info that identifies the user. Thank you so much for pointing it out.

After talking to the IT personnel in the university central, they had the LTI set to transfer the data over SSL and they changed it to any connection.

The debug message is below and as far as I can understand it seems that everything is fine. The warning (debug message) disappears when I set $debug_lti_parameters = 0.

By the way, the grade passback to Blackboard is also successful.

Thank you.

Bianca

--------------------------------------------

WeBWorK Warnings

WeBWorK has encountered warnings while processing your request. If this occured when viewing a problem, it was likely caused by an error or ambiguity in that problem. Otherwise, it may indicate a problem with the WeBWorK system itself. If you are a student, report these warnings to your professor to have them corrected. If you are a professor, please consult the warning output below for more information.

Warning messages

  • ===== parameters received =======
  • ext_lms => bb-3700.0.2-rel.36+fbf2221
  • oauth_consumer_key => WebworkLTI
  • lis_person_contact_email_primary => xxx@qcc.cuny.edu
  • tool_consumer_info_product_family_code => BlackboardLearn
  • oauth_signature => cdEcGpJZBYEq/Y12Cz2q7pQ2RD0=
  • tool_consumer_instance_description => City University of New York
  • tool_consumer_instance_name => City University of New York
  • context_id => cd2b62997c52466fa70c79af16e59f83
  • oauth_callback => about:blank
  • custom_caliper_federated_session_id => https://caliper-mapping.cloudbb.blackboard.com/v1/sites/5ed26b7a-8099-44c8-9823-6cae2c0a8104/sessions/732584730BF538DE0ADA8621950E0922
  • custom_tc_profile_url => https://bbhostedstage.cuny.edu/learn/api/v1/lti/profile?lti_version=LTI-1p0
  • launch_presentation_return_url => https://bbhostedstage.cuny.edu/webapps/blackboard/execute/blti/launchReturn?course_id=_1642145_1&content_id=_41786641_1&toGC=false&launch_id=e1cf254d-5922-4989-8b7d-8f763ccae990&link_id=_41786641_1&launch_time=1564414716529
  • oauth_version => 1.0
  • oauth_signature_method => HMAC-SHA1
  • roles => urn:lti:role:ims/lis/Learner
  • resource_link_description => Second homework assignment
  • lis_outcome_service_url => https://bbhostedstage.cuny.edu/webapps/gradebook/lti11grade
  • lis_person_name_full => Qbcc Testperson
  • tool_consumer_instance_guid => 5591d91147c2486ab3e288180afcc949
  • context_label => QCC01_MA_XXX
  • lis_result_sourcedid => bbgc46951835gi10181527
  • lti_version => LTI-1p0
  • user_id => 50554c10f4cd4b388c26fa6015de4f86
  • launch_presentation_document_target => window
  • oauth_timestamp => 1564414716
  • context_title => 2018 Fall Term MA 336 (Queensborough CC)
  • resource_link_title => WeBWorK HW 2
  • lis_person_sourcedid => 20081121xx
  • ext_launch_presentation_css_url => https://bbhostedstage.cuny.edu/common/shared.css,https://bbhostedstage.cuny.edu/themes/as_2015/theme.css,https://bbhostedstage.cuny.edu/branding/_1_1/brand.css?ts=1561481925000
  • tool_consumer_instance_contact_email => bbsupport@cuny.edu
  • oauth_nonce => 1085646305704786
  • lti_message_type => basic-lti-launch-request
  • tool_consumer_info_version => 3700.0.2-rel.36+fbf2221
  • launch_presentation_locale => en-US
  • lis_person_name_family => Testperson
  • ext_launch_id => e1cf254d-5922-4989-8b7d-8f763ccae990
  • lis_person_name_given => Qbcc
  • custom_caliper_profile_url => https://cunystage.blackboard.com/learn/api/v1/telemetry/caliper/profile/_41786641_1
  • resource_link_id => _41786641_1
  • =========== summary ============ at /opt/webwork/webwork2/lib/WeBWorK/Authen/LTIAdvanced.pm line 213.
  • User id is |20081121xx|
  • User mail address is |xxx@qcc.cuny.edu|
  • Student id is |undefined|
  • preferred_source_of_username is |lis_person_sourcedid|
  • preferred_source_of_student_id is |undefined|
  • ================================
  • The following path was reconstructed by WeBWorK. It should match the path in the LMS: at /opt/webwork/webwork2/lib/WeBWorK/Authen/LTIAdvanced.pm line 380.
  • http://webwork.qcc.cuny.edu/webwork2/test_LTI/MA-LTI-PNT3_HW_2/ at /opt/webwork/webwork2/lib/WeBWorK/Authen/LTIAdvanced.pm line 381.

Request information

Time Mon Jul 29 11:38:37 2019
Method POST
URI /webwork2/test_LTI/MA-LTI-PNT3_HW_2



In reply to Bianca Sosnovski

Re: LTI authentication Issue with Blackboard

by Bianca Sosnovski -
Hi everyone,

I just want to report I was able to finish testing the WeBWorK-Blackboard integration for my department. As mentioned above, after changing the security level for the LTI connection for WeBWork in Blackboard, everything worked as expected:
  • Automatic creation of WeBWorK student accounts from Blackboard (Successful);
  • Single login via Blackboard (Successful);
  • Automatic grade passback from WeBWorK to Blackboard (Successful);
  • Assignments are assigned to users once visible (Successful).
I also customized the code in Authen_LTI.conf to include section and recitation in the WeBWorK profile of the users based on the information received from Blackboard.

My department is now just awaiting for final approval from the university to have it implemented in the production Blackboard. Looking forward to benefit from the integration.

Cheers!

Bianca