這個問題有幾個不同的問題。
用戶的活動網絡會話。目前,D2L的Valence平臺的用戶身份驗證不適用於此方式。所述LMS將只提供回一個用戶ID /密鑰對作爲AUTH過程的一部分時,它可以確認它具有與用戶的活動會話:
API調用客戶端發出請求直接向LMS到爲用戶檢索用戶ID /密鑰對。
a。如果LMS與用戶有活動會話(必要時生成),並返回該應用程序/用戶對的用戶ID /密鑰對。
b。如果LMS不是而不是與用戶有活動會話,請通過它配置的用於認證用戶的登錄過程:這可能是將呼叫Web請求重定向到LMS自己的用戶登錄頁面,或者重定向可能通過LMS用來認證用戶的第三方服務(例如,配置的SSO IDP)。
這意味着:如果你使用的API來啓動身份驗證過程中檢索用戶ID /密鑰對,調用Web瀏覽器將(作爲這一過程的一部分)已經有一個活躍的網絡會話與LMS。或者用戶將被要求使用LMS使用的任何認證過程登錄,或用戶已經這樣做了,並且調用瀏覽器將知道(因爲它具有指示活動會話的cookie狀態)。
程序化登錄。目前,D2L的Valence平臺支持而非支持直接參與用戶認證過程:沒有通過提供用戶標識/密碼或用戶與LMS共享的任何其他祕密來向LMS認證用戶的呼叫。 Valence安全模型專門設法避免讓API調用客戶端了解用戶與LMS之間共享的身份驗證祕密。
使用價學習框架的API的客戶端需要任一:
用戶名/密鑰對失效。請注意,由LMS提供給主叫客戶端的這些授權令牌旨在是長壽命。它們應該超出瀏覽器爲用戶提供的當前Web會話。因此,客戶端應用程序應將這些數據作爲安全數據,尤其是與客戶端應用程序自己的ID /密鑰對(由於用戶ID /密鑰對綁定了應用程序自己的ID /密鑰對)相結合。雖然我們希望客戶端應用程序緩存這些身份驗證令牌,但我們也希望將它們緩存爲敏感信息。
當這些事件中的一個發生了一個應用程序生成的用戶的ID /密鑰對將過期: