Synchronize user identification data between Wikis and the LDAP directory 

Use WikisMemberService commands to synchronize member IDs between Wikis and the user directory.


Before starting

Each IBM Connections application has a local database that stores users to avoid costly lookups on the server user directory. The Wikis application automatically synchronizes the local directory with the server directory using directory ID values. If all users have directory IDs that never change, then Wikis synchronizes the local and server directories automatically. Perform the steps in this topic to synchronize the database and directory using a directory value other than directory ID.

If you have configured all IBM Connections components to synchronize automatically, including Wikis, you should disable the Wikis user and group synch tasks. For information on disabling the synch tasks, see the descriptions of scheduledTasks.DirectoryUserSynch.enabled and scheduledTasks.DirectoryGroupSynch.enabled in the topic Wikis configuration properties.

If you are using the Profiles directory service, first synchronize the ExtId values in the Profiles database with the user directory before you can run the commands that synchronize member IDs described in this topic. See Synchronize user data between Profiles and LDAP for more details.

To use administrative commands, use the wsadmin client. See Starting the wsadmin client for details.


About this task

The commands used to synchronize member IDs between Wikis and the user directory do not return any output. After running the commands, be sure to check the SystemOut.log file because the login names of users that were not successfully updated are logged in this file.


Procedure

  1. Start the wsadmin client.

  2. Start the Wikis Jython script interpreter using the following command:

      execfile("wikisAdmin.py")

  3. Use the commands below to change the internal IDs of users.

      WikisMemberService.getById(string id)

        Returns information about a user specified by a user ID. The command only searches the Wikis database, so it only returns users who have logged in at least once.

        Parameters:

        id

          The user ID in the following standard Universally Unique Identifier (UUID) format: 00000000-0000-0000-0000-000000000000. The following information is returned:

          • id: The user ID in the following standard Universally Unique Identifier (UUID) format: 00000000-0000-0000-0000-000000000000.

          • name: The user's name in the database as of the date in directoryLastUpdate.

          • email: The user's email address.

          • isOrphan: Returns true if the user is in the database, but not the directory.

          • createDate: The date the user was added to the database.

          • lastVisit: The date of the user's last log in.

          • directoryLastUpdate: The last time the user's data was synchronized from the directory.

          • directoryGroupLastUpdate: The last time this user's group membership was synchronized from the directory.

          • communityLastUpdate: The last time this user's Community membership was synchronized.

        For example:

        WikisMemberService.getById("2d93497d-065a-4022ae25-a4b52598d11a")

      WikisMemberService.getByExtId(string externalId)

        Returns information about a user specified by an external directory ID. The command only searches the Wikis database, so it only returns users who have logged in at least once.

        Parameters:

        externalId

          A string value matching the user's external directory ID. This can be any parameter in the user directory that you have configured as the directory ID. The following user information is returned:

          • id: The user ID in the following standard Universally Unique Identifier (UUID) format: 00000000-0000-0000-0000-000000000000.

          • name: The user's name in the database as of the date in directoryLastUpdate.

          • email: The user's email address.

          • isOrphan: Returns true if the user is in the database, but not the directory.

          • createDate: The date the user was added to the database.

          • lastVisit: The date of the user's last log in.

          • directoryLastUpdate: The last time the user's data was synchronized from the directory.

          • directoryGroupLastUpdate: The last time this user's group membership was synchronized from the directory.

          • communityLastUpdate: The last time this user's Community membership was synchronized.

        For example:

        WikisMemberService.getByExtId("2d93497d-065a-4022ae25-a4b52598d11a")

      WikisMemberService.getByEmail(string email)

        Returns information about a user specified by an email address. The command only searches the Wikis database, so it only returns users who have logged in at least once.

        Parameters:

        email

          The email address for the user. The following user information is returned:

          • id: The user ID in the following standard Universally Unique Identifier (UUID) format: 00000000-0000-0000-0000-000000000000.

          • name: The user's name in the database as of the date in directoryLastUpdate.

          • email: The user's email address.

          • isOrphan: Returns true if the user is in the database, but not the directory.

          • createDate: The date the user was added to the database.

          • lastVisit: The date of the user's last log in.

          • directoryLastUpdate: The last time the user's data was synchronized from the directory.

          • directoryGroupLastUpdate: The last time this user's group membership was synchronized from the directory.

          • communityLastUpdate: The last time this user's Community membership was synchronized.

        For example:

        WikisMemberService.getByEmail("john_doe@company.com")

      WikisMemberService.syncAllMembersByExtId( {"updateOnEmailLoginMatch": ["true" | "false"] } )

        See Synchronize user data using administrative commands for details.

      WikisMemberService.syncMemberByExtId("currentExternalId"[, {"newExtId" : "id-string" [, "allowExtIdSwap" : ["true" | "false"] ] } ] )

        See Synchronize user data using administrative commands for details.

      WikisMemberService.inactivateMemberByEmail("email")

        See Synchronize user data using administrative commands for details.

      WikisMemberService.inactivateMemberByExtId("externalID")

        See Synchronize user data using administrative commands for details.

      WikisMemberService.getMemberExtIdByEmail("email")

        See Synchronize user data using administrative commands for details.

      WikisMemberService.getMemberExtIdByLogin("login")

        See Synchronize user data using administrative commands for details.

      WikisMemberService.syncBatchMemberExtIdsByEmail("emailFile" [, {"allowInactivate" : ["true" | "false"] } ] )

        See Synchronize user data using administrative commands for details.

      WikisMemberService.syncBatchMemberExtIdsByLogin("loginFile" [, {"allowInactivate" : ["true" | "false"] } ] )

        See Synchronize user data using administrative commands for details.

      WikisMemberService.syncMemberExtIdByEmail("email" [, { "allowInactivate" : ["true" | "false"] } ])

        See Synchronize user data using administrative commands for details.

      WikisMemberService.syncMemberExtIdByLogin("name" [, {"allowInactivate": ["true" | "false"] } ])

        See Synchronize user data using administrative commands for details.

Related tasks
Starting the wsadmin client
Synchronize user data between Profiles and the LDAP directory

Related reference
Wikis configuration properties


   

 

});

+

Search Tips   |   Advanced Search