set protected-items コマンドは、特定のサブツリー、エントリ、またはサブツリーやエントリ内の特定の属性を保護できます。 protected-items コントロールは、DIT に含まれる属性の保護に使用します。
このコマンドは、登録ユーザおよびパブリック ユーザのアクセス レベルで付与された指定のアクセス権限を拒否(削除)します。
このアクセス レベルで拒否されるアクセス権限としては、管理者ユーザおよびスーパーユーザのアクセス レベルでのルールによって付与されたものなどがあります。
アクセス制御ルールが有効になるのは、アクセス制御が有効化されている場合のみです。
このコマンドの形式は以下のようになります。
set protected-items [tag] = {
[users] [scope] [attrs = attribute-list] [perms = permission-list] [validity = [start hhmm end hhmm] [on day]]
};
(オプション)このルールの名前を定義します。
(オプション)アイテムへのアクセスが拒否されるユーザを識別します。 以下のいずれかを使用します。
このルールがユーザ自身のエントリへのユーザのアクセスを制限するように指定します。
このルールがユーザ自身のエントリの下のサブツリーへのユーザのアクセスを制限するように指定します。
このルールによってアクセスが制限されるユーザを指定します。
このルールによってアクセスが制限されるロールを指定します。
このルールによってアクセスが制限されるグループを指定します。
このルールによってアクセスが制限されるユーザサブツリーを指定します。
(オプション) DIT でこのルールが適用される部分を定義します。
以下のいずれかを使用します。
このルールによって保護されるエントリを指定します。
リーフ ノードでないエントリが指定された場合、低いレベルのエントリへのパスでエントリを使用する権限をユーザが引き続き持ちます。そのため、エントリがリーフ ノードの場合、通常はエントリのみのを指定します。
このルールで保護されるサブツリーを指定します。
(オプション)このルールが適用される属性または属性セットを定義します。attribute-list は、属性名のカンマ区切りリストです。
attrs が指定されない場合、アクセス ルールはエントリ全体に適用されます。
perms が指定されない場合、コマンドはすべての権限を拒否します。
通常、perms は指定しません。
スコープ上のすべてのユーザ権限を拒否します。
スコープ上のユーザの読み取り権限を拒否します。 これは、perms=all の指定と同じ効果を持ちます。
スコープ内で定義された情報に追加するためのユーザ権限を拒否します。
スコープ内で定義された情報を削除するためのユーザ権限を拒否します。
スコープ内で定義された情報を変更するためのユーザ権限を拒否します。
スコープ内で定義されたエントリの名前を変更するためのユーザ権限を拒否します。
(オプション)このルールが有効な期間を定義します。 以下のいずれかを使用します。
このルールが有効な期間の開始および終了を定義します。
このルールが有効な日を定義します。day は、12345 や 67 (1 が月曜日)のような文字列です。
例: サブツリーの保護
この例では、サブツリーを非表示にします。
set protected-items hide-finance-from-employees = {
group = employees"
subtree = <c AU"><o Democorp"><ou Finance">
};
例: エントリの保護
この例では、ディレクトリ内に保存された DSA 定義に関するいくつかの管理情報を非表示にするために、このコマンドが使用されています。
set protected-items hide-schema-from-employees" = {
role = employees"
entry = <c AU"><o Democorp"><ou Schema">
};
指定したエントリは、(より高い優先度のアクセス制御ルールによりアクセス権が付与されない限り)従業員ロールのメンバには非表示です。
例: いくつかの属性の保護
この例では、該当する Democorp サブツリー内のすべてのエントリの homePhone 属性および userPassword 属性を保護します。
これらの属性は、そのスコープの中の Democorp サブツリーを持つすべてのスーパーユーザおよび管理者ユーザに表示されますが、他のすべてのユーザには非表示です。
set protected-items hide-passwords-and-home-phone" = {
subtree = <c AU"><o Democorp">
attrs = homePhone, userPassword
};
例: ユーザにエントリ全体の表示および一部の属性の変更を許可
この例では、ユーザにエントリ内の大部分の属性の更新アクセスを付与しながら、ごく一部の属性の更新は禁止する方法を示します。
更新が可能な属性のリストが拡大する可能性があるため(たとえば、より多くの属性がエントリに追加された場合)、この問題はより複雑になります。
この問題の解決策として、アクセス制御ルール内のオプションの許可を使用する方法があります。 以下のアクセス ルールを使用して、サブツリー内のすべてのユーザが自身のエントリ内のすべての属性を変更できます。
set reg-user = {
own-entry
subtree = <o test>
perms = modify
};
これらの属性の一部への更新アクセスを禁止するには、以下のコマンドを使用します。
set protected-items = {
own-entry
subtree = <o test>
attrs = attr1, attr2, ...
perms = modify
};
これにより、リストされた属性のユーザによる変更は禁止されますが、読み取りアクセスは禁止されません。 これは、拒否されるのが modify の権限のみであるためです。
例: ユーザに自身のエントリ内の "role" 以外のすべての属性の変更を許可
この例において、set reg-user ルールは、ユーザ自身のエントリ内のすべての属性に対する変更権限をユーザに付与し、protected-items ルールは、role 属性のみに対する変更権限を削除します。 その結果、ユーザは自身のエントリ内の "role" 以外のすべての属性を変更できます。ただし、role 属性の読み取りは可能です。
set reg-user = {
own-entry
subtree = <o Democorp>
perms = modify
};
set protected-items = {
own-entry
subtree = <o DemoCorp>
attrs = role
perms = modify
};
set protected-items ルールに perms = modify がない場合、ユーザはロール属性に対してすべての権限(読み取りアクセス権を含む)が拒否されます。
| Copyright © 2012 CA. All rights reserved. | このトピックについて CA Technologies に電子メールを送信する |