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

是否可以限制Azure站点的可访问时间段?

限制Azure静态网站仅办公时段可访问的几种实现方案

以下方案按实现难度从低到高排序,可根据实际需求选择:

  • 最低改造成本方案:前置WAF/CDN规则拦截
    给托管静态网站的Azure存储账户前置配置Azure Front Door或者Azure CDN,直接用服务自带的规则引擎做时间匹配即可:
    • 配置自定义规则的匹配条件为请求时间,指定允许访问的时段范围(比如周一至周五9:00~18:00)
    • 非匹配时段的请求,规则动作直接设置为返回403状态码
      全程不需要修改静态站点本身的任何代码,规则生效速度快,是最推荐的生产环境方案。
  • 零额外成本方案:前端代码本地校验
    不需要新增任何Azure服务开销的情况下,可以直接在静态站点的入口JS里加时间判断逻辑,示例代码如下:
    // 自定义办公时段规则
    const allowedRule = {
      weekdays: [1, 2, 3, 4, 5], // 周日为0,周一至周五对应1-5
      startHour: 9,
      endHour: 18
    }
    const currentTime = new Date();
    const currentWeekday = currentTime.getDay();
    const currentHour = currentTime.getHours();
    const isAllowedTime = allowedRule.weekdays.includes(currentWeekday) 
      && currentHour >= allowedRule.startHour 
      && currentHour < allowedRule.endHour;
    // 非允许时段直接替换页面内容
    if (!isAllowedTime) {
      document.body.innerHTML = '<h1>当前为非办公时段,站点暂不开放访问</h1>';
    }
    
    注意该方案校验逻辑在客户端执行,存在被技术人员绕过的可能,仅适合安全要求不高的内部使用场景。
  • 高安全灵活方案:服务端代理校验
    如果需要服务端强校验又不想用WAF,可以给静态站点配置Azure Functions代理,所有访问请求先经过Function做时间校验,符合条件才返回静态资源,不符合要求直接返回拦截页面,灵活度最高,可以支持更复杂的时段规则。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 20:24:02