この章では、役割に基づくアクセス制御 (Role-Based Access Control、RBAC) について Sun Cluster に関連する範囲で説明します。次のトピックについて述べます。
次の表を参考に、RBAC の設定と使用について確認するマニュアルを選んでください。RBAC を作成して、Sun Cluster ソフトウェアで使用するための手順については、この章で後述します。
作業 |
参照先 |
---|---|
RBAC の詳細を調べる | |
RBAC の設定、要素の管理、RBAC の使用など | |
RBAC の要素とツールの詳細を調べる |
Sun Cluster Manager とコマンド行で実行する一部の Sun Cluster コマンドとオプションは、承認のために RBAC を使用します。RBAC の承認を必要とする Sun Cluster のコマンドとオプションは、次の承認レベルを 1 つ以上必要とします。Sun Cluster RBAC の権限プロファイルは、グローバルクラスタ内の投票ノードおよび非投票ノードの両方に適用されます。
一覧表示、表示、およびそのほかの読み取り操作の承認。
クラスタオブジェクトの状態を変更する承認。
クラスタオブジェクトのプロパティーを変更する承認。
Sun Cluster コマンドにより必要とされる RBAC の承認の詳細については、コマンドのマニュアルページを参照してください。
RBAC の権限プロファイルには 1 つ以上の RBAC の承認が含まれます。これらの権限プロファイルをユーザーまたは役割に割り当てることで、Sun Cluster に対するさまざまなレベルのアクセス権をユーザーや役割に与えることができます。次に、Sun Cluster ソフトウェアに含まれる権限プロファイルを示します。
次の表に示す RBAC の権限プロファイルは、以前の Sun Cluster リリースで定義された古い RBAC の承認を引き続きサポートします。
この作業によって、Sun Cluster 管理権限プロファイルを持つ新しい RBAC の役割を作成し、この新しい役割にユーザーを割り当てます。
役割を作成するには、主管理者権利プロファイルが割り当てられている役割になるか、root ユーザーとして実行する必要があります。
管理役割ツールを起動します。
ユーザーカウントツールを実行するためには、Solaris Management Console を起動する必要があります。これについては、『Solaris のシステム管理 (セキュリティサービス)』の「Solaris 管理コンソールで役割を引き受ける方法」を参照してください。「ユーザー」ツールコレクションを開いて、「管理役割 (Administrative Roles)」アイコンをクリックします。
「管理役割を追加 (Add Administrative)」ウィザードが起動します。
「アクション (Action)」メニューから「管理役割を追加 (Add Administrative Role)」を選択して、「管理役割を追加 (Add Administrative)」ウィザードを起動します。
Cluster 管理権限プロファイルが割り当てられる役割を作成します。
「次へ (Next)」および「戻る (Back)」ボタンを使用して、ダイアログボックスを移動します。ただし、すべての必要なフィールドに入力がなされるまで、「次へ (Next)」ボタンはアクティブになりません。最後に、入力したデータを確認するダイアログボックスが表示されます。「戻る (Back)」ボタンを使用して入力を変更するか、「完了 (Finish)」をクリックして新しい役割を保存します。次のリストに、ダイアログボックスのフィールドとボタンの概要を示します。
役割の短縮名
正式名
役割の説明
役割の UID。自動的に増分する
役割に使用できるプロファイルシェル: 管理者の C シェル、管理者の Bourne シェル、または管理者 の Korn シェル
この役割に割り当てられているユーザーのメーリングリストを作成する
役割の権利プロファイルの割り当てまたは削除を行う
同一のコマンドを複数回入力しても、エラーにはならない。ただし、権利プロファイルでは、同一のコマンドが複数回発生した場合、最初のコマンドに割り当てられた属性が優先され、後続の同一コマンドはすべて無視される。順番を変更するときは、上矢印または下矢印を使用する
ホームディレクトリのサーバー
ホームディレクトリのパス
この役割を引き受けるユーザーを追加する。同じスコープ内でユーザーでなければならない
この役割が割り当てられているユーザーを削除する
このプロファイルは、役割に割り当てられるプロファイルリストの先頭に置く必要があります。
新しく作成した役割に、Sun Cluster Manager 機能や Sun Cluster コマンドを使用する必要があるユーザーを追加します。
useradd(1M) コマンドを使用して、ユーザーアカウントをシステムに追加します。ユーザーのアカウントに役割を割り当てるには、-P オプションを使用します。
「Finish (完了)」をクリックします。
端末ウィンドウを開き、root になります。
ネームサービスキャッシュデーモンを起動して停止します。
新しい役割は、ネームサービスキャッシュデーモンを再起動するまで有効になりません。root になったあと、次のテキストを入力します。
# /etc/init.d/nscd stop # /etc/init.d/nscd start |
スーパーユーザーになるか、RBAC の承認 solaris.cluster.admin を提供する役割になります。
次のいずれかの役割の作成方法を選択します。
ローカルスコープの役割を作成する場合は、roleadd(1M) コマンドを使用して、新しいローカル役割とその属性を指定します。
同じくローカルスコープの役割を作成する場合に、user_attr(4) ファイルを編集して、ユーザーに type=role を追加することもできます。
この方法は緊急時にのみ使用します。
ネームサービスの役割を作成する場合は、smrole(1M) コマンドを使用して、新しい役割とその属性を指定します。
このコマンドは、スーパーユーザー、またはその他の役割を作成できる役割による認証を必要とします。smrole コマンドは、すべてのネームサービスに適用でき、Solaris 管理コンソールサーバーのクライアントとして動作します。
ネームサービスキャッシュデーモンを起動して停止します。
新しい役割は、ネームサービスキャッシュデーモンを再起動するまで有効になりません。root として、次のテキストを入力します。
# /etc/init.d/nscd stop # /etc/init.d/nscd start |
次のコマンドシーケンスは、smrole コマンドを使用して役割を作成します。この例では、新しいオペレーター役割が作成され、標準のオペレーター権利プロファイルとメディア復元権利プロファイルが割り当てられます。
% su primaryadmin # /usr/sadm/bin/smrole add -H myHost -- -c "Custom Operator" -n oper2 -a johnDoe \ -d /export/home/oper2 -F "Backup/Restore Operator" -p "Operator" -p "Media Restore" Authenticating as user: primaryadmin Type /? for help, pressing <enter> accepts the default denoted by [ ] Please enter a string value for: password :: <type primaryadmin password> Loading Tool: com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost Login to myHost as user primaryadmin was successful. Download of com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost was successful. Type /? for help, pressing <enter> accepts the default denoted by [ ] Please enter a string value for: password ::<type oper2 password> # /etc/init.d/nscd stop # /etc/init.d/nscd start |
新しく作成した役割およびその他の役割を表示するには、次のように smrole コマンドに list オプションを指定します。
# /usr/sadm/bin/smrole list -- Authenticating as user: primaryadmin Type /? for help, pressing <enter> accepts the default denoted by [ ] Please enter a string value for: password :: <type primaryadmin password> Loading Tool: com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost Login to myHost as user primaryadmin was successful. Download of com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost was successful. root 0 Super-User primaryadmin 100 Most powerful role sysadmin 101 Performs non-security admin tasks oper2 102 Custom Operator |
ユーザーアカウントツールかコマンド行のいずれかを使用すると、ユーザーの RBAC プロパティーを変更できます。ユーザーの RBAC のプロパティーを変更するには、次のいずれかの手順を選択してください。
ユーザーのプロパティーを変更するには、「ユーザー」ツールコレクションをスーパーユーザーとして実行するか、主管理者権利プロファイルが割り当てられている役割を持つ必要があります。
ユーザーアカウントツールを起動します。
ユーザーアカウントツールを実行するためには、Solaris Management Console を起動する必要があります。これについては、『Solaris のシステム管理 (セキュリティサービス)』の「Solaris 管理コンソールで役割を引き受ける方法」を参照してください。「ユーザー」ツールコレクションを開いて、「ユーザーアカウント (User Accounts)」アイコンをクリックします。
ユーザーアカウントツールが起動すると、既存のユーザーアカウントのアイコンが表示区画に表示されます。
変更する「ユーザーアカウント (User Accounts)」アイコンをクリックして、「アクション (Action)」メニューから「プロパティー (Properties)」を選択するか、ユーザーアカウントのアイコンをダブルクリックします。
変更するプロパティーのダイアログボックスで、適切なタブを次のように選択します。
ユーザーに割り当てられた役割を変更するときは、「役割 (Role)」タブをクリックして、変更する役割を「有効な役割 (Available Roles)」または「割り当てられた役割 (Assigned Roles)」列に移動します。
ユーザーに割り当てられた権利プロファイルを変更するときは、「権利 (Rights)」タブをクリックして、変更する権利プロファイルを「有効な権利 (Available Rights)」または「許可された権利 (Assigned Rights)」列に移動します。
ユーザーに権限プロファイルを直接割り当てることは避けてください。特権付きアプリケーションを実行するときは、ユーザーが役割を引き受けるようにしてください。このようにすると、ユーザーが特権を濫用できなくなります。
スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。
次のように適切なコマンドを選択します。
ローカルスコープに定義されたユーザーに割り当てられている承認、役割、または権利プロファイルを変更する場合は、usermod(1M) コマンドを使用します。
また同じくローカルスコープに定義されたユーザーに割り当てられている承認、役割、または権利プロファイルを変更する場合は、user_attr ファイルを編集することもできます。
この方法は緊急時にのみ使用します。
ネームサービスに定義されたユーザーに割り当てられている承認、役割、または権利プロファイルを変更する場合は、smuser(1M) コマンドを使用します。
このコマンドは、スーパーユーザー、またはユーザーファイルを変更できる役割による認証を必要とします。smuser コマンドは、すべてのネームサービスに適用でき、Solaris 管理コンソールサーバーのクライアントとして動作します。