【2026/5/24更新】MT4/MT5のEAに、無料でかんたんな認証機能を追加できるツールを公開しました
はじめに
MT4 / MT5 のEAやScriptに、かんたんな認証機能を追加できるツールを公開しました。
以下のイメージで動作します。
Googleスプレッドシートをライセンス台帳として使い、Google Apps ScriptをHTTPSの認証APIとして公開します。
EAを配布するときに、
「この口座番号だけ使えるようにしたい」
「あとから利用停止できるようにしたい」
「期限付きで使えるようにしたい」
といった管理を、Googleスプレッドシート上でかんたんにできるようになります。
専用サーバーなしで無料で始められます
専用サーバーを用意する必要はありません。
GoogleスプレッドシートとGoogle Apps Scriptを使うので、Googleアカウントさえあれば無料で始められます。
設定の流れもシンプルです。
Googleスプレッドシートを作る
Apps Scriptに認証用コードを貼り付ける
Webアプリとしてデプロイする
発行されたURLをEA側に設定する
スプレッドシートに利用を許可する口座番号を入力する
これで、EA起動時に口座番号をチェックして、登録されている口座だけが利用可能な認証機能のできあがりです。
既存EAにも少ない変更で組み込めます
既存EAへの組み込みも、基本的には `.mqh` ファイルをコピーして、EA側に数行追加するだけです。
MT4 / MT5 の両方に対応しているので、どちらのEAでも同じような感覚で使えます。
本番EAでは、認証URLを埋め込み、コンパイル済みの `.ex4` / `.ex5` として配布する運用を想定しています。
通常のエンドユーザーがEAの入力画面から認証URLやAPIキーを設定したり変更したりする必要はないため、今までのような操作感となります。
HTTPS通信と非公開スプレッドシートで運用できます
セキュリティ面では、EAから認証APIへの通信はHTTPSで行います。
通常の通信経路上でAPIキーや認証パラメータが漏れる心配はありません。
また、ライセンス管理に使うGoogleスプレッドシートは非公開のまま運用できるため、外部機能に依存せず自分だけで管理することが可能です。
EAはGoogle Apps ScriptのWebアプリにアクセスし、Apps Script側がスプレッドシートの権限を確認します。
認証APIにはAPIキーも使うため、WebアプリのURLを知っているだけでは認証成功しない構成になっているため安心です。
つまり、通常の小規模なEA配布で、
HTTPS通信で認証する
Googleスプレッドシートは非公開にする
APIキーで認証APIへのアクセスを制限する
口座番号・サーバー名・製品名・有効期限で利用可否を判定する
という形で、無料かつシンプルにライセンス管理を始められます。
小規模なEA配布に向いた軽量な認証機能です
次のような用途には、かなり扱いやすい仕組みです。
まずは無料で認証を入れたい
専用サーバーなしで始めたい
Googleスプレッドシートで利用者を管理したい
小規模なEA配布で最低限の利用制限を入れたい
MT4 / MT5 の両方で同じように使いたい
追記(2026年5月26日): ライセンス申請ポータルを追加しました
バージョンアップで、ライセンス申請ポータルという追加機能を公開しました。
どんな機能?
これまでは、スプレッドシートに口座番号を手動で入力してライセンスを管理していました。
利用者が増えてくると、「申請を受け取る → スプレッドシートに追記する」という作業が地味に手間です。
ライセンス申請ポータルを使うと、この流れが半自動になります。
利用者がGoogleフォームで申請
↓ 自動
利用者に受付メールが届く
↓ 自動
管理者に確認URLが届く
↓ 管理者が承認/否認を選ぶ
licensesシートに自動反映 + 利用者にメール通知利用者はGoogleフォームで申請する
利用者は口座番号・製品名などをGoogleフォームに入力して申請を送ります。
申請後、すぐに受付確認メールが自動で届きます。
管理者は届いたURLを開いて承認するだけ
申請が届くと、管理者に確認URLが記載されたメールが届きます。
URLを開くと、申請内容と承認/否認ボタンが表示されます。
「承認」を押すと、licensesシートへの反映と利用者への承認メール送信が自動で行われます。
スプレッドシートを直接触る必要がありません。
追加コストはゼロ
Googleフォーム + Google Apps Scriptだけで動きます。
サーバーも有料サービスも不要です。
使う・使わないは任意
ポータル機能はオプションです。
「スプレッドシートに直接入力するだけで十分」という場合は、`Spread.gs` だけ使えばOKで、`Form.gs` は設定しなくて構いません。
詳しくは別記事で
セットアップ手順と利用フローの詳細は、以下の記事でまとめています。
→ 【追加機能】MT4/MT5 EA向けライセンス申請ポータルの使い方(※リンク追加予定)
導入方法
詳しい設定手順はREADMEにまとめています。
導入するときはREADMEの手順に沿って進めてください。
また、詳細仕様やセキュリティ面を確認したい場合は、docs配下の補足資料やセキュリティ監査レポートも参照してください。
導入前や導入時の質問等は、以下にリポジトリ内容丸ごと入れたNotebookLMも用意したので活用して確認してください。
無料で使えるものとなっており特に販売している物でもないのですが、同様に困っている方のために良かったら拡散ご協力いただけますと幸いです。


コメント