IP Library Granted Patent US 8,515,907
Granted Patent B2
US 8,515,907 · App. 13/600,608 · Granted Aug 20, 2013

Apparatus, and associated method, for synchronizing directory services

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,515,907
App. No.
13/600,608
Granted
Aug 20, 2013
Kind
B2
Abstract

An apparatus, and an associated method, synchronizes directory services based on group membership. A synchronization scope is defined by the group membership to a specified nesting level of nestable groups. Groups within the synchronization scope are fetched and de-nested. And, once fetched, the members of the fetched and de-nested groups are fetched. The fetched object names are used to update the destination directory service.

Claims (58)

1. An apparatus that facilitates a directory synchronization of a first set of source directory services with a corresponding set of destination directory services, said apparatus comprising:

a watermark fetcher configured to fetch a watermark reference for each destination directory service upon which a synchronization is to be performed;

a group fetcher and de-nester configured to fetch and to de-nest group members to a nesting level within a synchronization scope which identifies a group and the nesting level;

a memory configured to store fetched group members fetched and de-nested by said group fetcher and de-nester;

an object name fetcher configured to fetch identifications of changed directory objects of each group member fetched by said group fetcher and de-nester within the synchronization scope that are above the watermark references for each destination directory service; and

an updater configured to update the corresponding group members of destination directory services.

2. The apparatus of claim 1 , wherein:

the watermark references fetched by said watermark fetcher are stored in the memory.

3. The apparatus of claim 2 , wherein:

said object name fetcher is configured to fetch an identification of each directory object of each de-nested group fetched and de-nested by said group fetcher and de-nester.

4. The apparatus of claim 1 , wherein:

said updater is configured to update the corresponding set of destination directory services responsive to fetching by said object name fetcher of the identifications of changed directory objects of each group member.

5. The apparatus of claim 4 wherein:

said updater is configured to update the corresponding set of destination directory services by creating additional member objects.

6. The apparatus of claim 4 wherein:

said updater is configured to update the corresponding set of destination directory services by deleting removed member objects.

7. The apparatus of claim 1 , wherein:

each destination directory service is configured to store member objects according to a Lightweight Directory Access Protocol (LDAP).

8. The apparatus of claim 7 , wherein:

each member object has an associated set of attributes, and

when an attribute of a member object changes in one of the destination directory services, the updater automatically updates the value of the attribute for the corresponding member object of each of the other destination directory services.

9. The apparatus of claim 8 , wherein:

the synchronization scope is established by designating one of the set of attributes to be of a particular value.

10. The apparatus of claim 9 , wherein the scope of synchronization is defined by an LDAP search filter that is used to distinguish between member objects.

11. The apparatus of claim 1 , further comprising:

a scan initiator configured to generate a scan initiation; and

wherein the synchronization is performed responsive to the scan initiation.

12. The apparatus of claim 11 , wherein:

the scan initiation is generated based on one of a timed interval or a triggering event.

13. The apparatus of claim 11 , wherein:

the scan initiator initiates the synchronization and receives synchronization scope information;

wherein the synchronization scope information includes scope group information and nesting level information.

14. The apparatus of claim 1 , wherein:

each of the destination directory services comprises multiple numbers of directory services.

15. A method for synchronizing a first set of source directory services with a corresponding set of destination directory services, comprising:

fetching a watermark reference for each destination directory service upon which a synchronization is to be performed;

establishing a scope of synchronization that encompasses at least one nested group and a nesting level, wherein each nested group includes one or more member objects;

fetching and de-nesting group members to the nesting level within the scope of synchronization;

storing fetched group members fetched and de-nested in the fetching and de-nesting;

fetching identifications of changed directory objects of each group member fetched in the fetching and de-nesting within the synchronization scope that are above the watermark reference for each destination directory service; and

updating the corresponding group members of destination directory services.

16. The method of claim 15 , further comprising:

identifying changes to member objects of each source directory service;

accessing a stored watermark reference; and

using the stored watermark reference as a starting point in said identifying changes.

17. The method of claim 15 , further comprising:

adding a member object in a selected one directory service of the first set of source directory services and thereby automatically creating the added member object in the selected one directory service of the corresponding set of destination directory services.

18. The method of claim 15 , further comprising:

removing a member object from a selected one directory service of the first set of source directory services and thereby automatically deleting the removed member object from the selected one directory service of the corresponding set of destination directory services.

19. The method of claim 15 , further comprising:

assigning a new member object to a group in a selected one directory service of the first set of source directory services; and

responsive to said assigning, updating the selected one directory service of the corresponding set of destination directory services by adding the new member object within the selected one directory service of the corresponding set of destination directory services.

20. A non-transitory computer readable medium having recorded thereon instructions for a directory synchronization of a first set of source directory services with a corresponding set of destination directory services that when executed cause a computer to carry out:

fetching a watermark reference for each destination directory service upon which a synchronization is to be performed;

fetching and de-nesting group members to a nesting level within a synchronization scope which identifies a group and the nesting level;

storing fetched group members fetched and de-nested by the fetching and de-nesting in a memory;

fetching identifications of changed directory objects of each group member fetched in the fetching and de-nesting within the synchronization scope that are above the watermark reference for each destination directory service; and

updating the corresponding group members of destination directory services.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Mar 19, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 032471/0734 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2012
From: BURJOSKI, JOSEPH DANIEL
To: RESEARCH IN MOTION LIMITED
Reel/Frame 028881/0464 →