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

时间:2016-01-12 13:03:08

标签: c# azure-mobile-services logout azure-active-directory postman

我已将Azure Mobile Service和AD设置为进行身份验证。

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

AD应用程序回复网址为https://test.azure-mobile.net/signin-aad

   <table class="footable" data-filter="#filter" id="tableresult">
                               <thead>

                                <th>Client name</th>
                                 <th>Staff name</th>
                                 <th>Matter</th>
                                 <th> Delete</th>
                              </thead>
<tr id="<?php echo $id; ?>" class="edit_tr">

<td class="edit_td" >
<span id="client_<?php echo $id; ?>" class="text"><?php echo $clientname; ?></span>
<input type="text" value="<?php echo $clientname; ?>" class="editbox" id="client_input_<?php echo $id; ?>" /&gt;
</td>

<td class="edit_td">
<span id="staff_<?php echo $id; ?>" class="text"><?php echo $staff; ?></span> 
<input type="text" value="<?php echo $staff; ?>" class="editbox" id="staff_input_<?php echo $id; ?>"/>
</td>

<td class="edit_td">
<span id="matter_<?php echo $id; ?>" class="text"><?php echo $matter; ?></span> 
<input type="text" value="<?php echo $matter; ?>" class="editbox" id="matter_input_<?php echo $id; ?>"/>
</td>
<div id ="delete_btn">
<td class="delete_td"><input type="button" id="del" class="btn btn-danger" value="&times;"></input></td>
</div>
</tr>

这项工作非常完美。

但是如果我在LOGOUT之后从authResult复制令牌,我可以使用相同的令牌从邮递员调用API。

  

标题:X-ZUMO-AUTH→令牌

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

1 个答案:

答案 0 :(得分:3)

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

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

以下是另一个问题,其中包含类似的答案和其他几个链接:Logout/invalidate a JWT