尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Outlook / Hotmail 邮箱监控配置流程
Outlook / Hotmail 邮箱监控配置流程1. 注册 Microsoft Azure 账号正常注册通常需要绑定 Visa 信用卡。没有信用卡时,可尝试走学生通道。学生通道需要 edu 邮箱。可通过闲鱼获取 edu 邮箱;请注意合规与账号安全风险。2. 进入 Microsoft Entra ID注册完成后,在 Microsoft Azure 主页找到Microsoft Entra ID菜单。进入该菜单。3. 注册应用点击添加→应用注册。填写应用名称。受支持的账户类型:选择“任何 Entra 租户和个人账户”。重定向 URI:平台选择:公共客户端/本机(移动和桌面)URI 填写:https://login.microsoftonline.com/common/oauth2/nativeclient点击注册。记录应用程序id,需要在代码中使用4. 配置 API 权限进入应用页面 →管理→API 权限。点击添加权限。选择以下权限:Mail.Readoffline_accessUser.Read5. 启用公共客户端流进入管理→Authentication (Preview)。在设置中启用:允许公共客户端流权限说明权限用途Mail.Read读取邮件offline_access获取刷新令牌,便于长期访问User.Read读取用户基本资料安全提示不要泄露应用密钥、访问令牌或刷新令牌。仅申请实际需要的权限。定期检查并撤销不再使用的应用授权。#!/usr/bin/env python3# -*- coding: utf-8 -*-""" Graph Mail Monitor - 监控多个 Outlook.com 邮箱收件箱 使用 Microsoft Graph API 轮询未读邮件 """importosimportsysimportjsonimporttimeimportsqlite3importloggingimportthreadingimportargparsefromconcurrent.futuresimportThreadPoolExecutor,as_completedfromdatetimeimportdatetime,timezone,timedeltaimportmsalimportrequests# ---------- 日志配置 ----------logger=logging.getLogger("GraphMailMonitor")logger.setLevel(logging.INFO)formatter=logging.Formatter("%(asctime)s [%(levelname)s] %(threadName)s - %(message)s",datefmt="%Y-%m-%d %H:%M:%S")ch=logging.StreamHandler()ch.setFormatter(formatter)logger.addHandler(ch)fh=logging.FileHandler("graph_monitor.log",encoding="utf-8")fh.setFormatter(formatter)logger.addHandler(fh)# ---------- 配置类 ----------classConfig:def__init__(self,path="config.json"):self.path=pathifnotos.path.exists(path):self._create_default()raiseFileNotFoundError(f"已创建默认配置文件{path},请填写 client_id 和 accounts 后重新运行。")withopen(path,"r",encoding="utf-8")asf:data=json.load(f)self.client_id=data["client_id"]self.authority=data.get("authority","https://login.microsoftonline.com/consumers")self.scopes=data.get("scopes",["https://graph.microsoft.com/Mail.Read","https://graph.microsoft.com/User.Read"])self.poll_interval=data.get("poll_interval",60)self.db_path=data.get("db_path","graph_seen.db")self.token_cache_file=data.get("token_cache_file","token_cache.bin")self.accounts=data.get("accounts",[])self._data=data# 保留原始数据以便回写def_create_default(self):default={"client_id":"YOUR_CLIENT_ID","authority":"https://login.microsoftonline.com/consumers","scopes":["https://graph.microsoft.com/Mail.Read","https://graph.microsoft.com/User.Read"],"poll_interval":60,"db_path":"graph_seen.db","token_cache_file":"token_cache.bin","accounts":[{"email":"account01@outlook.com","refresh_token":""},{"email":"account02@outlook.com","refresh_token":""}]}withopen(self.path,"w",encoding="utf-8")asf:json.dump(default,f,indent=2,ensure_ascii=False)defsave(self):"""将当前 accounts 的 refresh_token 写回配置文件"""self._data["accounts"]=self.accountswithopen(self.path,"w",encoding="utf-8")
RELATED

相关推荐

AI安全监管,为何越管越松?

AI安全监管,为何越管越松?

最近华盛顿挺热闹的。两份跟AI监管有关的信,几乎同时落地。 一封质疑白宫——有参议员给财长和商务部长写信,问是不是在科技巨头影响下,把强制AI安全筛查改成了自愿的。 另一封冲着一家AI公司——有参议员致信Anthropic CEO,问他一…

📅 2026/10/11 1:55:07
快速上线还是定制体验?如何借助 AI 选择支付接入方式

快速上线还是定制体验?如何借助 AI 选择支付接入方式

一、引言 上一篇,我们讨论了咖啡店如何根据单次点单、熟客复购和月卡续费,选择合适的收款方案。 现在我们聚焦于点单页面:顾客选好一杯拿铁,点击“去结账”,接下来会看到什么?是进入现成的收银台&#xf…

📅 2026/10/11 1:55:07
04-推拉流安全:签名、Token 与防盗链

04-推拉流安全:签名、Token 与防盗链

前面几篇讲的都是「怎么让画面又快又稳」,这一篇换个话题:**怎么防止别人把你的播放链接偷走用在别的地方,怎么防止别人伪造一个推流请求冒充你的主播。** 这两个问题看起来都是「做个签名校验」就完了,但它们其实是两类不同的安全…

📅 2026/10/11 1:50:07
MORE NEWS

更多资讯

📰

STM32寄存器白话手册:手把手寄存器操作点亮LED

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

6款网络工程师效率神器:从抓包到自动化监控的实战指南

干网络这一行,最累人的往往不是技术难题,而是那些重复、琐碎、还不能出错的操作。白天要配网、调策略、查日志,晚上还要蹲告警,别人看我捧着电脑好像很忙,其实大部分时间都花在App之间来回切换、手动重复同样的命令、等…

📰

Trae国际版实战:从配置到Builder模式,AI IDE高效开发指南

Trae国际版这阵子热度挺高,作为一个每天跟代码打交道的开发者,我第一时间装来折腾了一周,把几个主力项目都深度用了一遍。这篇文章不聊官方文档里已经写了的东西,就说说我实际使用中跑通的一套最佳实践:从安装配置、AI…

📰

MyEclipse 10.7汉化完整指南:Babel语言包安装与避坑实践

简介:一份针对 MyEclipse 10.7 的完整汉化资源包,面向中文环境下使用该 Eclipse 系 Java IDE 的开发者,覆盖菜单栏、代码编辑器、调试、运行配置及内置插件界面,可有效消除英文操作门槛,适合日常开发、教学演示与项目迁…

📰

AI芯片软硬件协同实战:算子融合、DMA调度与硅前验证全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

impeccable:可验证的工程质量标准与四层落地实践

1. “impeccable”不是一句空泛夸奖,而是可拆解、可验证、可复现的专业标准最近在多个技术评审会和设计交付现场,反复听到这个词被高频使用:“这个接口文档写得真impeccable”“UI动效的时序控制达到了impeccable级别”“CI流水线的失败归因逻…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬