役割によるアクセス制御 (RBAC) は、Solaris 8 1/01 ソフトウェアリリースで更新されました。RBAC データベースは、Solaris Management Console のグラフィカルインタフェースによって管理できるようになりました。 「実行プロファイル 」(execution profiles) という用語が使用されなくなりました。この用語は、「権利プロファイル」(rights profiles) に置き換えられました。グラフィカルインタフェース上では「権利 (rights)」、コマンド行およびファイル内では profiles とも呼ばれます。
承認とセキュリティ属性を備えたコマンドに加え、権利プロファイルが他の権利プロファイルを含むことができるようになりました。権利プロファイルに同じコマンドが複数現れる場合、ファイル内での最初のコマンドが優先されます。
policy.conf(4) ファイルが、デフォルトで権利プロファイルを割り当てられるようにするキーワード PROFS_GRANTED を認識できるようになりました。
次の図は、拡張されたユーザー属性がどのようにユーザーに提供されるかを示します。
user_attr データベースは、表示されている属性を含み、またコンマ (,) で区分されたプロファイル名のリストを含んでいます。プロファイルの内容は、prof_attr ファイルと exec_attr ファイルに分割されています。prof_attr ファイルは、権利プロファイル識別情報 (権利プロファイルに関連する承認と入れ子の権利プロファイル) を含んでいます。exec_attr ファイルは、ポリシーを識別し、関連するセキュリティ属性を持つコマンドを含んでいます。auth_attr ファイルは、Solaris Management Console ツールに対する承認情報をサポートします。
user_attr を使用してユーザーに直接承認を割り当てることはできますが、この方法は推奨されていないことに注意してください。
policy.conf ファイルは、すべてのユーザーに割り当てられるデフォルトの属性を提供します。たとえば、Printer Management 権利プロファイルが 1 つのユーザーまたは役割に割り当てられると、そのユーザーまたは役割の user_attr エントリはキーワードと値のペア (profiles=Printer Management) を含みます。 prof_attr ファイルはこのプロファイルを定義し、以下のようにヘルプファイルと承認も指定します。
Printer Management:::Manage printers, daemons, spooling:help=RtPrntAdmin.html;auths=solaris.admin.printer, / solaris.admin.printer.modify,solaris.admion.printer.delete |
exec_attr ファイルでは、次の行が有効なユーザー ID = lp を Printer Management プロファイル内のコマンド /usr/sbin/accept に割り当てます。
Printer Management:suser:cmd:::/usr/sbin/accept:euid=lp |
次の表は、承認を使用するコマンドのリストです。
表 5-1 RBAC コマンド
コマンド |
関連する承認 |
---|---|
at(1) |
solaris.jobs.user |
atq(1) |
solaris.jobs.admin |
crdw(1) |
solaris.device.cdrw |
crontab(1) |
solaris.jobs.user、solaris.jobs.admin |
allocate(1M) |
solaris.device.allocate、solaris.device.revoke |
deallocate(1M) |
solaris.device.allocate、solaris.device.revoke |
list_devices(1M) |
solaris.device.revoke |
smcron(1M) |
solaris.jobs.admin、solaris.jobs.user |
smdiskless |
solaris.admin.dcmgr.clients、solaris.admin.dcmgr.read |
smexec(1M) |
solaris.profmgr.read、solaris.profmgr.write |
smgroup(1M) |
solaris.admin.usermgr.read、solaris.admin.usermgr.write |
smmultiuser(1M)、 smuser(1M) |
solaris.admin.usermgr.pswd、solaris.admin.usermgr.read、 solaris.admin.usermgr.write、solaris.profmgr.assign、 solarisprofmgr.delegate、solaris.role.assign、 solaris.role.delegate |
smmaillist(1M) |
solaris.admin.usermgr.read、solaris.admin.usermgr.write |
smosservice |
solaris.admin.dcmgr.admin、solaris.admin.dcmgr.read |
smprofile(1M) |
solaris.profmgr.read、solaris.profmgr.write |
smrole(1M) |
solaris.admin.usermgr.pswd、solaris.admin.usermgr.read、 solaris.admin.usermgr.write、solaris.profmgr.assign、 solarisprofmgr.delegate、solaris.role.assign、 solaris.role.delegate |
Solaris Management Console の詳細は、「システム管理ツール」を参照してください。