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

本地Microsoft登录遇AADSTS50011错误 求离线mock解决方案

可行的本地离线Mock解决方案

下面是3种不需要访问Azure AD、完全离线可用的方案,可根据你的开发需求选择:

方案1:直接使用现成的OIDC Mock Docker镜像

这是最贴合你需求的方案,用专门模拟OAuth2/OIDC身份提供商的轻量镜像,完全复现login.microsoftonline.com的授权接口行为,固定返回你预设的鉴权通过结果:

  • 直接在你的docker compose配置里新增mock服务即可,参考配置如下:
services:
  mock-azure-ad:
    image: ghcr.io/navikt/mock-oauth2-server:latest
    ports:
      - "8080:8080"
    environment:
      # 端口可自定义
      - SERVER_PORT=8080
      # 替换为你应用实际使用的客户端ID
      - OAUTH2_CLIENTS_0_CLIENT_ID=your-app-client-id
      # 替换为你应用的实际回调地址
      - OAUTH2_CLIENTS_0_REDIRECT_URIS_0=http://localhost:你的应用端口/回调路径
      # 自定义固定返回的用户信息,可按你的业务需求增减字段
      - OAUTH2_CLIENTS_0_CLAIMS={"sub":"test_local_user_001","name":"本地测试用户","email":"test@local.dev","preferred_username":"testuser"}
  • 配置完成后修改本地应用的OIDC配置,把原login.microsoftonline.com的地址替换为http://localhost:8080即可,所有授权跳转、token签发、token校验逻辑都走本地mock服务,不需要任何公网请求。

方案2:Hosts拦截+本地反向代理实现模拟

如果不想额外引入新的服务镜像,可通过本地请求拦截实现:

  • 修改本地hosts文件,将login.microsoftonline.com指向127.0.0.1
  • 本地启动Nginx/Caddy反向代理监听443/80端口,拦截所有微软登录的请求,直接按OAuth2授权流规则,重定向回你的应用回调地址,带上你提前生成好的固定合法授权码/Token即可,Token签名密钥和你应用配置的校验密钥保持一致即可通过校验。

方案3:应用层本地开关跳过真实鉴权

开发调试阶段最快的方案,不需要额外部署任何服务:

  • 在应用代码里增加本地环境判断开关,当识别到是本地开发环境时,跳过跳转微软登录的逻辑,直接在会话里注入你预设的测试用户信息,即可直接进入登录后状态。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 05:45:03