首页 文章

azure移动服务活动目录身份验证X-ZUMO-AUTH令牌在注销后在邮递员中有效

提问于
浏览
2

我有Azure Mobile Service和AD设置进行身份验证 .

通过移动应用程序注销并登录完美 .

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 .

Headers :X-ZUMO-AUTH→令牌

我如何验证令牌? Azure移动服务端需要进行哪些设置来验证和阻止此操作?

1 回答

  • 3

    当您在客户端注销时,将从客户端删除身份验证令牌,但不会向服务器传达任何内容以指示此令牌现在无效 . 因此,如果令牌存储在其他地方并重新使用,它将一直有效,直到它过期 .

    我不确定这是一个很好的方法 . 您可以重置站点的主密钥,但这会使所有其他令牌无效,因此这不是一个可行的选项 . 您可以在服务器上存储无效令牌列表,并在每个请求中检查它们,但这会为每个请求添加查找 .

    这是另一个问题,有类似的答案和其他一些链接:Logout/invalidate a JWT

相关问题