Ambient authority とは

Ambient authorityは、アクセス制御システムの研究で使用される用語です。
コンピュータプログラムのようなサブジェクトは、許可されたアクションを成功させるために、関与するオブジェクトの名前およびそれらに対して実行される操作を指定する必要があるだけであれば、周囲の権限を使用していると言われています。
この定義では、
 「名前」とは、認可情報を含まず、任意のサブジェクトによって潜在的に使用される可能性のあるオブジェクトを参照する方法のことです。アクションが実行される原因となる可能性のある要求が存在する場合、そのアクションは「許可」されます。
権限は、広範に見える環境(多くの場合、必ずしも地球環境である必要はないが)に存在するという意味で「周囲」である。
たとえば、Cプログラムが呼び出しを実行して読み取りアクセス用のファイルを開いたとします。
 open( "filename"、O_RDONLY、0)
目的のファイルはファイルシステム上でその名前で指定されますが、それ自体は認可情報を含まないので、プログラムは周囲の権限を行使しています。
周囲の権限が要求されると、実行プログラムの1つまたは複数のグローバルプロパティに基づいて、そのIDまたはその役割などの権限が付与または拒否されます。そのような場合、アクセス制御の管理は、オブジェクトに関連付けられたアクセス制御リストや役割ベースのアクセス制御メカニズムなどの手段を介して、実行中のプログラムまたはプロセスへの明示的な通信とは別に処理されます。実行中のプログラムは、第1クラスの値として特定の目的のために付与された権限を明示する手段を持っていません。そのため、プログラムが自分の代わりに行動しているときにオブジェクトにアクセスできなければならないが、そのクライアントの一人のために行動するとき(またはあるクライアントを代表して他のクライアントの代わりに)行動するときではなく、 。これは必然的にそのようなプログラムが混乱した代理問題の対象となることにつながる。
「周囲の権限」という用語は、実行されるプログラムが通信されたファーストクラスのオブジェクト参照として、データを受け取ることができるようにパーミッションを受け取る、機能ベースのセキュリティ(オブジェクト機能モデルを含む)と主に対比するために使用されます。これにより、アクセス許可がどこから来たのかを判断でき、混乱した副次的な問題を回避できます。しかし、周囲の権限を回避するだけでなく、能力システムと見なされるための追加の要件があるため、「非周囲の権限システム」は単に「能力システム」の同義語ではない。
周囲の権限は、今日のコンピュータシステムにおけるアクセス制御の支配的な形態です。 UnixおよびWindowsシステムで使用されるアクセス制御のユーザーモデルは、プログラムが起動したユーザーの権限でプログラムが実行されるため、周囲の権限モデルです。これは、実行するプログラムに必然的に、自分のタスクに必要なよりも多くのアクセス権(最低特権の原則を参照)が与えられていることを意味するだけでなく、ソースまたはアクセス権の数と種類を判断できません。周囲の権威のアクセス制御モデルの下で実行されるプログラムは、ほとんどの選択肢がありませんが、権限を指定し、それらを実行しようとすると、最高のことを望んでいます。このプロパティを使用するには、プログラムをエラーなく実行するために、ユーザーまたはロールに過剰なアクセス許可を与える必要があります。