要約
- 10月28日の個人草案は、IPv4・IPv6プレフィックスを直接載せる
client_ip_rangesと、HTTPSのJSON文書を指すclient_ip_ranges_uriを提案する。二つは併用できない。登録や取得に成功しても、認可サーバーがその範囲を受け入れたことにはならない。 - 取得失敗、不正な文書、申告の取り下げだけで、以前拒否していた送信元を通してはならない。サーバーは旧集合を維持し、審査中の新集合との共通部分まで狭め、保存期限を設けられる。期限が切れたら、受入れか明示的な運用判断までクライアントの要求を拒む。
申告書は届いても、入場判定は残る
クラウドの出口を替えたクライアントが、新しいIP一覧をHTTPSで公開する。認可サーバーの取得ログは成功。それでも新しい出口からのトークン要求は通らない。草案はこの時間差を前提にしている。文書の取得と、そこに書かれた範囲を受け入れる判断を分けた。広すぎるプレフィックスが突然追加されても、更新時刻だけで許可にはならない。
申告の形式は二つ。メタデータに直接アドレスを書き込むか、JSON文書のHTTPS URLを示すかだ。どちらもない場合は申告なし。空配列は「許す送信元が一つもない」という申告になる。RFC 7592の更新処理との関係でも、草案は空配列をフィールド削除の指示として扱わせない。空集合を受け入れて適用するサーバーなら、どの送信元も通さない。
新しい集合の受入れは旧集合の全面置換であり、差分の逐次追加ではない。検証済みの新集合が承認待ちなら、サーバーは旧集合を両者の共通部分まで狭めてもよい。古い出口だけ先に閉じ、新しい出口は審査が終わってから開けられる。クライアント側は移行前に新しい範囲を申告し、古い出口から実際に送らなくなるまでそれを残す必要がある。HTTPの再取得間隔と承認の待ち時間は切替日程に入る。
文書が取れなかったからといって門は全開にならない。不正なデータや申告の取り下げでも、従来拒んだIPを自動的に通せない。取り下げ後に制限を緩めるなら、運用者の明示的な判断が要る。サーバーは、障害、取り下げ、未承認の置換中に旧集合をいつまで使うか期限を定めるべきだ。期限後は現在の申告に基づく集合を受け入れるか、明示的に適用を終えるまで要求を拒む。未承認の候補を再検証しても、その時計は巻き戻らない。
古い許可を抱え続けるのも危うい。クライアントが手放したIPは別の利用者に割り当てられ得る。旧集合の共通部分への縮小と保存期限は、この取り違えを短くする。RFC 9111が扱うHTTPキャッシュと、サーバーが受け入れたIP集合は別の状態だ。304 Not Modifiedは内容の再確認であって、運用上の承認ではない。
トークン窓口の手前のファイアウォールに見えるのは送信元IPであり、OAuthクライアントの身元ではない。そこでは複数クライアントの範囲を合わせた制御しかできない。認可サーバーはクライアントを特定してから個別の集合を適用できる。URLを署名したソフトウェア声明も、そのURL先の将来の内容までは保証しない。文書を預かる側が空集合を出したり長く停止したりすれば、クライアントを締め出せる。
IETFの記録は個人草案を示し、実運用の測定結果はない。移行を試すなら、取得した版、受け入れた集合、承認時刻、古い範囲の終了時刻、前後のトークン要求結果を並べるべきだ。
会員向け解説
プロフィールの詳細
適切な会員レベルでログインすると、解説全文と出典メモをご覧いただけます。
ストラテジックサークル限定
Strategic Circle
すべての読者に公開されています。参加してログインすると プロフィール解説 を閲覧できます。
Strategic Circle に参加Leadership Alliance 会員限定
Leadership Alliance
対象となる IP 資産の所有者・管理者向けです。ログインすると Leadership Alliance の解説を閲覧できます。
Leadership Alliance に参加





