株式会社Authlete(オースリート、本社:東京都千代田区、代表取締役:川﨑貴彦、以下Authlete)は、セイコーエプソン株式会社(本社:長野県諏訪市、代表取締役社長:𠮷田潤吉、以下セイコーエプソン)さまに弊社のOAuth・OpenID Connect(OIDC)バックエンドサービス「Authlete」をご導入いただいたことをお知らせします。 セイコーエプソンは、スマートデバイスやPCとエプソンのプリンター・複合機をインターネットを介してつなぐことで、遠隔プリントやスキャンデータのクラウドストレージへのアップロードを可能にするクラウドサービス「Epson Connect」を展開しています。また、開発者登録をしたパートナーが自社のアプリケーションにスキャンや印刷機能を組み込むことができるWeb API「Epson Connect API」を無償で提供しています。 今回、セイコーエプソンは、Epson Connect APIの新バージョン「Epson Connect API Ver. 2.0」のリリースにあたり、その認証・認可基盤にOAuthを実装するため、Authleteを採用しました。 背景 Epson Connectは2011年の提供開始以来、継続的に機能を追加し、その利用規模も当初の想定に近い水準まで拡大しました。そこで、セイコーエプソンは2024年から2025年にかけて、大量印刷にも耐えうるアーキテクチャへの抜本的な更新に着手。このアーキテクチャの刷新に合わせて、セキュリティを強化した新たなEpson Connect API Ver. 2.0(API v2)をリリースすることにしました。 また、API v2の認証・認可の仕組みについても、再設計することにしました。 要件・課題 API v2新基盤の認証・認可に求められた要件は以下の2点です。 既存の自社認証基盤の活用: 認証機能には、セイコーエプソングループが提供する複数のWebサービス用共通アカウントである「Epson Global ID」の認証基盤を利用すること。 機器単位での厳密なアクセス制御: ユーザーが許諾した特定の機器(プリンターなど)のみ操作可能なアクセストークンを発行すること。 これらの要件を満たすOAuthサーバーを自社でフルスクラッチ実装することを当初は検討しました。しかし、開発に膨大な時間がかかる上に、リリース後のセキュリティアップデートや新たな脆弱性への迅速な対応を自社リソースだけで担い続けることは現実的ではないと判断しました。 そこで、次の選択肢として、マネージドサービスであるAuth0などのIDaaS(Identity as a Service)の導入を検討しました。しかし、IDaaSによって自社開発・運用に伴う課題は解決されるものの、サービス特有の要件である「機器単位での制御を行うためのアクセストークンの発行」に対応可能かどうかが懸念となりました。 Authleteの採用理由と新たな認証・認可基盤 最終的にセイコーエプソンは、Authleteを用いた認可サーバーの内製化を選択しました。認可サーバーの機能のうち、ユーザー認証はEpson Global IDに外部化し、機器情報DBに基づくアクセストークン発行の認可ロジックは新たに実装。一方、OAuthのプロトコル処理とトークンライフサイクル管理は、AuthleteのAPIを呼び出して委譲するという構成を採用しました。 これにより、ユーザーがEpson Global IDでログインし、プリンター・スキャナーの選択画面で機器を指定すると、その機器に対する処理のみがパートナー製アプリケーションに許可されるという、要件どおりの認可フローを実現しました。 図:Authleteを採用したEpson Connect API Ver. 2.0の認証・認可基盤 Authleteの採用効果 セイコーエプソンは、Authleteの採用により、下記の効果を得ました。 自社認証基盤の活用: AuthleteはOAuth/OIDCの実装に特化したヘッドレスなAPIであり、ユーザー情報を保持しません。そのため、セイコーエプソン独自の認証基盤とスムーズに組み合わせることができ、プロジェクト期限内に認可サーバーを構築できました。 自社ビジネス固有の認可ロジックの実現: セイコーエプソンは、トークン発行時に「機器に紐づいたトークンの発行」というサービス特有の認可ロジックを組み込む必要がありました。Authleteは認可サーバーそのものではなく、プロトコル処理とトークン管理に特化したAPIであるため、このビジネス要件を完全に満たす認可ロジックを実装できました。 最新仕様への追随にかかる負担の最小化:Authleteは、セキュリ