セッションは、サインイン時に与えられたトラストの上に無制限に運ばれてはならない
多くのゲートウェイはユーザーをサインイン時に一度検証し、その後はセッションの有効期限が切れるまで信頼できると仮定します。この仮定は楽です — そして失敗したときに高くつきます。
クッキーは盗まれ、別の国からリプレイされます。ユーザーがサインインしている間にブラウザセッションが乗っ取られます。3人の管理者が単一の特権アカウントを密かに共有します。信頼済みデバイスでサインインしたユーザーが離れ、カフェのノートPCでセッションを開いたままにします。これらの瞬間のどれも新しいサインインをトリガーしません;だからこそ、どれもサインインの瞬間だけを見るトラストモデルでは捕捉されません。
もう一方の極端 — 短く、頻繁な間隔での再認証 — は問題を解決せずに正当なユーザーを罰します;なぜなら2つのチャレンジの間の時間は依然として何でも起こりうるウィンドウだからです。
サインイン時に得たトラストは、セッションが進むにつれて継続的に再評価されなければなりません — すべてが正常に見える間は静かに、正常に見えない瞬間には断固として。
私たちのアプローチ
セッションは単一のエンジンを通じてバインドされ、監視され、制限され、終了されます。
すべてのセッションは一致し続けなければならないフィンガープリントを持つ
サインイン時、セッションはユーザーのIP、user agent、デバイスフィンガープリントとバインドされます。その後のすべてのリクエストはこれらのバインディングに対してチェックされます。不一致は静かに見過ごされません — バインディング異常フローがトリガーされ、このフローはポリシーに応じて再認証、制限、またはセッション終了を行えます。
何かが変わったとき、再同期が新鮮な評価を強制する
アクセスポリシーが変わったとき、属性が更新されたとき、またはセッション内でリスクが高まったとき、AAMは強制的な再同期を開始できます — トラストコンテキストが再構築され、条件付きアクセスポリシーが再評価され、新しいルールがユーザーをサインインページから最初からやり直させることなく適用されます。
同時セッションは制限され、無制限ではない
単一のユーザーが無制限の数のアクティブセッションを持つことはできません。上限はユーザーグループとサービスに応じて構成されます。これにより、特権アカウントが3人のオペレーターの間で密かに共有されることや、コントラクターのノートPCが何十もの並行サインインに開かれることがありません。
ログアウトは一つのタブだけでなく、すべての扉を閉じる
あるアプリケーションからのログアウトはゲートウェイでセッションをクリアし、接続されたすべてのサービスへ波及します。盗まれたトークンは使えなくなり、断片的なログアウトがバックグラウンドタブを認証済みのまま残さず、一日の終わりのログアウトは本当に一日を閉じます。
ケイパビリティ
一度限りのサインインを継続的なトラストに変えるセッション制御.
セッションバインディング — IP、user agent、デバイスフィンガープリントが一致し続けなければならない
認証済みの各セッションは、元のIP、user agent、サインイン時に計算されたデバイスフィンガープリントにバインドされます。これらのシグナルのいずれかの不一致はバインディング異常フローへ導きます:そのサービスの条件付きアクセスポリシーに応じて、再認証、安全なリソースへの制限、セッション終了、またはログ記録と警告。
強制的なセッション再同期 — ユーザーを最初からやり直させずにトラストを更新する
セッションを認可したポリシーが変わったとき、属性が更新されたとき、または外部シグナルが要求したとき、AAMは再同期を開始できます。トラストコンテキストが再構築され、条件付きアクセスポリシーが再評価され、セッションは続行します — ユーザーがサインインを繰り返したり進行中の作業を失ったりすることなく。
アイドルおよび絶対セッションタイムアウト
セッションは2つのカウンターで終わります:ユーザーが非アクティブのときに動くアイドルタイムアウトと、アクティビティに関係なく動く絶対タイムアウト。両方ともサービスグループに応じて構成されます;低リスクのイントラネットアプリケーションは一日中開いたままでありえる一方、特権管理者セッションは短い非アクティブのウィンドウの後に終わります。
ユーザーおよびサービス単位の同時セッション上限
管理者は、ユーザー、グループ、サービス単位で最大アクティブセッション数を定めます。上限に達すると、新しいサインインは拒否されるか、最も古いセッションを置き換えるか、明示的な確認を求めます — 静かなアカウント共有を防ぎ、異常なサインイン集中を即座に明るみに出します。
接続されたサービス間の包括的なシングルログアウト
あるアプリケーションからログアウトすることがゲートウェイでクリーンなセッション終了をトリガーし、その後接続されたすべてのサービスへ波及します。別のタブでアクティブなまま残った孤児セッションはなく、忘れられたブラウザに依然有効なトークンはなく、ユーザーが完了したと思った断片的なログアウトはありません。
進行中の作業を落とさないセッション喪失リカバリー
セッションが一時的に失われた場合 — 短いストレージのしゃっくり、強制的な再同期、短いネットワーク断 — ユーザーは、アイデンティティを再認証してコンテキストを復元するリカバリーページに着地します。フローは意図的で監査されます。静かな再ログインではありません;攻撃的なリカバリー試行は通常のトラフィックに紛れられません。
運用上の深さ
継続的な評価を信頼でき、速く、監査可能にする基盤。
Redis経由で連携するステートレスなゲートウェイポッド
セッション状態はRedisに宿ります;これにより任意のゲートウェイポッドが任意のセッションを任意のステップで引き継げます。バインディングチェック、再同期トリガー、同時セッションのカウントが、水平スケールされたデプロイメントでポッド間の連携負荷なしに一貫性を保ちます。
イベント単位の監査証跡
各セッションイベント — バインド、不一致検出、再同期強制、タイムアウト発火、同時上限到達、ログアウト — がタイムスタンプ、送信元IP、user agent、アウトカムとともに構造化された監査エントリーを書き込みます。セッションは監査ログから単一のタイムラインで再構築でき、フローはプラットフォームのSIEMストリーミング先へ送られます。
セッション内ステップアップMFAオーケストレーション
セッションがステップアップを必要とするとき — リスクが高まった、ユーザーがより機微なリソースに到達した、ポリシーがそれを要求している — トラスト評価器は、条件付きアクセスポリシー内のMFAアクションに委譲します。ユーザーは追加要素だけを完了します;セッション自体は再ログインせずに続行します。
特権リソース向けの読み取り専用ダウングレード
トラストが下がったとき、セッションを直接落とす代わりに、ポリシーはそれを読み取り専用モードに下げられます — ユーザーが行った作業を見続けることを許しつつ破壊的な操作を防ぎます。ユーザーは明確な警告を見ます;セキュリティチームは判断を監査フローで見ます。
どのシナリオで使われるか
盗まれたセッションクッキー
セッションクッキーを漏洩させて別のネットワークとブラウザからリプレイする攻撃者は、最初のリクエストがゲートウェイに到達した瞬間にバインディング不一致で捕捉されます — ユーザーの次のサインインを待つことなく。
セッション内の地理またはデバイスの変化
セッション内で送信元IPが国を変える特権オペレーターは、次の機微なアクションの前に追加のMFAへ引き上げられます;管理された姿勢から外れたエンドポイントは、デバイスがコンプライアンスに戻るまでセッションが読み取り専用モードに下げられます。
静かなアカウント共有
3人のオペレーターが密かに共有する単一の特権アカウントは、同時セッション上限と監査タイムラインで明るみに出ます — 誰も共有していると認める必要なく、単一のクエリから可視になります。
セッション単位のコンプライアンス証拠
PCI-DSS、HIPAA、GDPR、ISO 27001の監査は、特権セッションが制限され、監視され、クリーンに終了されたことを示す証拠を求めます。イベント単位の監査は各セッションに単一のタイムラインを与えます;監査人はそれを手動の再構築なしに再生します。
よくある質問
セッションバインディングはどのシグナルで一致させますか?
ユーザーは同時に何個の同時セッションを持てますか?
セッション内でトラストが下がるとどうなりますか?
ログアウトは一つのタブを終了しますか、それともすべての接続セッションを終了しますか?
トラストを仮定下ではなく評価下に保つ
バインディング、ライフタイム、同時上限、ログアウトのための単一のエンジン — すべてのセッションイベントが監査されます。あなた自身のアプリケーション上のライブセットアップでご案内します。