How it works
The Group Family configuration specifies rules to determine:
- Scope The set of directory objects managed by Group Family is referred to as scope. The scope can be limited to objects of a certain category (such as User objects) located in certain organizational units. Filtering can be applied to further refine the scope.
- Groupings Group Family divides the scope into sub-sets referred to as groupings. Each grouping consists of objects with the same values of certain properties, referred to as group-by properties. Each grouping is identified by a certain combination of values of the group-by properties, with a list of all the combinations being stored and maintained as part of the Group Family configuration.
- Group names Unless otherwise specified, Group Family creates a new group for each new grouping found, with the group name being generated in accordance with the group naming rules. It is also possible to manually assign existing groups to some groupings, causing Group Family to capture those groups.
- Links For each grouping, Group Family creates or captures a group, links the group to the grouping, and populates the group with the objects found in the grouping. During each subsequent run, Group Family uses the link information to discover the group linked to the grouping, and updates the membership list of that group to reflect the changes in the grouping. The groups known to Group Family via the link information are referred to as controlled groups.
So, during the first run, Group Family performs as follows:
- The scope is calculated and analyzed to build a list of all the existing combinations of values of the group-by properties. The list is then added to the Group Family configuration.
- For each combination of values, a grouping is calculated consisting of all objects in the scope that have the group-by properties set to the values derived from that combination.
- For each grouping, a group is created or captured, and linked to the grouping. The Group Family configuration is updated with information about those links. Whether to create or capture a group is determined by the Group Family configuration.
- For each group linked to a certain grouping (controlled group), the membership list is updated to only include the objects found in that grouping. All the existing members are removed from the group and then all the objects found in the grouping are added to the group.
During a subsequent run, Group Family performs as follows:
- The scope is calculated and analyzed to build up a list of all the existing combinations of values of the group-by properties. The Group Family configuration is then updated with that list.
- For each combination of values, a grouping is calculated consisting of all objects in the scope that have the group-by properties set to the values derived from that combination.
- For each grouping, a link information-based search is performed to discover the group linked to that grouping. If the group has been found, its membership list is updated so the group only includes the objects found in the grouping. Otherwise, a group is created or captured, linked to the grouping, and populated with the objects found in the grouping.
When creating a group to accommodate a given grouping, Group Family uses the group naming rules to generate a name for that group. The rules define a name based on the combination of values of the group-by properties that identifies the grouping. The group naming rules are stored as part of the Group Family configuration.
When capturing an existing group to accommodate a given grouping, Group Family uses a group-to-grouping link created manually and stored as part of the Group Family configuration. The link specifies the combination of values of the group-by properties to identify the grouping, and determines the group to be linked to that grouping.
Cross-domain Group Family
When you configure a Group Family, you choose containers that hold the objects you want Group Family to assemble into groups (managed object containers) as well as the container to hold those groups (controlled group container). The Group Family policy has the option allowing you to select managed object containers from any domains registered with Active Roles. With this option, managed object containers may be from different domains and the domain of the controlled group container may be different from the domain of the managed object containers. Depending upon the location of the managed object containers, the groups controlled by Group Family can include objects from domains other than the domain that holds the controlled group container (external domains).
Active Directory has restrictions regarding the types of groups that can have members from external domains, and the types of groups that can have membership in other groups. All these restrictions apply to the groups controlled by Group Family. Thus, Active Roles does not allow Group Family to add objects from external domains to global groups, nor does it allow Group Family to add domain local groups to a global group. With these natural restrictions, you can configure Group Family so that its controlled groups include members from any domains registered with Active Roles.
As stated above, whether managed object containers can be selected from external domains depends upon the Group Family policy. If you want to use this capability, select the Enable cross-domain membership policy option (see Group Family policy options).
Group Family policy options
Group Family policy options determine the Group Family processing behavior. For instance, there is a policy option that determines whether controlled groups can have members from external domains.
You can view or change Group Family policy options in the Active Roles console as follows:
- In the console tree, select Configuration | Policies | Administration | Builtin.
- In the details pane, double-click Built-in Policy - Group Family.
- In the Built-in Policy - Group Family Properties dialog box, click the Policies tab, select the policy, and click View/Edit.
- In the Policy Properties dialog box that appears, click the Policy Settings tab.
The Policy Settings tab includes the following options:
- Enable cross-domain membership
Select this option if you want Group Family to support the grouping of objects from external domains. When selected, this option allows each Group Family instance to have managed object containers from any domains that are registered with Active Roles. If this option is not selected, the managed object containers must be from the domain of the Group Family configuration storage group.
Selecting this option should be considered a long-term commitment to scenarios where objects managed by Group Family may reside in domains other than the domain of the Group Family configuration storage group—external domains. Once you have enabled cross-domain membership, you can configure Group Family instances to look for managed objects in any domains registered with Active Roles. However, if you later decide to un-select this policy options, the Group Family instances that were configured to look for managed objects in external domains will cease to function. You will have to inspect and, if needed, reconfigure your existing Group Family instances to limit scope of managed objects to the domain of the Group Family configuration storage group.
- Enable support for non-stored virtual attributes
When selected, this option makes it possible for Group Family to perform grouping based on custom non-stored virtual attributes-the attributes that have their value calculated by a certain policy rather than stored in the Active Roles database. This option can have a negative effect on Group Family performance, so select it only if you have any of the Group Family group-by properties implemented as a custom non-stored virtual attribute.
This option is normally not selected for performance reasons, which causes Group Family not to create controlled groups that use a custom non-stored virtual attribute as a group-by property. You need to select this option if you want Group Family to create controlled groups by grouping objects based on custom non-stored virtual attributes.
Creating a Group Family
Creation of a Group Family is a two-step process that includes:
- Creating the Group Family configuration
- Running the Group Family to initially create or capture groups
The Active Roles console provides the New Group Family wizard for creating the Group Family configuration. The wizard creates a group, referred to as configuration storage group, and populates that group with the configuration data you specify.
Note that you can create any number of Group Families, with each Group Family intended to control a certain collection of groups. When linking a group to a grouping, the Group Family engine ensures the group is under the control of only the Group Family that created the link, thereby avoiding conflicts.
NOTE: Groups created through Group Family does not support group name with special characters, such as, /\[]:;|=*?<>".