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

ドキュメントの情報

はじめに

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

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

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

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

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

4.  ウイルススキャンサービス (タスク)

5.  デバイスアクセスの制御 (タスク)

6.  BART を使用したファイル整合性の検証 (タスク)

7.  ファイルアクセスの制御 (タスク)

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

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

9.  役割に基づくアクセス制御の使用 (タスク)

RBAC の使用 (タスク)

RBAC デフォルトの表示および使用 (タスク)

RBAC デフォルトの表示および使用 (タスクマップ)

定義済みのすべてのセキュリティー属性を表示する方法

割り当てられた権限を表示する方法

役割になる方法

ユーザーのセキュリティー属性を変更する方法

割り当てられている管理権限を使用する方法

サイトでの RBAC のカスタマイズ (タスク)

RBAC の初期構成 (タスクマップ)

RBAC の実装を計画する方法

役割を作成する方法

役割を割り当てる方法

役割を監査する方法

権利プロファイルを作成する方法

システム権利プロファイルをクローニングおよび変更する方法

承認を作成する方法

RBAC プロパティーをレガシーアプリケーションに追加する方法

RBAC と特権の割り当てをトラブルシューティングする方法

RBAC の管理 (タスク)

RBAC の管理(タスクマップ)

役割のパスワードを変更する方法

役割のセキュリティー属性を変更する方法

割り当てられているセキュリティー属性の順序を変更する方法

管理者を明示的に割り当てられた権限に制限する方法

ユーザーが自分のパスワードを使用して役割になれるようにする方法

root 役割をユーザーに変更する方法

特権の使用 (タスク)

システム上の特権を一覧表示する方法

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

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

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

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

ポートに拡張特権ポリシーを適用する方法

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

10.  Oracle Solaris のセキュリティー属性 (参照)

パート IV 暗号化サービス

11.  暗号化フレームワーク (概要)

12.  暗号化フレームワーク (タスク)

13.  鍵管理フレームワーク

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

14.  プラグイン可能認証モジュールの使用

15.  Secure Shell の使用

16.  Secure Shell (参照)

17.  簡易認証セキュリティー層の使用

18.  ネットワークサービスの認証 (タスク)

パート VI Kerberos サービス

19.  Kerberos サービスについて

20.  Kerberos サービスの計画

21.  Kerberos サービスの構成 (タスク)

22.  Kerberos エラーメッセージとトラブルシューティング

23.  Kerberos 主体とポリシーの管理 (タスク)

24.  Kerberos アプリケーションの使用 (タスク)

25.  Kerberos サービス (参照)

パート VII Oracle Solaris での監査

26.  監査 (概要)

27.  監査の計画

28.  監査の管理 (タスク)

29.  監査 (参照)

用語集

索引

RBAC の管理 (タスク)

RBAC の構成が完了し、それを使用している場合は、次の手順を使用してシステム上で RBAC を維持および変更します。

RBAC の管理(タスクマップ)

次のタスクマップは、役割に基づくアクセス制御 (RBAC) の初期実装後に RBAC を維持するための手順を示しています。

タスク
説明
参照先
役割のパスワードを変更します。
root 役割は、役割のパスワードを変更します。
役割の割り当てられた権限を変更します。
役割のセキュリティー属性を変更します。
権利プロファイルを変更します。
制限特権やデフォルトの特権などの、権利プロファイル内のセキュリティー属性の値を変更します。
権利プロファイルの割り当ての順序を変更します。
割り当てられているセキュリティー属性をユーザーまたは役割が使用できることを確保します。
制限付きプロファイルシェルを作成します。
ユーザーまたは役割がソフトウェア内のすべてのコマンドにフルアクセスできないようにします。
ユーザーの特権を制限します。
ユーザーの基本または制限特権セットを制限します。
デフォルトの権限をシステムから削除します。
特別な用途でシステムを作成します。
ユーザーがそのユーザーのパスワードを指定して役割になれるようにします。
ユーザーのセキュリティー属性を変更して、そのユーザーのパスワードでユーザーが役割に対して認証されるようにします。この動作は Linux の役割の動作に似ています。
root 役割をユーザーに変更します。
システムを停止する前に、root 役割をユーザーに変更します。
デスクトップ上のユーザーアクションを制限します。
これらのアクションに RBAC は必要ありませんが、システムのセキュリティーが向上します。

これらの手順では、ユーザー、役割、および権利プロファイルに関するセキュリティー属性を管理します。基本的なユーザー管理手順については、『Oracle Solaris 11.1 のユーザーアカウントとユーザー環境の管理』の第 1 章「ユーザーアカウントとユーザー環境の管理 (概要)」を参照してください。

役割のパスワードを変更する方法

役割は多数のユーザーに割り当てることができるため、役割が割り当てられているユーザーは、その役割のパスワードを変更できません。

始める前に

root 役割になる必要があります。詳細は、「割り当てられている管理権限を使用する方法」を参照してください。

例 9-24 役割のパスワードの変更

この例では、root 役割がローカルの devmgt 役割のパスワードを変更します。

# passwd -r files  devmgt
New password: Type new password
Confirm password: Retype new password

この例では、root 役割が LDAP ディレクトリサービス内の devmgt 役割のパスワードを変更します。

# passwd -r ldap devmgt
New password: Type new password
Confirm password: Retype new password

この例では、root 役割がファイルと LDAP 内の devmgt 役割のパスワードを変更します。

# passwd devmgt
New password: Type new password
Confirm password: Retype new password

役割のセキュリティー属性を変更する方法

始める前に

役割のほとんどのセキュリティー属性を変更するには、User Security 権利プロファイルが割り当てられている管理者になる必要があります。監査フラグを割り当てたり、役割のパスワードを変更したりするには、root 役割になる必要があります。詳細は、「割り当てられている管理権限を使用する方法」を参照してください。

  1. rolemod コマンドを使用します。

    このコマンドは、ローカルのネームサービスまたは LDAP で定義される役割の属性を変更します。-A-P、および -R オプションの値は、- または + で変更できます。- 記号は、現在割り当てられている値から値を引くことを示します。+ 記号は、現在割り当てられている値に値を加えることを示します。

    rolemod コマンドの詳細は、次を参照してください。

    • 簡単な説明については、「役割を作成する方法」roleadd コマンドの説明を参照してください。

    • このコマンドのすべての引数については、rolemod(1M) のマニュアルページを参照してください。

    • -K オプションの鍵の値の一覧については、user_attr(4) のマニュアルページを参照してください。

    次のコマンドは、LDAP リポジトリ内の devmgt 役割に 2 つの権利プロファイルを追加します。

    $ rolemod  -P +"Device Management,File Management" -S ldap devadmin
  2. 役割のパスワードを変更するには、「役割のパスワードを変更する方法」を参照してください。

例 9-25 ローカル役割のセキュリティー属性の変更

この例では、セキュリティー管理者は、VSCAN Management 権利プロファイルが含まれるように prtmgt 役割を変更します。

$ rolemod -c "Handles printers and virus scanning" \
-P "Printer Management,VSCAN Management,All" prtmgt

例 9-26 役割への特権の直接割り当て

この例では、セキュリティー管理者は、システム時間に影響を及ぼすきわめて特殊な特権を systime 役割に委ねます。

$ rolemod -K defaultpriv='proc_clock_highres' systime

defaultpriv キーワードの値は、常にその役割のプロセスに含まれる特権のリスト内にあります。

割り当てられているセキュリティー属性の順序を変更する方法

「割り当てられたセキュリティー属性の検索順序」で説明されているように、Oracle Solaris は、割り当ての順番に権利プロファイルを読み取ります。この手順では、権利プロファイルの順序を変更します。

始める前に

User Security 権利プロファイルが割り当てられている管理者になる必要があります。詳細は、「割り当てられている管理権限を使用する方法」を参照してください。

  1. 現在ユーザーまたは役割に割り当てられている権利プロファイルのリストを表示します。

    リストが順番に表示されます。

    $ profiles username|rolename
  2. 権利プロファイルを正しい順序で割り当てます。
    $ usermod | rolemod -P "list-of-profiles"

例 9-27 権利プロファイルの特定の順序での割り当て

この例では、管理者は、特権付きコマンドを含む権利プロファイルが、役割 devadmin のすべての権利プロファイルのあとに一覧表示されるように決定します。

$ profiles devadmin
    Basic Solaris User
    All
    Device Management

そのため、devadmin 役割は、自分に割り当てられている特権でデバイス管理コマンドを実行できません。

管理者は、devadmin に権利プロファイルを再割り当てします。新しい割り当ての順序では、devadmin は、自分に割り当てられている特権でデバイス管理コマンドを実行できます。

$ rolemod -P "Device Management,Basic Solaris User,All"
$ profiles devadmin
    Device Management
    Basic Solaris User
    All

管理者を明示的に割り当てられた権限に制限する方法

2 つの方法で、ユーザーまたは役割を限られた数の管理操作に制限できます。

始める前に

root 役割になる必要があります。詳細は、「割り当てられている管理権限を使用する方法」を参照してください。

例 9-28 システムをそのユーザーが使用できる権限を制限するように変更する

この例では、管理者がネットワークの管理にのみ役立つシステムを作成します。管理者は、policy.conf ファイルから Basic Solaris User 権利プロファイルとすべての承認を削除します。Console User 権利プロファイルは削除されません。結果となる policy.conf ファイルで影響を受けた行は次のとおりです。

...
#AUTHS_GRANTED=
#PROFS_GRANTED=Basic Solaris User
CONSOLE_USER=Console User
...

承認、コマンド、または権利プロファイルが明示的に割り当てられているユーザーのみがこのシステムを使用できます。ログイン後、その承認ユーザーは管理責務を果たすことができます。承認されたユーザーがシステムコンソールの前に座っている場合、そのユーザーには Console User の権利があります。

ユーザーが自分のパスワードを使用して役割になれるようにする方法

デフォルトでは、ユーザーが役割になるには、その役割のパスワードを入力する必要があります。この手順を実行して、Oracle Solaris での役割の引き受けが Linux 環境での役割の引き受けと同様になるようにします。

始める前に

User Security 権利プロファイルが含まれている役割になります。この役割を、変更対象の roleauth 値を持つ役割にはできません。

例 9-29 権利プロファイルの使用時に、割り当てられたユーザーのパスワードを役割が使用できるようにする

この例では、root 役割がローカルシステム上の役割 secadminroleauth の値を変更します。

$ profiles -p "Local System Administrator"
profiles:Local System Administrator> set roleauth="user"
profiles:Local System Administrator> end
profiles:Local System Administrator> exit

Security Administrator 権利プロファイルが割り当てられているユーザーがその役割を引き受ける場合、そのユーザーはパスワードの入力を求められます。次のシーケンスでは、役割名は secadmin です。

% su - secadmin
Password: Type user password
$ /** You are now in a profile shell with administrative rights**/

そのユーザーにほかの役割が割り当てられている場合も、同様にそれらの役割に対する認証にユーザー自身のパスワードが使用されます。

例 9-30 LDAP リポジトリ内の役割の roleauth の値を変更する

この例では、root 役割によって、役割 secadmin を引き受けることができるすべてのユーザーが役割の引き受け時に自分のパスワードを使用できるようになります。この機能は、LDAP サーバーによって管理されるすべてのシステムでこれらのユーザーに付与されます。

# rolemod -S ldap -K roleauth=user secadmin

注意事項

roleauth=user が役割に対して設定されている場合は、ユーザーのパスワードで、認証された役割がその役割に割り当てられているすべての権限にアクセスできるようになります。このキーワードは検索に依存しています。詳細は、「割り当てられたセキュリティー属性の検索順序」を参照してください。

root 役割をユーザーに変更する方法

管理者は、ネットワークから削除されたシステムを停止するときに root をユーザーに変更することがあります。この場合、システムに root としてログインすることでクリーンアップが簡略化されます。

始める前に

root になる必要があります。詳細は、「割り当てられている管理権限を使用する方法」を参照してください。

  1. root 役割の割り当てをローカルユーザーから削除します。

    たとえば、その役割の割り当てを 2 人のユーザーから削除します。

    % su - root
    Password: a!2@3#4$5%6^7
    # roles jdoe
    root
    # roles kdoe
    root
    # roles ldoe
    secadmin
    # usermod -R "" jdoe
    # usermod -R "" kdoe
    #
  2. root 役割をユーザーに変更します。
    # rolemod -K type=normal root

    現在 root 役割になっているユーザーはそのままです。root アクセスを持つほかのユーザーは、su を実行して root に変更することも、root ユーザーとしてシステムにログインすることもできます。

  3. 変更内容を検証します。

    次のいずれかのコマンドを使用できます。

    # getent user_attr root
    root::::auths=solaris.*;profiles=All;audit_flags=lo\:no;lock_after_retries=no;
    min_label=admin_low;clearance=admin_high

    type キーワードが出力内に見つからないか、または normal に等しい場合、そのアカウントは役割ではありません。

    # userattr type root

    出力が空であるか、または normal が表示される場合、そのアカウントは役割ではありません。

例 9-31 root 役割がシステムの構成に使用されることを防ぐ

この例では、root アカウントによるシステムの保守を防ぐように、サイトのセキュリティーポリシーで要求します。管理者は、システムを保守する役割をすでに作成し、テストしています。これらの役割には、すべてのセキュリティープロファイルと System Administrator 権利プロファイルが含まれています。信頼できるユーザーには、バックアップを復元できる役割が割り当てられています。システム、ユーザー、または権利プロファイルの監査フラグを変更できる役割はありません。

root アカウントがシステムの保守に使用されないようにするために、セキュリティー管理者は、root 役割の割り当てを削除します。root アカウントはシングルユーザーモードでシステムにログインできる必要があるため、そのアカウントのパスワードは保持されます。

# usermod -K roles= jdoe
# userattr roles jdoe

例 9-32 root ユーザーを root 役割に変更する

この例では、root ユーザーが root ユーザーを役割に戻します。

最初に、root ユーザーは root アカウントを役割に変更し、その変更内容を確認します。

# usermod -K type=role root
# getent user_attr root
root::::type=role;auths=solaris.*;profiles=All;audit_flags=lo\:no;
lock_after_retries=no;min_label=admin_low;clearance=admin_high

次に、rootroot 役割をローカルユーザーに割り当てます。

# usermod -R root jdoe

注意事項

デスクトップ環境では、root が役割である場合、root として直接ログインすることはできません。このシステム上で root が役割になっていることを示す診断メッセージが表示されます。

root 役割を引き受けることのできるローカルアカウントがない場合は、ローカルアカウントを作成します。root としてシングルユーザーモードでシステムにログインし、ローカルユーザーアカウントおよびパスワードを作成し、その新しいアカウントに root 役割を割り当てます。次に、この新しいユーザーでログインし、root 役割を引き受けます。