Solaris ネーミングの設定と構成

所有者および管理者に対する Passwd へのアクセス制限

ここでは、passwd テーブルのパスワードに関係する列に対する読み取りアクセスを所有者とテーブルの管理者だけに制限し、しかも passwd テーブル内の残りの列に対する未認証主体 (アプリケーションを含む) の読み取りアクセスに影響を与えない方法を説明します。

この作業では、次のアクセス権を設定します。

                         Nobody  Owner   Group  World 
Table Level Rights:      ----    rmcd    rmcd   ---- 
Passwd Column Rights:    ----    rm--    rmcd   ---- 
Shadow Column Rights:    ----    rm--    rmcd   ----

Passwd 列のセキュリティ上の留意点

前提条件

必要な情報

必要なのは passwd テーブルの名前だけです。

パスワード列へのアクセスを制限する方法

  1. ドメインのマスターサーバーにログインします。

    この例ではルートマスターサーバー rootmaster を使用します。

  2. 現在のテーブルと列のアクセス権を確認します。

    niscat -o コマンドを実行します。

    rootmaster# niscat -o passwd.org_dir
    

    この作業では、次のような既存のアクセス権になっていることを前提としています。

    Access Rights    : ----rmcdrmcdr--- 
    	Columns		:
    	[0]  Name	: name
    		Access Rights : r-----------r---
    	[1]  Name	: passwd
    		Access Rights : -----m----------
    	[2]  Name	: uid
    		Access Rights : r-----------r---
    	[3]  Name	: gid
    		Access Rights : r-----------r---
    	[4]  Name	: gcos
    		Access Rights : r----m------r---
    	[5]  Name	: home 
    		Access Rights : r-----------r---
    	[6]  Name	: shell
    		Access Rights : r-----------r---
    	[7]  Name	: shadow 
    		Access Rights : r-----------r---

    自分のアクセス権が異なる場合、別の構文を使用する必要があります。詳細は、Solaris ネーミングの管理のアクセス権に関連する章を参照してください。

  3. テーブルのアクセス権を変更します。

    nischmod コマンドを実行して、テーブルのオブジェクトレベルのアクセス権を ----rmcdrmcd---- に変更します。

    rootmaster# nischmod og=rmcd,nw= passwd.org_dir
    
  4. 列のアクセス権を変更します。

    nistbladm コマンドを -u オプションを付けて使用して、passwd 列 および shadow 列のアクセス権を次のように変更します。

    passwd ---- rm-- ---- ---- 
    shadow ---- r--- ---- ---- 
    rootmaster# nistbladm -u passwd=o+r, shadow=o+r passwd.org_dir
    
  5. 新しいアクセス権を確認します。

    手順 2 の場合と同様、niscat -o コマンドを実行します。アクセス権は、手順 2 の出力と同じでなければなりません。