ZeroIDは、自律型エージェントとマルチエージェントシステム向けに特化した認証と認定レイヤーを実装するオープンソース認証プラットフォームです。
属性割り当ての問題
ZeroIDが対象とするコアの問題は、エージェント型ワークフローにおける属性割り当てです。オーケストレーターエージェントがタスクの一部を実行するためにサブエージェントを生成するとき、各サブエージェントはAPI呼び出し、ファイル書き込み、またはシェルコマンド実行を行う可能性があります。既存のアプローチは限定的なトレーサビリティしか提供しません。共有サービスアカウントには委譲トレイルがなく、標準的なOAuth 2.0およびOIDCフローは、エージェントが非同期で動作し、サブエージェントを生成し、各ステップで人間が関与することなく組織の境界を超える場合のシナリオを想定していません。
ZeroIDは検証可能な委譲チェーンを作成するためにRFC 8693トークン交換を実装しています。オーケストレーターがサブエージェントに委譲するとき、結果のトークンはサブエージェント自身のアイデンティティ、オーケストレーターのアイデンティティ、および元の認可プリンシパルを含みます。スコープは各ホップで自動的に減衰します。サブエージェントはオーケストレーターが既に保有していない権限を受け取ることはできません。
「エージェント時代のアイデンティティレイヤーが現在書かれています。これを正しくしなければ、強力だが根本的に説明責任のないシステムに終わるでしょう。アイデンティティインフラストラクチャは透明で検証可能である必要があります」と、Highflameの最高経営責任者であるSharath Rajasekarは述べています。
失効とリアルタイムアクセス評価
ZeroIDはOpenID Shared Signals Framework (SSF)およびContinuous Access Evaluation Profile (CAEP)を統合して、リアルタイム失効をサポートしています。委譲チェーン内のどのポイントでもトークンを失効させると、そこから派生したすべてのダウンストリームトークンが直ちに無効になります。
リクエストごとのネットワークラウンドトリップがコストが高い場合のサービス向けに、ZeroIDのSDKはキャッシュされたJWKSエンドポイントに対するローカルJWT検証を提供します。このパスはリアルタイム失効ステータスをチェックしません。レイテンシと失効の即時性の間のトレードオフは、実装するサービスに任されています。
デプロイメントとSDK
ZeroIDはPostgreSQLを基盤とするコンテナ化されたサービスとして実行されます。Docker Composeセットアップはデータベースとサーバーをローカルに起動します。Highflameはauth.highflame.aiでホストされたバージョンも運用しています。SDKはPython、TypeScript、およびRustで利用できます。
LangGraph、CrewAI、およびStrandsとの統合がリリースされたものとして記載されています。計画中の追加機能には、CLI、ワークフロー途中の帯域外ユーザー認可が必要なエージェント向けのClient-Initiated Backchannel Authentication、人間ループ承認API、およびGitHub Actions OIDC上流検証ツールが含まれます。
ZeroIDはGitHubで入手可能です。