0
  1. 我使用離子框架創建了定製登錄視圖。我希望用戶使用Microsoft Azure Active Directory登錄應用程序。這可能嗎?我也使用coucbdb來發布我在我的表單中創建的todos。該應用程序是一個todos應用程序,具有查看所有待辦事項和另一個要創建的兩個選項卡。
  2. 我試過的東西:我面臨Active Directory的問題Adal Apache Cordova。用戶可以登錄並退出應用程序。當用戶在退出時點擊移動設備上的後退按鈕,用戶仍然可以看到應用上的內容。我禁用了移動設備上的後退按鈕,但它僅適用於應用程序視圖,而不適用於Microsoft的退出頁面。我不希望我的用戶在註銷或未經過身份驗證時看到其他視圖。我也不能使用ADAL for JavaScript,因爲它不適用於混合應用程序。

回答

0

基於我的理解,我們需要自己實施業務邏輯來保護觀點。

例如,我們可以判斷是否顯示基於Active Directory驗證庫(ADAL)插件的Apache科爾多瓦檢索令牌的意見應用程式像下面的代碼:

var authContext = new Microsoft.ADAL.AuthenticationContext("https://login.windows.net/common"); 
authContext.tokenCache.readItems().then(function (items) { 
    console.log("Num cached items: " + items.length); 
}); 

而要進行符號你可以參考這個庫的建議,如下所示:

與本地labraries類似,插件不提供特殊的方法註銷,因爲它取決於服務器/應用程序邏輯。這裏的recomendation是

第一步:清除緩存

var authContext = new Microsoft.ADAL.AuthenticationContext("https://login.windows.net/common"); authContext.tokenCache.clear();

第2步:使XmlHttpRequest(或打開InAppBrowser實例)指向登出網址。在大多數情況下,url應該看起來像下面這樣:https://login.windows.net/{tenantid or "common"}/oauth2/logout?post_logout_redirect_uri={URL}

+0

我已經實現了,它不起作用以在註銷後保護應用程序中的視圖。它在您打開應用程序時起作用,因爲它會將您帶到登錄頁面。一旦你簽署,你可以瀏覽頁面。然後,當您註銷並按下後退按鈕時,它仍然允許您查看頁面。我想要Adal Angular之類的東西,它允許您在單擊後退按鈕或應用程序中的鏈接時檢查用戶是否登錄。 –

+0

你是什麼意思的**後退按鈕**?當您測試應用程序或將其添加到應用程序中的按鈕時,它是瀏覽器上的按鈕嗎?根據我的理解,如果您將後退按鈕添加到您的應用程序中,它使用了狀態,它應該在註冊頁面後生效。 –

+0

我的意思是平板電腦在Android設備上附帶的後退按鈕。我可以禁用Android設備上的後退按鈕。當應用程序運行時,我可以註銷並重定向到Microsoft的主註銷頁面。這是當我的設置禁用實際設備上的後退按鈕沒有被禁用。 –