我有一個外部工具,我通過LTI連接到我的D2L網站。當學生完成他的工作時,我希望該工具將評分發送回LMS。 在使用XML負載發送評分時,我收到來自D2L的「未通過身份驗證」消息。我如何認證我的成績發佈?我如何驗證LTI成績回報?
0
A
回答
0
所需的認證取決於如何在LTI 1.1 implementation guide中描述的必須完成的操作。特別是(來自LTI 1.1 impl指南),請注意部分4: LTI Security Model和部分6.1: LTI Basic Outcome Service。
的要求快速綜上所述,筆者認爲(如每部分4.3: Security for application/xml Messages):
形式向上POX(純「醇XML)主體
計算主體的散列值
將
oauth_body_hash
parm設置爲該值將請求標記爲O AUTH簽名的規則,並注意該
oauth_body_hash
必須被包括在基本字符串與其它請求一起登錄參數parms與所述簽名的請求的OAuth的PARMS一起發送
oauth_body_has
ħPARM
D2L 高度建議實現者爲其特定平臺使用可靠的OAuth標準庫來執行簽名生成和驗證,而不是嘗試自行實現OAuth簽名/驗證算法。
請注意,在這種情況下,Oauth參數在請求標頭中發送,而不在主體數據中。 IMS規範本身包含一個身體應該看起來像什麼樣的示例(sec 4.3):
POST http://www.imsglobal.org/developers/BLTI/service_handle.php HTTP/1.0
Host: 127.0.0.1:80
Content-Length: 757
Authorization: OAuth realm="",oauth_version="1.0",
oauth_nonce="29f90c047a44b2ece73d00a09364d49b",
oauth_timestamp="1313350943",oauth_consumer_key="lmsng.school.edu",
oauth_body_hash="v%2BxFnmDSHV%2Fj29qhxLwkFILrtPo%3D",
oauth_signature_method="HMAC-SHA1",
oauth_signature="8auRpRdPY2KRXUrOyz3HKCs92y8%3D"
Content-type: application/xml
<?xml version = "1.0" encoding = "UTF-8"?>
<imsx_POXEnvelopeRequest xmlns = "http://www.imsglobal.org/services/ltiv1p1/xsd/imsoms_v1p0">
<imsx_POXHeader>
<imsx_POXRequestHeaderInfo>
<imsx_version>V1.0</imsx_version>
<imsx_messageIdentifier>999999123</imsx_messageIdentifier>
</imsx_POXRequestHeaderInfo>
</imsx_POXHeader>
<imsx_POXBody>
<readResultRequest>
<resultRecord>
<sourcedGUID>
<sourcedId>3124567</sourcedId>
</sourcedGUID>
</resultRecord>
</readResultRequest>
</imsx_POXBody>
</imsx_POXEnvelopeRequest>
相關問題
- 1. 如何驗證moodle LTI啓動請求
- 2. 如何用人名和成績返回平均成績?
- 3. GameCenter報告成績Swift 3
- 4. LTI使用Node.js啓動身份驗證
- 5. 報告成績使用PHP/JavaScript的
- 6. 如何讓獨立成績
- 7. TSQL:如何搜索成績列表中的成績?
- 8. 交叉驗證的預測成績相同的
- 9. LTI集成問題與Desire2Learn
- 10. TYPO3的驗證回報呼籲對空
- 11. 如何JavaScript驗證完成
- 12. 如何驗證IO.copy_stream成功
- 13. LTI OAuth到Rails/Ember/Ember簡單的身份驗證設計
- 14. Desire2Learn的成績
- 15. PHP函數返回第一成績只
- 16. 如何驗證notify.js警報硒
- 17. 如何驗證PDF格式的報告
- 18. 如何使用Watir驗證HTML報告
- 19. Firebase銷售業績報告
- 20. 開發業績報告2010
- 21. 我的報告頁面的Javascript驗證
- 22. 如何從Desire2Learn導出成績?
- 23. 我如何驗證用戶?
- 24. 網絡蒐集我的成績
- 25. 如何打破我的成績下降到月
- 26. 我如何輸出這個陣列測試成績的?
- 27. 如何製作計算我的成績的功能?
- 28. 取平均成績
- 29. mysql_fetch_array - 團體成績
- 30. GPA成績計劃