lpacl 情報
目的
Resource Monitoring and Control (RMC) サブシステムによって提供されるアクセス制御を使用して、最小特権 (LP) コマンド・リソース・クラスとそのリソースを保護するための一般情報を提供します。
説明
RMC は、アクセス制御リスト (ACL) を介してそのすべてのリソースおよびリソース・クラスへのアクセスを制御します。これには 2 種類の ACL 実装を使用します。 RMC が使用する実装は、どのクラスが関係しているかによって決まります。 これらの実装間の主な相違点は、1) ACL が表示され、変更されるメカニズム、および 2) ACL が個別のリソースに関連付けられているかどうかです。
- ctrmc.acls ファイル内のリソース・クラス・スタンザによって定義される ACL を使用します。
これらの ACL を表示および変更するには、 ctrmc.acls ファイルを編集します。 スタンザを使用して、クラスに適用される ACL を定義したり、クラス内のすべてのリソースに適用される ACL を定義したりします。
RMC は、 IBM.LPCommands リソース・クラスとそのリソースを除き、すべてのリソースおよびリソース・クラスに対してこのメソッドを使用します。
ctrmc.acls ファイルおよびそれによって定義される ACL について詳しくは、「 RSCT: Administration Guide」を参照してください。
- RMC サブシステム内のリソースおよびリソース・クラスに関連付けられた ACL を介して。
これらの ACL は、LP コマンドを使用して表示および変更することができます。 クラスに適用される ACL、およびクラスの個別のリソースに適用される ACL を定義できます。
RMC は、 IBM.LPCommands リソース・クラスとそのリソースに対してこのメソッドを使用します。
このファイルは、 IBM.LPCommands リソース・クラスとそのリソースに固有の ACL に関する情報を提供します。
- chlpcmd
- LP リソースの読み取り/書き込み属性値を変更します。
- lphistory
- 現行 RMC セッション中に以前に発行された特定数の LP コマンドをリストまたはクリアします。
- lslpcmd
- ドメイン内の 1 つ以上のノード上の LP リソースに関する情報をリストします。
- mklpcmd
- 新規 LP リソースを RMC に定義し、ユーザー・アクセス権を指定します
- rmlpcmd
- 1 つ以上の LP リソースを RMC サブシステムから除去します。
- runlpcmd
- LP リソースを実行します。
- 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 に定義し、ユーザー・アクセス権を指定します
基本 ACL 構造
通常、ACL は ACL エントリーのリストで構成されます。 各 ACL エントリーは、1 つの ID と、その ID に付与される許可のセットを指定します。 ACL エントリーの完全なリストによって、関連するクラスまたはリソースへのアクセスを ACL が制御する方法が決まります。
リソース関連 ACL は、ACL エントリー自体のリストを含む代わりに、別の ACL を参照することができます。 リソース関連 ACL が別の ACL を参照する場合、参照される ACL 内の ACL エントリーのセットがリソースへのアクセスを制御します。
ACL のタイプ
- クラス ACL
- クラス ACL は、1 つのノード上のクラス操作へのアクセスを制御します。 クラス属性のリスト、クラス・リソースの作成、クラス・リソースの削除などのクラス操作を実行するには、 特定の許可が付与されている が必要です。
クラス ACL は、ACL エントリーのリストで構成されます。 ACL エントリーのリストは、ノード上のクラス操作へのアクセスを制御します。 リストが空の場合、ノード上でクラス操作を実行するための ID は許可されません。
例えば、 ノード上の IBM.LPCommands クラスに対してクラス操作を実行しようとすると、新規リソースが作成されます。RMC は、 そのノード上の クラス ACL を検査して、操作を実行するために 必要な アクセス権があることを確認します。 必要な許可がない場合、操作は拒否されます。
IBM.LPCommands クラスの各ノードには、1 つのクラス ACL が存在します。 各ノードのクラス ACL は、そのノード上のすべての IBM.LPCommands クラス操作へのアクセスを制御します。
- Resource ACL
- リソース ACL は、1 つの LP リソースのリソース操作へのアクセスを制御します。 リソース属性のリスト、リソース属性の変更、およびリソース・コマンドの実行などのリソース操作を実行するには、 特定の許可が付与されている が必要です。
Resource ACL は、ACL エントリーのリストで構成することができます。 この場合、ACL エントリーのリストによって、そのリソースのリソース操作へのアクセスが制御されます。 リストが空の場合、リソースのリソース操作を実行するための ID は許可されません。
Resource ACL は、ACL エントリー自体のリストを含む代わりに、Resource Shared ACL を参照することができます。 この場合、Resource Shared ACL 内の ACL エントリーのリストによって、リソースのリソース操作へのアクセスが制御されます。 リストが空の場合、リソースのリソース操作を実行するための ID は許可されません。
例えば、LP コマンドを実行する LP リソースでリソース操作を実行しようとすると、RMC はまず、選択されたリソースの Resource ACL を検査して、Resource ACL に ACL エントリーのリスト、または Resource Shared ACL を参照するかどうかが含まれているかどうかを判別します。 Resource ACL に ACL エントリーのリストがある場合、RMC はそのリストを調べて、操作を実行するための 必須 許可があることを確認します。 必要な許可がない場合、操作は拒否されます。
Resource ACL 参照先 が Resource Shared ACL の場合、RMC は Resource Shared ACL を検査して、ユーザーが操作を実行するための 必須 許可を持っていることを確認します。 必要な許可がない場合、操作は拒否されます。
LP リソースごとに Resource ACL が 1 つ存在します。 Resource ACL が Resource Shared ACL を参照する場合、参照される Resource Shared ACL は、そのリソースと同じノード上の ACL です。
- Resource Initial ACL
- リソース初期 ACL は、ノード上に作成される Resource ACL の初期内容を定義します。
Resource Initial ACL は Resource Initial ACL を初期化するために使用されるため、Resource Initial ACL には、ACL エントリーのリストまたは Resource Shared ACL への参照を含めることができます。
新規 LP リソースが作成されると、その Resource ACL は、ノード上の Resource Initial ACL の指定に従って初期化されます。
IBM.LPCommands クラスの各ノードには、1 つの Resource Initial ACL が存在します。
- Resource Shared ACL
- リソース共有 ACL は、1 つのノード上の複数のリソースに対するリソース操作へのアクセスを制御できます。
Resource Shared ACL は、ACL エントリーのリストで構成されます。 ACL エントリーのリストは、Resource Shared ACL を参照するノード上のすべてのリソースのリソース操作へのアクセスを制御します。 他の ACL タイプと同様に、ACL エントリーのリストは空にすることができます。
この ACL を使用するには、Resource ACL の場合と同様に ACL エントリーの配置 を使用します。 次に、Resource Shared ACL を 参照する同じノード上の ACL 変更します。 Resource Shared ACL を使用する場合は、 ACL エントリーの 1 つのリストを使用して、同じノード上の複数のリソースへのアクセスを制御できます。。
IBM.LPCommands クラスの各ノードには、1 つの Resource Shared ACL が存在します。
ACL エントリー
LP コマンドの RMC ACL は、以下を指定します。 ACL エントリーのリスト。 各 ACL エントリーは、ユーザー ID とその ID のユーザー権限を定義します。 ユーザー ID は、認証されたネットワーク ID です。 そのクラスまたはリソースに対してユーザーが持っている ユーザー権限 アクセス権限の指定 。
ユーザー ID
- [host:] ホストユーザー識別子これは、 ホスト・ユーザー ID。 オプションの host: キーワードは、ユーザー ID を、ホスト・ベース認証 (HBA) セキュリティー機構によって提供されるネットワーク ID と突き合わせることができることを指定します。 host: キーワードが省略され、項目が記述されている他の形式のいずれでもない場合、その項目はホスト・ユーザー ID であると想定されます。 ホスト・ユーザー ID は、以下の 3 つの形式のいずれかにすることができます。
- ユーザー@名ホスト識別子
これは、 特定の認証済みユーザー。 ホスト ID は、いくつかの異なる形式で指定できます。 これらの形式は、ホスト・ユーザー ID 形式がホスト ID のみとして指定されている場合と同じですが、以下で説明します。
- ホスト IDこれは、識別されたホスト上の認証済みユーザー。 ホスト ID は以下のいずれかです。
- 完全修飾ホスト名。
- 短いホスト名。
- IP アドレス。
- RSCT ノード ID。 これは、16 桁の 16 進数です (例: 0xaf58d41372c47686)。
- キーワード LOCALHOST。 このキーワードは、ACL が存在するノードの 以下の RSCT ノード ID の省略表現 便利な機能です。 LOCALHOST キーワードは ACL に保管されます。
- キーワード NODEID。 このキーワードは、以下のノードの便利な 短縮表記、RSCT ノード ID の です。 ACL 編集コマンドが実行中である。 NODEID キーワードは ACL に保管されません。このキーワードが表すノード ID は、実際には ACL に保管されます。
- "*"
これは、任意のホスト上の認証済みユーザー。 アスタリスク (*) をコマンド入力として指定する場合は、二重引用符で囲む必要があります。
- ユーザー@名ホスト識別子
- none:マッピング済みユーザー識別子
ctsec_map.global ファイルまたは ctsec_map.local ファイル内の 定義されているマップ名を指定します。 。 マップされたユーザー ID については、「 RSCT: Administration Guide」を参照してください。
- UNAUTHENT
これは、認証されていないユーザー。
user@short_host_name
user@ip_address
user@node_ID
ユーザー@LOCALHOST
full_host_name
short_host_name
IP_address
node_ID
LOCALHOST
*
lsrsrc IBM.Host NodeIDslsrsrc -ta IBM.Host NodeIDs NodeNameListlsrpnode -iノード ID は 16 進数で表示されます。 この値をコマンドで使用するには、この値の前に 0xを付ける必要があります。 CT_CONTACT 環境変数を使用して RMC セッションの発生場所を指定する場合、host_identifier は完全修飾ホスト名、短縮ホスト名、または IP アドレスにする必要があります。
ユーザー権限
ユーザー許可は、それぞれが特定の許可を表す、1 つ以上の文字のストリングで表されます。
許可セットの細分度を補正するために、RSCT は 2 つの複合許可を提供します。 r 許可は、「読み取り」タイプの操作を許可する個々の許可で構成されます。 w 許可は、「書き込み」タイプの操作を許可する個々の許可で構成されます。 ほとんどの ACL エントリーは、おそらくこれらの便利な複合許可を使用します。
許可セット
次の 2 つのセクションは、定義された許可セットの 2 つの異なるビューを示しています。 最初のセクションでは、複合アクセス権を使用して設定されるアクセス権について説明します。 2 番目のセクションでは、個々の許可を使用して許可セットについて説明します。
Using Composite Permissions
- r
- 読み取り許可。
- LP リソースのリソース属性値を表示するには、LP リソースに対するこのアクセス権が必要です。
- IBM.LPCommands クラス属性値を表示するには、 IBM.LPCommands クラスに対するこの権限が必要です。
- LP ACL をリストするには、このアクセス権が必要です。
- w
- 書き込み許可。
- LP リソースのリソース属性値を変更するには、LP リソースに対するこのアクセス権が必要です。
- IBM.LPCommands クラスのクラス属性値を変更するには、 IBM.LPCommands クラスに対するこの権限が必要です。
- LP リソースを作成または削除するには、 IBM.LPCommands クラスに対するこのアクセス権が必要です。
- a
- 管理者権限。
- LP リソースの Resource ACL を変更するには、LP リソースに対するこのアクセス権が必要です。
- Class ACL、Resource Initial ACL、または Resource Shared ACL を変更するには、 IBM.LPCommands クラスに対するこの許可が必要です。
- x
- 実行許可。 LP リソースで定義されている LP コマンドを実行するには、LP リソースに対するこのアクセス権が必要です。 したがって、この許可は、LP Resource ACL、Resource Initial ACL、および Resource Shared ACL に対して意味があります。
- 0
- 許可がありません。 このアクセス権は、LP リソースまたは IBM.LPCommands クラスへのアクセスを拒否します。 したがって、このアクセス権は、すべての LP ACL に対して意味があります。
Using Individual Permissions
- q
- 照会許可。
- LP リソースのリソース属性値を照会するには、LP リソースに対するこのアクセス権が必要です。
- クラス属性値を照会するには、 IBM.LPCommands クラスに対するこの権限が必要です。
- LP ACL をリストするには、このアクセス権が必要です。
- l
- 権限を列挙します。 LP リソースをリストするには、 IBM.LPCommands クラスに対するこのアクセス権が必要です。 したがって、この許可はクラス ACL に対して意味があります。
- e
- イベント許可。 イベントを登録、登録抹消、または照会するには、LP リソースまたは IBM.LPCommands クラスに対するこのアクセス権が必要です。 したがって、このアクセス権は、すべての LP ACL に対して意味があります。
- v
- 許可を検証します。 LP リソース・ハンドルがまだ存在することを検証するには、このアクセス権が必要です。 したがって、この許可は、Resource ACL、Resource Initial ACL、および Resource Shared ACL に対して意味があります。
- d
- 許可を定義および定義解除します。 LP リソースを作成または削除するには、 IBM.LPCommands クラスに対するこのアクセス権が必要です。 したがって、この許可はクラス ACL に対して意味があります。
- c
- アクセス権を更新します。 IBM.LPCommands クラス構成をリフレッシュするには、 IBM.LPCommands クラスに対するこの権限が必要です。 したがって、この許可はクラス ACL に対して意味があります。
- s
- 許可を設定します。
- LP リソースのリソース属性値を設定するには、LP リソースに対するこのアクセス権が必要です。
- クラス属性値を設定するには、 IBM.LPCommands クラスに対するこの権限が必要です。
- o
- オンライン、オフライン、およびリセットの許可。 LP リソースはオンライン操作、オフライン操作、およびリセット操作をサポートしないため、このアクセス権は LP ACL では意味がありません。
- a
- 管理者権限。
- LP リソースの Resource ACL を変更するには、LP リソースに対するこのアクセス権が必要です。
- Class ACL、Resource Initial ACL、または Resource Shared ACL を変更するには、 IBM.LPCommands クラスに対するこの許可が必要です。
- x
- 実行許可。 LP リソースで定義されている LP コマンドを実行するには、LP リソースに対するこのアクセス権が必要です。 したがって、この許可は、LP Resource ACL、Resource Initial ACL、および Resource Shared ACL に対して意味があります。
- 0
- 許可がありません。 このアクセス権は、LP リソースまたは IBM.LPCommands クラスへのアクセスを拒否します。 したがって、このアクセス権は、すべての LP ACL に対して意味があります。
一部の許可文字は、特定のタイプの ACL では意味がありません。 例えば、 l 許可は、Resource ACL では意味がありません。 特定のタイプの ACL では意味を持たない許可文字は、悪影響を与えずに ACL に含めることができます。 例えば、 l 許可は、Resource ACL の ACL エントリーに指定することができます。 複合許可が使用される場合、ACL エントリーに意味のない許可が存在することは避けられません。
ACL エントリーによって明示的に付与される 許可に加えて、 root マップ ID には、常に ACL 操作に対する照会許可および管理者許可があります。 すべてのアクセスが拒否されるように ACL が設定されている場合、 root マップされた ID を使用して ACL を変更することができます。これは、その暗黙的な権限があるためです。
システム管理者は、 IBM.LPCommands クラスとそのリソースに対して ACL の定義方法 を決定する必要があります。 これは、 ユーザーは必須です が実行する操作によって異なります。
セキュリティー
- 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 リソースの照会アクセス権を持っている必要があります。
例
- lpadmin ID を LP コマンドの管理者として定義する必要があります。 この ID には、LP ACL を変更する権限があります。 また、この ID に、LP リソースを作成、削除、および変更することができる読み取りと書き込みのアクセス権も与えたいとします。 これをセットアップするには、 root マップ ID を使用して、管理サーバー上で以下のコマンドを実行します。
これらのコマンドは、 IBM.LPCommands クラスおよび Resource Initial ACL に対する管理者権限、読み取り権限、および書き込み権限を持つものとして、管理サーバー上の lpadmin ID を定義します。 Resource Initial ACL は、LP リソースの作成時に Resource ACL を初期化するために使用されます。 したがって、LP リソースが作成されると、 lpadmin ID には、そのリソースに対する管理者権限、読み取り権限、および書き込み権限が付与されます。chlpclacl lpadmin@LOCALHOST rwa chlpriacl lpadmin@LOCALHOST rwa - lpadmin ID は、必要な LP コマンドを定義する LP リソースを作成できるようになりました。 LP リソースの作成方法については、 mklpcmd コマンドを参照してください。 LP リソースへのアクセスは、 mklpcmd コマンドまたは chlpracl コマンドを使用して 定義 できます。 リソースが作成されると、Resource Initial ACL が Resource ACL にコピーされます。 chlpracl コマンドを使用して Resource ACL を変更し、 joe が SysCmd1という名前のリソースに対して runlpcmd コマンドを使用できるようにするには、 lpadmin ID が管理サーバーでこのコマンドを実行します。
これにより、管理サーバー上の joe に SysCmd1 リソースに対する実行権限が付与され、が runlpcmd コマンドを使用できるようになります。chlpracl SysCmd1 joe@LOCALHOST x - この例では、LP リソースを作成、削除、および変更する権限を持つのは lpadmin ID のみです。 chlpclacl コマンドを使用して、他のユーザーが LP リソースを作成および削除できるようにします。 この場合、それらのユーザーはクラスへの書き込みアクセス権を持っている必要があります。 IBM.LPCommands クラスのリソースをリストできるようにするには、読み取り許可が必要です。 Resource ACL での読み取り許可により、ユーザーはその LP リソースを表示できます。 Resource ACL での書き込み許可により、ユーザーはその LP リソースを変更できます。 joe が SysCmd1という名前の LP リソースを表示できるようにするために、 lpadmin ID は管理サーバー上で次のコマンドを実行します。
chlpracl SysCmd1 joe@LOCALHOST r - ピア・ドメイン内にはいくつかのノードがあります。 joe が実行アクセス権を必要とする SysCmdB1 on nodeB という LP リソースがあります。 さらに、 joe には、ノード nodeA、 nodeB、および nodeDからの実行権限が必要です。 nodeBで chlpracl コマンドを実行する場合は、 joe@LOCALHOST for nodeBを使用できますが、 nodeA および nodeDのノード ID を判別する必要があります。 ノード ID を取得するには、次のように入力します。
出力は次のようになります。lsrpnode -i
次に、上記の権限を joe 付与するには、以下を実行します。 nodeB:Name OpState RSCTVersion NodeNum NodeID nodeA Online 2.4.2.0 2 48ce221932ae0062 nodeB Online 2.4.2.0 1 7283cb8de374d123 nodeC Online 2.4.2.0 4 b3eda8374bc839de nodeD Online 2.4.2.0 5 374bdcbe384ed38a nodeE Online 2.4.2.0 2 ba74503cea374110 nodeF Online 2.4.2.0 1 4859dfbd44023e13 nodeG Online 2.4.2.0 4 68463748bcc7e773chlpracl SysCmd1 -l joe@LOCALHOST joe@0x48ce221932ae0062 \ joe@0x374bdcbe384ed38a x