セキュアで信頼性のあるシステム構築 ―Google SREが考える安全なシステムの設計、実装、保守
by Heather Adkins, Betsy Beyer, Paul Blankinship, Piotr Lewandowski, Ana Oprea, Adam Stubblefield, Kuma Arakawa, 渡邉 了介
5章最小権限を前提とする設計
執筆:Oliver Barrett、Aaron Joyner、Rory Ward
協力:Guy Fischman、Betsy Beyer
最小権限の原則(principle of least privilege)とは、アクセスが人間とシステムのどちらによるものかに関係なく、ユーザーにはタスクの実行に必要な最小限のアクセス権限のみを与えるようにするというものです。このような制限は、開発ライフサイクルの初期、つまり新機能の設計段階で追加するのが最も効果的です。不必要な権限は、ミス、バグ、侵害が発生するかもしれない領域を広げることになり、稼働中のシステムでは封じ込めや最小化のコストがかさむ、セキュリティと信頼性のリスクを生み出します。
本章では、リスクに基づくアクセスの分類方法を説明し、最小権限を適用するベストプラクティスを検討します。設定配布の例は、こうしたプラクティスが現実の環境で直面するトレードオフを示します。認証と認可のためのポリシーフレームワークを詳しく説明した後、アカウントが侵害されるリスクとオンコールエンジニアがミスを犯すリスクの両方を軽減できる、高度な認可制御について深く掘り下げます。最後に、最小権限に関する設計で生じるかもしれないトレードオフや緊張関係を理解します。理想的な世界では、システムを使用する人間は善意に基づき、完全に安全な方法で作業タスクを実行して、ミスを犯しません。残念ながら現実はまったく異なります。エンジニアは間違いをするかもしれませんし、そのアカウントが侵害されるかもしれませんし、本人に悪意があるかもしれません。こうした理由から、システムは最小権限を前提として設計することが重要です。つまりシステムはユーザーのアクセスを、目下のタスクを実行するために必要なデータとサービスに制限する必要があります。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access