JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Solaris のシステム管理 (セキュリティサービス)     Oracle Solaris 10 8/11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I セキュリティーの概要

1.  セキュリティーサービス (概要)

パート II システム、ファイル、およびデバイスのセキュリティー

2.  マシンセキュリティーの管理 (概要)

3.  システムアクセスの制御 (作業)

4.  デバイスアクセスの制御 (作業)

5.  基本監査報告機能の使用方法 (作業)

6.  ファイルアクセスの制御 (作業)

7.  自動セキュリティー拡張ツールの使用 (手順)

パート III 役割、権利プロファイル、特権

8.  役割と特権の使用 (概要)

9.  役割によるアクセス制御の使用 (手順)

10.  役割によるアクセス制御 (参照)

11.  特権 (手順)

特権の管理と使用 (作業マップ)

特権の管理 (作業マップ)

特権の管理

プロセスの特権を判断する方法

プログラムが必要とする特権を判断する方法

特権をコマンドに追加する方法

特権をユーザーまたは役割に割り当てる方法

ユーザーまたは役割の特権を制限する方法

特権付きのコマンドを含むシェルスクリプトの実行方法

特権の判断 (作業マップ)

割り当てられた特権の判断

直接割り当てられた特権を判断する方法

実行可能な特権付きコマンドを判断する方法

役割が実行可能な特権付きコマンドを判断する方法

12.  特権 (参照)

パート IV 暗号化サービス

13.  Oracle Solaris の暗号化フレームワーク (概要)

14.  Oracle Solaris の暗号化フレームワーク (手順)

15.  Oracle Solaris 鍵管理フレームワーク

パート V 認証サービスと安全な通信

16.  認証サービスの使用 (手順)

17.  PAM の使用

18.  SASL の使用

19.  Oracle Solaris Secure Shell の使用 (手順)

20.  Oracle Solaris Secure Shell (参照)

パート VI Kerberos サービス

21.  Kerberos サービスについて

22.  Kerberos サービスの計画

23.  Kerberos サービスの構成 (手順)

24.  Kerberos エラーメッセージと障害追跡

25.  Kerberos 主体とポリシーの管理 (手順)

26.  Kerberos アプリケーションの使用 (手順)

27.  Kerberos サービス (参照)

パート VII Oracle Solaris 監査

28.  Oracle Solaris 監査 (概要)

29.  Oracle Solaris 監査の計画

30.  Oracle Solaris 監査の管理 (手順)

31.  Oracle Solaris 監査 (参照)

用語集

索引

割り当てられた特権の判断

ユーザーに特権が直接割り当てられるとき、その特権はすべてのシェルで有効になります。ユーザーに特権が直接割り当てられないとき、ユーザーはプロファイルシェルを開く必要があります。たとえば、特権が割り当てられているコマンドがユーザーの権利プロファイルのリスト内の権利プロファイルに含まれるとき、ユーザーはプロファイルシェルでコマンドを実行する必要があります。

直接割り当てられた特権を判断する方法

次の手順は、特権が直接割り当てられたかどうかを判断する方法です。


注意

注意 - 直接割り当てられた特権を不適切に使用すると、無意識のうちにセキュリティーを侵害する可能性があります。詳細については、「セキュリティー属性を直接割り当てる場合に考慮すべきセキュリティー事項」を参照してください。


  1. プロセスが使用可能な特権を一覧表示します。

    手順については、「プロセスの特権を判断する方法」を参照してください。

  2. 任意のシェルでアクションを起動し、コマンドを実行します。

    有効なセットに一覧表示されている特権は、セッション全体を通して有効です。基本セットに加えて特権を直接割り当てた場合、その特権は有効なセットに一覧表示されます。

例 11-9 直接割り当てられた特権の判断

直接特権が割り当てられた場合、基本セットにはデフォルトの基本セットより多くの特権が含まれます。この例では、ユーザーは常時 proc_clock_highres 特権にアクセスできます。

% /usr/ucb/whoami
jdoe
% ppriv -v $$
1800:   pfksh
flags = <none>
        E: file_link_any,…,proc_clock_highres,proc_session
        I: file_link_any,…,proc_clock_highres,proc_session
        P: file_link_any,…,proc_clock_highres,proc_session
        L: cpc_cpu,dtrace_kernel,dtrace_proc,dtrace_user,…,sys_time
% ppriv -vl proc_clock_highres
        Allows a process to use high resolution timers.

例 11-10 役割に直接割り当てられた特権の判断

役割では、管理シェルまたはプロファイルシェルが使用されます。役割を引き受けるユーザーは、役割のシェルを使用して、役割に直接割り当てられている特権を一覧表示することができます。次の例では、役割 realtime に日時のプログラムを処理する特権が直接割り当てられます。

% su - realtime
Password: <Type realtime password>
$ /usr/ucb/whoami
realtime
$ ppriv -v $$
1600:   pfksh
flags = <none>
        E: file_link_any,…,proc_clock_highres,proc_session,sys_time
        I: file_link_any,…,proc_clock_highres,proc_session,sys_time
        P: file_link_any,…,proc_clock_highres,proc_session,sys_time
        L: cpc_cpu,dtrace_kernel,dtrace_proc,dtrace_user,…,sys_time

実行可能な特権付きコマンドを判断する方法

ユーザーに直接特権が割り当てられていないとき、ユーザーは権利プロファイルによって特権付きコマンドにアクセスすることができます。権利プロファイルのコマンドは、プロファイルシェルで実行する必要があります。

始める前に

Solaris 管理コンソールに対して認証を行うユーザーまたは役割は、solaris.admin.usermgr.read 承認を得る必要があります。Basic Solaris User 権利プロファイルには、この承認が含まれます。

  1. 割り当てられている権利プロファイルを判断します。
    $ /usr/sadm/bin/smuser list -- -n username -l
    Authenticating as user: admin
    … Please enter a string value for: password :: 
    …
    User name:      username
    User ID (UID):  130
    Primary group:  staff
    Secondary groups: 
    Comment: object mgt jobs
    Login Shell: /bin/sh
    Home dir server: system
    Home directory: /export/home/username
    AutoHome setup: True
    Mail server: system
    Rights: Object Access Management
    Assigned Roles:
  2. 「Rights:」で始まる行を探します。

    「Rights」行には、直接割り当てた権利プロファイルの名前が一覧表示されます。

  3. exec_attr データベースの権利プロファイルの名前を見つけます。
    $ cd /etc/security
    $ grep "Object Access Management" exec_attr 
    Object Access Management:solaris:cmd:::/usr/bin/chgrp:privs=file_chown
    Object Access Management:solaris:cmd:::/usr/bin/chown:privs=file_chown
    Object Access Management:suser:cmd:::/usr/bin/chgrp:euid=0
    Object Access Management:suser:cmd:::/usr/bin/chmod:euid=0
    …

    特権が追加されたコマンドは、solaris ポリシーエントリの最後に一覧表示されます。

  4. プロファイルシェルで、特権を必要とするコマンドを入力します。

    コマンドを通常のシェルで入力すると、そのコマンドは特権で実行されず、失敗します。

    % pfsh
    $

例 11-11 プロファイルシェルでの特権付きコマンドの実行

次の例で、ユーザー jdoe は、通常のシェルからはファイルに関するグループアクセス権を変更できません。しかし、jdoe は、プロファイルシェルでコマンドを入力すると、グループアクセス権を変更できます。

% whoami
jdoe
% ls -l useful.script
-rwxr-xr-- 1 nodoe eng 262 Apr 2 10:52 useful.script
chgrp staff useful.script
chgrp: useful.script: Not owner
% pfksh
$ /usr/ucb/whoami
jdoe
$ chgrp staff useful.script
$ chown jdoe useful.script
$ ls -l useful.script
-rwxr-xr-- 1 jdoe staff 262 Apr 2 10:53 useful.script

役割が実行可能な特権付きコマンドを判断する方法

役割は、特権が割り当てられたコマンドを含む権利プロファイルによって、特権付きコマンドにアクセスすることができます。特権付きコマンドに対するアクセス権をユーザーに与える最も安全な方法は、役割をコマンドに割り当てることです。ユーザーは、役割を引き受けると、その役割の権利プロファイルに含まれるすべての特権付きコマンドを実行することができます。

始める前に

Solaris 管理コンソールに対して認証を行うユーザーまたは役割は、solaris.admin.usermgr.read 承認を得る必要があります。Basic Solaris User 権利プロファイルには、この承認が含まれます。

  1. 引き受けることができる役割を判断します。
    $ /usr/sadm/bin/smuser list -- -n username -l
    Authenticating as user: primadmin
    …
    User name:      username
    User ID (UID):  110
    Primary group:  staff
    Secondary groups: 
    Comment: Has admin roles
    Login Shell: /bin/sh
    …
    Rights: 
    Assigned Roles: primadmin, admin
  2. 「Assigned Roles:」で始まる行を探します 。

    「Assigned Roles」行には、引き受けることができる役割が一覧表示されます。

  3. 役割の 1 つに含まれる権利プロファイルを判断します。
    % su - devadmin
    Enter password: Type devadmin password
    $ whoami
    devadmin
    $ profiles
    Device Security
    $ /usr/sadm/bin/smuser list -- -n admin -l
    Authenticating as user: primadmin
    …
    User name:      admin
    User ID (UID):  101
    Primary group:  sysadmin
    Secondary groups:
    Comment: system administrator
    Login Shell: /bin/pfksh
    …
    Rights: System Administrator
    Assigned Roles:
  4. 「Rights:」行で役割の権利プロファイルの名前を探します。
  5. prof_attr データベースの権利プロファイルを見つけます。

    System Administrator プロファイルはプロファイルの集合なので、System Administrator プロファイルのプロファイルを一覧表示する必要があります。

    $ cd /etc/security
    $ grep "System Administrator" prof_attr 
    System Administrator:::Can perform most non-security administrative
    tasks:profiles=Audit Review,Printer Management,Cron Management,
    Device Management,File System Management,Mail Management,Maintenance
    and Repair,Media Backup,Media Restore,Name Service Management,Network
    Management,Object Access Management,Process Management,Software
    Installation,User Management,All;help=RtSysAdmin.html
  6. 権利プロファイルごとに、exec_attr データベースの権利プロファイルを見つけます。

    たとえば、Network Management プロファイルは、System Administrator プロファイルの補助プロファイルです。Network Management プロファイルには、多数の特権付きコマンドが含まれます。

    $ cd /etc/security
    $ grep "Network Management" exec_attr 
    Network Management:solaris:cmd:::/usr/sbin/ifconfig:privs=sys_net_config
    Network Management:solaris:cmd:::/usr/sbin/route:privs=sys_net_config

    コマンドおよびそれらに割り当てられた特権は、solaris ポリシーエントリの最後の 2 つのフィールドです。役割のプロファイルシェルで、これらのコマンドを実行することができます。

例 11-12 役割での特権付きコマンドの実行

ユーザーが役割を引き受けると、シェルはプロファイルシェルになります。したがって、コマンドは、コマンドに割り当てられた特権で実行されます。次の例で、admin 役割は、 useful.script ファイルに関する権利を変更することができます。

% whoami
jdoe
% ls -l useful.script
-rwxr-xr-- 1 elsee eng 262 Apr 2 10:52 useful.script
chgrp admin useful.script
chgrp: useful.script: Not owner
% su - admin
Password: <Type admin password>
$ /usr/ucb/whoami
admin
$ chgrp admin useful.script
$ chown admin useful.script
$ ls -l useful.script
-rwxr-xr-- 1 admin admin 262 Apr 2 10:53 useful.script