【问题标题】:MVC prevent reauthenticationMVC 防止重新认证
【发布时间】:2017-02-05 01:45:44
【问题描述】:

我有一个问题如下:

当我的用户使用我的 MVC 应用程序时,他们大部分时间都保持打开特定页面,因为它用于记录电话呼叫。所以日志屏幕保持打开状态,然后他们接听电话并输入所有信息,然后提交,但是如果电话之间存在公平的差距,那么令牌就会过期,他们需要重新进行身份验证,从而将他们重定向到 microsoftonline,然后丢失他们输入的数据。

因此,有任何方法可以防止重新验证以便可以访问控制器,或者在执行提交之前执行令牌刷新以使其通过验证。

我不确定哪些信息将有助于解决这个问题,所以如果我可以提供任何 sn-ps 等来帮助,请说出来并立即上传。

谢谢。

【问题讨论】:

    标签: asp.net-mvc azure authentication owin access-token


    【解决方案1】:

    你有两个选择:

    1. 为您应用的会话 cookie 设置自定义会话持续时间:为此,您需要确保 OWIN 不会覆盖会话 cookie 生命周期(请参阅下面的链接了解如何使用 OpenIdConnectAuthenticationOptions 执行此操作)。
    2. 向您的应用添加会话更新逻辑:一种方法是在您的应用中使用 iframe 路由来生成授权请求。

    Vittorio 在他的博文中详细介绍了这一点:Controlling a Web App's session duration

    【讨论】:

    • 我刚刚尝试实现这个 iframe 解决方案,因为它似乎更好,但是,它似乎不喜欢我在 layout.cshtml 中使用 documentconsole。有什么想法吗?
    • 您需要更加具体。您面临的具体问题是什么?
    • The name document does not exist in the current context 将 setInterval sn-p 从您链接的页面放入我的 layout.cshtml 时。
    • 抱歉,我一定是无意中删除了 标签。我现在就测试一下
    • 当您离开页面然后检索它并在页面加载时从该点启动计时器时,您是否知道一种将计时器值存储在 cookie 或类似物中的方法。目前它不会一直执行重新身份验证,因为计时器会在页面加载时重置
    猜你喜欢
    • 1970-01-01
    • 2018-02-14
    • 2017-07-21
    • 2013-04-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-18
    • 2016-08-04
    • 1970-01-01
    相关资源
    最近更新 更多