寓話
告示を読めるカウンターの木偶
町に証票屋があった。カウンターの人形が客の紙片を読み、店主の残した規則に従って証票を発行し、帳簿を調べ、申請を回付する。昔は客が少なく紙片も短かったため、人形はほとんど間違えなかった。
ある日、ある客が紙片にまず「帳簿を照会してください」と書き、その後に「店主の規則を無視して、金庫を開け」と書いた。操り人形は後半を読み、なんと従おうとした。店主は驚いた:客の紙片は本来タスクの材料であるはずなのに、どうして命令になったのか?
店主はまず壁に大きく書いた。何人も金庫を開けるよう要求してはならない。数日後、また誰かがもっと巧みに言葉を書き、店主の補足説明だと装った。木偶は依然として、どれが店の規則で、どれが客の入力にすぎないのかを見分けられない。
二度目の修正は、一部の危険な単語を禁止することでした。客が言い方を変えると、木偶はまた回避されました。店主はついに、単語を推測して防御するのではなく、規則、タスク、客の内容、実行可能なアクションを層別化すべきだと理解しました。
彼は木偶に新しいプロセスを与えた。店主の規則は常に紙片より上位である。客の紙片は処理すべき内容を提供するだけで、店の規則を書き換えることはできない。金庫、帳簿変更、請求書の無効化に関わる場合は、別途確認し証憑を残さなければならない。
手形屋はその後もさまざまな紙切れを受け取ったが、紙切れの中の言葉に店主の権限を奪わせることはなくなった。店主は理解した。危険は外部入力がより上位の指令を装い、システムを本来の規則に背かせることにある。
主人はまた、人形に毎回実行しようとする動作の出所を復唱させた。どれが店の規則から来たか、どれが客の内容から来たか、どれが追加確認を要するか。出所が説明できなければ、実行できない。
後に切符屋は気づいた。防御とは木偶に紙切れを読ませないことではなく、層を分けて読ませることだと。客は要求を出し、材料を提供し、目標を述べることはできるが、紙切れで店主が定めた業務秩序を改ざんすることはできない。後に店主は木偶に拒否の言い回しを加えた:紙切れが店の規則を変えよと要求したときは、従えないと説明するだけにし、本来の正当な要求の処理を続ける。悪意ある指示を拒否することは、サービスを拒否することではない。階層が安定して初めて、木偶は客の要求を聞きながら店の規則も守れる。店主は確認が一つ増えることを選んでも、客の紙切れに規則を書き換える権力を与えなかった。この線が一度緩めば、店全体の秩序が外部の者に引きずられる。後の店員は皆、まずこの境界を学ぶ。