lpacl 情報

目的

Resource Monitoring and Control (RMC) サブシステムによって提供されるアクセス制御を使用して最小特権 (LP) コマンド・リソース・クラスとそのリソースを保護することについての一般情報を提供します。

説明

RMC は、アクセス制御リスト (ACL) を介してそのすべてのリソースおよびリソース・クラスへのアクセスを制御します。これには 2 種類の ACL 実装を使用します。RMC が使用する実装は、どのクラスが関係しているかによって決まります。これらの実装間の主な相違点は、1) ACL が表示され、変更されるメカニズム、および 2) ACL が個別のリソースに関連付けられているかどうかです。

RMC は、そのリソースおよびリソース・クラスに対するアクセス制御を次のようにして実装します。
  1. ctrmc.acls ファイルのリソース・クラス・スタンザによって定義された ACL を介して。

    これらの ACL は ctrmc.acls ファイルを調べることにより表示できます。 これらの ACL は、chrmcacl コマンドを使用して変更できます。 あるクラスまたはクラス内のすべてのリソースに適用される ACL を定義するには、スタンザを使用します。

    RMC は、そのリソースとリソース・クラスのすべて (ただし、IBM.LPCommands リソース・クラスおよびそのリソースを除く) についてこのメソッドを使用します。

  2. RMC サブシステム内のリソースおよびリソース・クラスに関連付けられた ACL を介して。

    これらの ACL は、LP コマンドを使用して表示および変更することができます。クラスに適用される ACL、およびクラスの個別のリソースに適用される ACL を定義できます。

    RMC は、IBM.LPCommands リソース・クラスおよびそのリソースにこのメソッドを使用します。

    このセクションでは、IBM.LPCommands リソース・クラスおよびそのリソースに固有な ACL についての情報を提供します。

LP リソース・マネージャーは、IBM.LPCommands リソース・クラスを使用して LP リソースを定義します。これらのリソースは、実行するのに root 権限を必要とするコマンドまたはスクリプトを提示しますが、これらのコマンドを実行する必要のあるユーザーは、通常、root 権限を持っていません。LP リソース・マネージャー・コマンドを使用することによって、ユーザーは root 権限を必要とするコマンドを実行することができます。 LP リソース・マネージャー・コマンドは、以下のとおりです。
chlpcmd
LP リソースの読み取りまたは書き込み属性値を変更します。
lphistory
現行の RMC セッション中にすでに実行された特定の数の LP コマンドをリストまたはクリアします。
lslpcmd
ドメイン内の 1 つ以上のノードの LP リソースに関する情報をリストします。
mklpcmd
新規 LP リソースを RMC に定義し、ユーザー・アクセス権を指定します。
rmlpcmd
RMC サブシステムから 1 つ以上の LP リソースを削除します。
runlpcmd
LP リソースを実行します。
これらのコマンドの説明については、AIX® の場合は「Technical Reference: RSCT for AIX」で最小特権 (LP) リソース・マネージャー・コマンドを、他のオペレーティング・システムの場合は「Technical Reference: RSCT for Multiplatforms」で最小特権 (LP) リソース・マネージャー・コマンドを参照してください。これらのコマンドの使用方法については、「Administering RSCT」ガイドを参照してください。
各 LP リソースは固有のコマンドを定義できるため、RMC は、個々のリソース・レベルおよびクラス・レベルでアクセスを制御できる IBM.LPCommands クラスに ACL を実装します。RSCT は、IBM.LPCommands クラスおよびそのリソースについて ACL をリストおよび変更するために使用できる一連のコマンドを提供します。 LP ACL コマンドは、以下のとおりです。
chlpclacl
Class ACL を変更します
chlpracl
Resource ACL を変更します
chlpriacl
Resource Initial ACL を変更します
chlprsacl
Resource Shared ACL を変更します
lslpclacl
Class ACL をリストします
lslpracl
Resource ACL をリストします
lslpriacl
Resource Initial ACL をリストします
lslprsacl
Resource Shared ACL をリストします
mklpcmd
新規 LP リソースを RMC に定義し、ユーザー・アクセス権を指定します

セキュリティー

  • Class ACL、Resource Initial ACL、および Resource Shared ACL を変更する LP コマンドを使用するには、IBM.LPCommands クラスの照会アクセス権および管理者アクセス権を持っている必要があります。
  • LP リソースの Resource ACL を変更する LP コマンドを使用するには、LP リソースの照会アクセス権および管理者アクセス権を持っている必要があります。
  • Class ACL、Resource Initial ACL、および Resource Shared ACL をリストする LP コマンドを使用するには、IBM.LPCommands クラスの照会アクセス権を持っている必要があります。
  • LP リソースの Resource ACL をリストする LP コマンドを使用するには、LP リソースの照会アクセス権を持っている必要があります。
各 LP コマンドの説明のセキュリティー・セクションでは、コマンドが正しく実行されるには、どのアクセス権が必要かを示しています。

実装上の固有な条件

この情報は、高信頼性スケーラブル・クラスター・テクノロジー (RSCT) (Reliable Scalable Cluster Technology (RSCT)) ファイルセットに含まれます。

Location

/opt/rsct/man/lpacl.7

以下に、LP ACL を変更する方法の例をいくつか示します。これらの例では、コマンドは、管理ドメインのノードのグループ用の管理サーバーで実行されます。管理サーバーは ms_node という名前を持ち、管理対象ノードは、mc_node1mc_node2、というように呼ばれます。管理ドメインでは、LP リソースが管理サーバー上で定義され、LP コマンド自体は管理対象ノード の宛先であるというのが最も可能性が高くなります。これらの例では、Resource Shared ACL は使用されていません。理由は、個別の LP リソースについて別々のアクセス権が必要とされるためです。これらの例では、LP リソースがまだ mklpcmd コマンドを使用して定義されていないと想定しています。
  1. LP コマンドの管理者であるための lpadmin ID を定義したいとします。この ID は、LP ACL を変更するための権限を持っています。また、この ID に、LP リソースを作成、削除、および変更することができる読み取りと書き込みのアクセス権も与えたいとします。この設定を構成するには、root でマップされた ID を使用して、管理サーバーで以下のコマンドを実行します。
    chlpclacl lpadmin@LOCALHOST rwa
    chlpriacl lpadmin@LOCALHOST rwa
    これらのコマンドは、管理サーバーで lpadmin ID が、IBM.LPCommands クラスおよび Resource Initial ACL に対する管理者、読み取り、および書き込みの各アクセス権を持っているものとして定義します。Resource Initial ACL は、LP リソースが作成されるときに、Resource ACL を初期化するために使用されます。したがって、LP リソースが作成されると、lpadmin ID はそのリソースに対する管理者、読み取り、および書き込みの各アクセス権を持っています。
  2. これで、lpadmin ID は、必要とされる LP コマンドを定義する LP リソースを作成できるようになりました。LP リソースへのアクセスは、mklpcmd コマンドまたは chlpracl コマンドを使用して定義することができます。リソースが作成されると、Resource Initial ACL が Resource ACL にコピーされます。chlpracl コマンドを使用して Resource ACL を変更して、joeSysCmd1 という名前のリソースについて runlpcmd コマンドを使用できるようにするには、lpadmin ID が管理サーバーでこのコマンドを次のように実行します。
    chlpracl SysCmd1 joe@LOCALHOST x
    このコマンドは、joe に管理サーバーで SysCmd1 リソースに対する実行アクセス権を与え、彼が runlpcmd コマンドを使用できるようにします。
  3. この例では、lpadmin ID のみが、LP リソースを作成、削除、および変更するためのアクセス権を持っています。chlpclacl コマンドを使用して、他のユーザーが LP リソースを作成および削除することができるようにします。この場合、それらのユーザーはクラスへの書き込みアクセス権を持っている必要があります。IBM.LPCommands クラスのリソースをリストできるようにするには、読み取り許可が必要です。Resource ACL での読み取り許可により、ユーザーはその LP リソースを表示できます。Resource ACL での書き込み許可により、ユーザーはその LP リソースを変更できます。joeSysCmd1 という名前の LP リソースを表示できるようにするには、lpadmin ID が管理サーバーで次のコマンドを実行します。
    chlpracl SysCmd1 joe@LOCALHOST r
  4. ピア・ドメイン内にはいくつかのノードがあります。nodeB には SysCmdB1 と呼ばれる LP リソースがあり、それに対して joe は実行アクセス権を必要としています。さらに、joe は、ノード nodeAnodeB、および nodeD からも実行アクセス権を持つ必要があります。nodeBchlpracl コマンドを実行する場合、nodeB の場合は joe@LOCALHOST を使用できるが、nodeA および nodeD の場合はノード ID を判別する必要があります。ノード ID を取得するには、次のように入力します。
    lsrpnode -i
    次の出力が表示されます。
    Name    OpState RSCTVersion NodeNum NodeID
    nodeA   Online  3.1.0.0     2       48ce221932ae0062
    nodeB   Online  3.1.0.0     1       7283cb8de374d123
    nodeC   Online  3.1.0.0     4       b3eda8374bc839de
    nodeD   Online  3.1.0.0     5       374bdcbe384ed38a
    nodeE   Online  3.1.0.0     2       ba74503cea374110
    nodeF   Online  3.1.0.0     1       4859dfbd44023e13
    nodeG   Online  3.1.0.0     4       68463748bcc7e773
    次に、joe に上述したようなアクセス権を与えるためには、nodeB で次のように実行します。
    chlpracl SysCmd1 -l joe@LOCALHOST joe@0x48ce221932ae0062 ¥
    joe@0x374bdcbe384ed38a x