Oracle® Internet Directory Administrator's Guide 10g (9.0.4) Part Number B12118-01 |
|
Attribute Uniqueness in the Directory, 3 of 5
This section describes and gives examples of rules you follow when creating attribute uniqueness constraints. It contains these topics:
To understand the examples in this section, refer to Figure 8-1.
When multiple attribute uniqueness constraints have different values in orcluniqueattrname
, their effects are independent of each other.
For example, suppose that a user defines two attribute uniqueness constraints as follows:
Constraint1:
orcluniqueattrname: employee_id
Constraint2:
orcluniqueattrname: email_id
In this example, Constraint1 and Constraint2 enforce uniqueness on the specified attribute within their own attribute uniqueness scopes. Constraint1 and Constraint2 are independent of each other.
When multiple attribute uniqueness constraints have the same values in orcluniqueattrname
, orcluniquescope
and orcluniqueobjectclass
, but different values in orcluniquesubtree
, the union of subtree scopes specified by those attribute uniqueness constraints is checked.
For example, refer to Figure 8-1. Suppose that a user defines two attribute uniqueness constraints as follows:
Constraint1:
orcluniqueattrname: employee_id orcluniquesubtree: o=sales, c=us, cn=root orcluniquescope: onelevel
Constraint2:
orcluniqueattrname: employee_id orcluniquesubtree: o=hr, c=euro, cn=root orcluniquescope: onelevel
In this example, the attribute uniqueness on employee_id
is enforced against all entries under subtree o=sales,c=us,cn=root
and o=hr,c=euro,cn=root
--that is, the directory server enforces the unique value of the employee_id
attribute for employee1
, employee2
, employee5
and employee6
.
When multiple attribute uniqueness constraints have the same values in orcluniqueattrname
, orcluniquesubtree
and orcluniqueobjectclass
, but different values in orcluniquescope
, the attribute uniqueness constraint with the largest search scope takes effect.
For example, referring to Figure 8-1, suppose that a user defines two attribute uniqueness constraints as follows:
Constraint1:
orcluniqueattrname: employee_id orcluniquesubtree: c=us, cn=root orcluniquescope: onelevel
Constraint2:
orcluniqueattrname: employee_id orcluniquesubtree: c=us, cn=root orcluniquescope: sub
In this example, the attribute uniqueness on employee_id
is enforced against all entries under the subtree c=us,cn=root
and the entry c=us,cn=root
itself. Note that this is the same as if the user had defined only Constraint2.
When multiple attribute uniqueness constraints have the same values in orcluniqueattrname
, orcluniquesubtree
, and orcluniquescope
, but different values in orcluniqueobjectclass
, then the union of attributes belonging to those object classes is checked.
For example, referring to Figure 8-1, suppose that a user defines two attribute uniqueness constraints as follows:
Constraint1:
orcluniqueattrname: employee_id orcluniquesubtree: c=us, cn=root orcluniqueobjectclass: person
Constraint2:
orcluniqueattrname: employee_id orcluniquesubtree: c=us, cn=root
In this example, the attribute uniqueness on employee_id
is enforced against all entries under the subtree c=us,cn=root
and the entry c=us,cn=root
itself, no matter what object class those entries belong to. Note that Constraint2 specifies no orcluniqueobjectclass
attribute, which is the same as specifying all object classes.
When multiple attribute uniqueness constraints have the same values in orcluniqueattrname
, but different values in orcluniquesubtree
, orcluniquescope
, and orcluniqueobjectclass
, the union of entries that belong to the attribute uniqueness scopes of different constraints are checked.
For example, referring to Figure 8-1, suppose that a user defines two attribute uniqueness constraints as follows:
Constraint1:
orcluniqueattrname: employee_id orcluniquesubtree: o=sales, c=us, cn=root orcluniquescope: onelevel orcluniqueobjectclass: person
Constraint2:
orcluniqueattrname: employee_id orcluniquesubtree: c=euro, cn=root orcluniquescope: sub orcluniqueobjectclass: organization
In this example, the attribute uniqueness on employee_id is enforced against the following:
|
![]() Copyright © 1999, 2003 Oracle Corporation. All Rights Reserved. |
|