Solaris_UserAcl クラスは、Solaris_Acl クラスから、デフォルト値 r (読み取り専用) の文字列型プロパティ capability を継承します。
capability プロパティを次のいずれかの値に設定することで、アクセス権を設定できます。
|
アクセス権 |
説明 |
|---|---|
|
r |
読み取り |
|
rw |
読み取りおよび書き込み |
|
w |
書き込み |
|
なし |
アクセス権なし |
Solaris_UserAcl クラスは、次の 2 つのキープロパティを定義します。名前空間内には、名前空間とユーザー名を組み合わせた ACL ペアのインスタンスを 1 つだけ入れることができます。
|
プロパティ |
データ型 |
目的 |
|---|---|---|
|
nspace |
string |
ACL を適用する名前空間を示す |
|
username |
string |
ACL を適用するユーザーを示す |
Solaris_UserAcl クラスのインスタンスを作成します。
...
/* root\security (名前空間の名前) を使用して初期化した名前空間オブジェクトを
ローカルホスト上に作成する */
CIMNameSpace cns = new CIMNameSpace("", "root\security");
// root\security 名前空間にスーパーユーザーとして接続する
cc = new CIMClient(cns, user, user_passwd);
// Solaris_UserAcl クラスを取得する
cimclass = cc.getClass(new CIMObjectPath("Solaris_UserAcl");
// Solaris_UserAcl の新しいインスタンスを作成する
class ci = cimclass.newInstance();
...
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"));
...
インスタンスを更新します。
... // 更新されたインスタンスを CIM オブジェクトマネージャに渡す cc.createInstance(new CIMObjectPath(), ci); ...