寓話
開けられる鍵と、開ける勇気のない箱
老孫はある銀行の技術部で機関の運用アシスタントを担当していました。稼働前に、セキュリティチームはアシスタントに完全な鍵を配りました。巡検記録を読み、変更簿を調べ、非核心の水車を再起動できる。リストは細かく、各項目が具体的な鍵穴に対応していました。
ローンチ第一週、助手は人を焦らせるほど保守的だった。貯水池が満杯に近づいても、警報は見えるのに夜勤に転送した。エンジニアは真夜中に起きて手動で放水した。この鍵は明らかに助手の手の中にあるのに。老孫は意思決定記録を調べ、それがこの件を独立処置の範囲を超えると判断していたことを発見した。
老孫は問題が権限層ではなく職権層にあると気づいた。権限が答えるのは「どのインターフェースを呼べるか」であり、職権が答えるのは「どの操作を人間の承認を経ずに自分で決めて行えるか」である。接続プールの再起動は権限リストでは許可されているが、助手の職権設定ファイルでは「高リスク操作、人的確認が必要」とマークされていた。
老孫と安全チームは職権配置を再整理した。彼らは百二十余りの権限を三つの等級に分けた:自動実行等級には記録ローテーション、キャッシュクリア、基本ヘルスチェックが含まれる。提案等級にはパラメータ調整、リソース拡張の提案が含まれる——助手が提案し、人間が確認後に実行する。禁止等級には取引データに関わるあらゆる操作が含まれ、技術的に権限があっても自律的な意思決定は許されない。
調整後、アシスタントの独立運用カバー率は十七パーセントから六十三パーセントに上がった。データベース接続プールが満杯になると、アシスタントが自動検知し、自動実行枠と判断して直接再起動する——当直エンジニアはようやく夜を通して眠れるようになった。ただし取引ルーティング設定の変更は、アシスタントの権限がどれほど大きくても人間の確認が必要だ。
セキュリティ監査で、監査人は老孫に尋ねた。あなたたちは助手の越権操作をどう防ぎますか?老孫は二層制御図を示した。外層は権限境界、門孔レベルのアクセス制御で、接続できるかどうかを管理する。内層は職権境界、意思決定レベルの自律範囲で、自分で決められるかどうかを管理する。権限は鍵屋が作った鍵、職権は門番の判断基準だ。
ある時、脆弱性スキャナがアシスタントのある操作を異常行動と誤判定し、セキュリティ警告を出した。老孫が調査したところ、アシスタントの権限境界も職権境界も突破されていなかった。それは職権範囲内で権限が許す操作を実行しただけで、操作パターンが従来と異なっていた。監査チームはこれに基づき新たなルールを加えた。権限記録と職権決定記録を別々に保存し、相互比較で技術違反か決定異常かをより早く特定できるようにした。
年末総括で、老孫は一言を書いて自分の席に貼った。「鍵が扉を開けたからといって、入るべきとは限らない。」権限は鍵であり、職権は入る判断である。鍵が少なすぎれば効率に影響し、入る判断ができなければ安全に影響する。二つのルール、二つの台帳。