office365 — Office 365 サブスクリプション監視システム(軽量)

Web

概要

这个仓库实现了一个轻量级的 Office 365 订阅监控系统。機能は主にサブスクリプションの状態監視、Webhook 通知、ユーザー管理、デバイスのアクティベーション検索、24時間ごとの定期検査などです。Cookie 認証の有効性やパスワードの誤入力、契約期限の接近(30日以内)や失効といった条件で自動的に通知を送る設計になっており、小規模な運用やセルフホスティング環境に適したシンプルな監視ツールです。

GitHub

リポジトリの統計情報

  • スター数: 14
  • フォーク数: 4
  • ウォッチャー数: 14
  • コミット数: 2
  • ファイル数: 18
  • メインの言語: Python

主な特徴

  • サブスクリプション状態の自動検出と手動検査
  • Webhook を用いたカスタム通知(例:メールやチャット連携が可能)
  • ユーザー管理(追加機能。curl 値を利用しての追加フロー)
  • デバイスのアクティベーション状態確認と24時間周期の定期検査

技術的なポイント

本プロジェクトは Python ベースで、app.py をエントリとして Web ダッシュボードや API を提供し、checker.py が実際の検査ロジックを担う設計が想定されます。監視対象の判定は「残日数 ≤ 30」「契約失効」「Cookie 認証失敗」「パスワード誤入力」といったルールに基づき、条件に合致した際に設定済みの Webhook に対して通知を送信します。ユーザー追加は「抓包(パケットキャプチャ)データ」や curl のヘッダ値を用いるフローが README に記載されており、内部的には HTTP リクエストの再現と API 呼び出しによってライセンス割当を行う設計です。定期実行は「毎24時間」と明記されており、cron や schedule ライブラリ等でのスケジューリングを想定できます。運用上の注意点として、Cookie や認証情報を扱うため機密情報の安全な保存(環境変数、暗号化ストレージ)と転送先 Webhook の署名検証などのセキュリティ対策が重要です。また、外部 API 呼び出しの失敗やレート制限に対するリトライ/バックオフ処理、ログと監査記録の出力が安定運用には有効です。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitignore: file
  • README.md: file
  • app.py: file
  • checker.py: file
  • config_manager.py: file

…他 13 ファイル

README の抜粋(要点)

  • 概要:軽量な Office 365 订阅监控系统
  • 使用方法:依存パッケージを pip でインストールし、python app.py で起動
  • 主要功能:订阅状态监控、Webhook 通知、用户管理、设备激活查询、定时检测(24小时)
  • 通知触发条件:订阅即将到期(≤30天)、订阅已失效、Cookie 失效、登录密码错误
  • 添加用户:抓包データの入力と curl 值 設定が必要

運用と拡張の提案

  • 認証情報管理: 機密情報は環境変数か Vault (HashiCorp Vault 等) へ移行することを推奨します。
  • 通知の信頼性向上: Webhook に対する署名/検証を実装し、通知受信側での認証を行うと安全性が高まります。
  • ロギングと監査: 検査結果、通知履歴、ユーザー追加のアクションは永続的に記録してトラブルシュートを容易にします(ファイル・DB・外部ログ収集)。
  • スケーラビリティ: 小規模向けの設計ですが、複数テナント対応や並列チェックが必要な場合はジョブキュー(Celery 等)や DB を導入して拡張できます。

まとめ

シンプルで手軽に導入できる Office 365 ライセンス監視ツール。小規模運用に最適。

リポジトリ情報: