Solaris WBEM 開発ガイド

Solaris_UserAcl クラス

Solaris_UserAcl クラスは、Solaris_Acl 基底クラスを拡張したクラスです。Solaris_UserAcl クラスは、Solaris_Acl 基底クラスから文字列プロパティ capability をデフォルト値 r (読み取り専用) で継承します。capability プロパティには、次の表に示すアクセス特権の値を設定できます。

アクセス権 

説明 

r

読み取り 

rw

読み取りおよび書き込み 

w

書き込み 

なし 

アクセス権なし 

次の表に、Solaris_UserAcl クラスが定義するキープロパティを示します。名前空間内には、名前空間とユーザー名 ACL のペアのインスタンスを 1 つだけ入れることができます。

プロパティ 

データ型 

目的 

nspace

string

ACL を適用する名前空間を示す

username

string

ACL を適用するユーザーを示す

Procedureユーザーのアクセス制御設定

手順
  1. Solaris_UserAcl クラスのインスタンスを作成します。

    ...
    /* ローカルホスト上に root\security (名前空間の名前)
    で初期化した名前空間オブジェクトを作成する */
    
    CIMNameSpace cns = new CIMNameSpace("", "root\security");
    
    // root ユーザーとして root\security 名前空間に接続する
    cc = new CIMClient(cns, user, user_passwd);
    
    // Solaris_UserAcl クラスを取得する
    cimclass = cc.getClass(new CIMObjectPath("Solaris_UserAcl");
    
    // Solaris_UserAcl の新しいインスタンスを作成する
    class ci = cimclass.newInstance();
    ...
  2. capability プロパティを目的のアクセス権に設定します。

    ... 
    /* root\molly 名前空間内のオブジェクトに対するユーザー Guest の
    アクセス権 (capability) を読み取りおよび書き込みに変更する */ 
    ci.setProperty("capability", new CIMValue(new String("rw")); 
    ci.setProperty("nspace", new CIMValue(new String("root\molly")); 
    ci.setProperty("username", new CIMValue(new String("guest")); 
    ...
  3. インスタンスを更新します。

    ... 
    // 更新されたインスタンスを CIM オブジェクトマネージャに渡す 
    cc.createInstance(new CIMObjectPath(), ci); 
    ...