条件付きアクセス制御リストの使用
ファイルアクセスに使用するプログラムを条件として、ファイルへのアクセス権を指定することができます。このようにファイル アクセスを条件付きにすることを、Program Pathing といいます。
capamsc141jp
ファイルアクセスに使用するプログラムを条件として、ファイルへのアクセス権を指定することができます。このようにファイル アクセスを条件付きにすることを、Program Pathing といいます。
注:
ファイルにアクセスする条件として指定されたプログラムがシェル スクリプトの場合、そのシェル スクリプトの 1 行目は「#!/bin/sh」である必要があります。シェル スクリプトでは、「#!/bin/sh」の行はコメントとして扱われて処理されないため、# /home/test/test.sh または # sh /home/test/test.sh 以降のシェル スクリプトを実行しないでください。例: このコードは、パスワード変更プログラム /bin/passwd を使用するすべてのプロセスに対して、/etc/passwd ファイルの更新を許可する例です。/bin/passwd 以外から行われた、/etc/passwd ファイルに対するアクセスの試みは、すべてブロックされます。
newres FILE /etc/passwd owner(nobody) defaccess(R) authorize FILE /etc/passwd gid(users) access(U) via(pgm(/bin/passwd))
newres コマンドは、/etc/passwd ファイルを
Privileged Access Manager Server Control
に定義します。このコマンドは、ファイルの所有者も含むすべてのユーザに対してファイルの読み取りを許可します。下の authorize コマンドは、/bin/passwd プログラムの制御下でアクセスが行われた場合に、すべてのユーザにファイルへのアクセスを許可します。この方法でパスワード ファイルを保護すると、ユーザが /bin/passwd プログラムを使用していない場合は、トロイの木馬による /etc/passwd ファイルへのエントリの追加や、users グループのユーザによるパスワード ファイルの更新がブロックされます。条件付きアクセス リストは、データベース管理システム(DBMS)のファイルに対するアクセスを制御する場合にも役に立ちます。通常は、データベース ベンダによって提供されているプログラムやユーティリィティを使用した場合にのみ、ユーザが DBMS ファイルにアクセスできるようにします。以下のコマンドについて考えてみましょう。
authorize FILE /usr/dbms/xyz uid(*) via(pgm(/usr/dbms/bin/pgm1)) access(U) authorize FILE /usr/dbms/xyz uid(*) via(pgm(/usr/dbms/bin/pgm2)) access(U)
この 2 つの authorize コマンドは、DBMS のバイナリ ディレクトリにあるプログラム pgm1 または pgm2 のいずれかによってアクセスが行われた場合、DBMS システムのファイルである xyz へのアクセスを、すべての
Privileged Access Manager Server Control
ユーザに許可します。ユーザのオペランドにアスタリスクが使用されていることに注意してください。このアスタリスクは、Privileged Access Manager Server Control
に定義されているすべてのユーザを指定します。このアスタリスクの使用は、デフォルト アクセスの概念に類似しています。ただし、デフォルト アクセスは Privileged Access Manager Server Control
に定義されていないユーザにも適用されます。Privileged Access Manager Server Control
データベースで定義されていないユーザに対しては _undefined グループを使用できます。