You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为前置Application Gateway的Azure App Service设置用户空闲超时?

Azure App Service 层面配置闲置会话自动登出的方案

针对你的需求,确实可以在Azure App Service层面配置闲置会话超时,无需直接修改Entra的全局用户设置,具体可从以下维度入手:

1. 应用代码层面(精准控制,推荐)

如果Web应用是自定义开发的,可直接在应用内实现闲置检测逻辑:

  • 前端:通过JavaScript监听鼠标、键盘等用户交互事件,设置计时器,当超过X分钟无操作时,主动调用登出接口清除本地会话,并跳转至Entra登出页面。
  • 后端:针对不同技术栈配置会话超时:
    • ASP.NET Core:在Program.cs中添加配置:
      builder.Services.AddSession(options =>
      {
          options.IdleTimeout = TimeSpan.FromMinutes(X); // X为目标闲置分钟数
          options.Cookie.HttpOnly = true;
          options.Cookie.IsEssential = true;
      });
      
    • ASP.NET Framework:在web.config中配置:
      <system.web>
          <sessionState timeout="X" mode="InProc" /> <!-- X为目标闲置分钟数 -->
      </system.web>
      

2. Azure App Service 平台配置

  • 应用会话超时设置:在Azure门户进入目标App Service资源,依次打开「配置」>「常规设置」,找到「会话超时」选项,设置对应分钟数。该设置控制App Service托管的应用会话生命周期,但需注意:若应用依赖Entra身份验证会话,此设置仅管控应用层会话,需配合Entra应用级配置(而非全局用户设置)。
  • Entra应用注册级会话控制:在Entra门户找到对应应用注册,进入「令牌配置」>「会话令牌」,设置「最大闲置时间」。此配置仅针对当前应用生效,不会影响其他应用的用户会话。

3. Application Gateway 层面补充

可在Application Gateway中配置「会话超时」,但该设置主要管控Gateway与后端App Service的连接会话,无法直接触发用户登出,更多是配合应用层设置使用。

需要注意:若应用使用Entra单点登录(SSO),即使App Service层面会话超时,Entra的SSO会话可能仍存在,建议同时在前端实现闲置检测并主动触发登出,确保用户彻底退出。

内容的提问来源于stack exchange,提问作者Ian Carrick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 18:08:11