1
我有Azure移動服務和AD設置進行身份驗證。azure移動服務活動目錄認證X-ZUMO-AUTH令牌在登出後在郵遞員中有效
通過移動應用程序註銷和登錄完美作品。
AD應用迴應網址是https://test.azure-mobile.net/signin-aad
client = new MobileServiceClient (applicationURL, applicationKey);
var authResult = await client.LoginAsync(this, MobileServiceAuthenticationProvider.WindowsAzureActiveDirectory);
var data = await client.InvokeApiAsync("testAPI", HttpMethod.Get, null); //Works
client.Logout(); // LOGOUT
var data = await client.InvokeApiAsync("testAPI", HttpMethod.Get, null); //Unauthorized Error at mobile side. Request not going to API
這工作是完美的。
但是,如果我在LOGOUT之後從authResult複製了令牌,則可以使用相同的令牌從郵遞員調用API。
頁眉:X-謨-AUTH→令牌
我如何可以驗證令牌? Azure移動服務端需要進行的任何設置才能驗證和防止此問題?
如何檢查服務器上的無效令牌? –
您需要創建一個ApiController,它接受一個令牌並將其添加到某種存儲(數據庫,Azure表等)中。當客戶端註銷時,還需要將令牌發送到此新控制器,以便將其記錄爲無效。然後,每進入一個請求,您都會檢查該令牌是否存在。如果確實如此,那麼令牌無效。您可以在到期過期後將其刪除。從這個答案看#2:http://stackoverflow.com/a/23089839/3516125。其他搜索「無效智威湯遜」會給你一些其他的方法。 – brettsam