2016-11-22 77 views
0

如果我目前未通過身份驗證,並且嘗試爲受Azure AD保護的視頻在HTML5視頻標記中加載視頻,則視頻無法加載。我看到它試圖調用/ video/123並返回一個302,其位置屬性爲https://login.microsoftonline.com/ ...然後,它再次請求該位置屬性並返回200.視頻當然是不可播放的,因爲它沒有加載視頻資源。Azure AD與HTML5視頻

當然,如果我已經認證,沒有問題。我怎樣才能讓視頻彈出登錄界面?

回答

3

由於您的視頻受AAD保護,並且任何針對AAD的請求都需要包含帶有訪問令牌的授權標頭。因此,未經身份驗證的視頻請求將重定向到Azure AD SSO頁面。

最簡單也是最直接的方法就是隻接受認證用戶訪問視頻的特殊頁面。要驗證頁面中的用戶,如果他們未被授權,請重定向到Azure AD SSO頁面。您可以利用adal for js輕鬆實現功能。同時,你可以參考https://gist.github.com/Walk4Muscle/70b11b272131eedfc0360076fcd64b2c爲js整合ADAL的純javascript。

+0

謝謝加里,這很有道理。但是,如果他們在頁面上通過身份驗證,然後閒置20分鐘左右,然後點擊視頻,我們仍然存在問題。我們有一個視頻列表,當點擊它時,它會更改視頻元素的src屬性,並開始使用Javascript進行播放。當需要認證的下一個請求是視頻元素中的視頻時,關於空閒問題的任何想法?謝謝! – Jeremy

+0

您可以利用多個第三方js插件來監視用戶的空閒事件。例如。嘗試使用https://github.com/kidh0/jquery.idle。當觸發「空閒」事件時,重定向到登錄頁面或刷新訪問令牌。 –