SlideShare a Scribd company logo
1 of 36
Beyond the Basics:
An Overview of User LifeCycle
and Managing Users with TDI
Michael Ahern | IBM Connections Developer | IBM




              © 2011 IBM Corporation
Agenda
●   Overview of Connections User LifeCycle

●   User LifeCycle Architecture

●   Overview of the Profiles TDI Solution

●   Profiles TDI Connector Architecture

●   Scenario based Demo

●   Questions and Answers




                                             © 2011 IBM Corporation   2
What is User LifeCycle?
●   A number of other customers requested that the ability to retire or 'inactivate' users rather than being
    required to delete them from the Profiles DB


●   Profile types, provide a partial solution, but cannot deliver on full end-to-end including the UI
    changes expected: indicating inactivity in membership lists, hiding them from name searches,
    removing users from membership typeaheads etc and (most importantly) managing users in non-
    Profiles components.


●   Outside of inactivation, we were seeing a large number of operational issues in production with
    managing user data across the platform. For example, there was no way to automatically
    propagate name, email and external ID changes from Profiles to the other Connections
    components.


●   What was delivered:
     ─ User state and other relevant data will be communicated from Profiles to the rest of the
       Connections platform
     ─ All Connections Application UIs will reflect and indicate the 'state' of the user
     ─ Inactive users do not show up in a 'default' Profiles name / advanced searches



                                                                © 2011 IBM Corporation   3
Contrast of User Populations Pre/Post 3.0.
●   This slide captures how the user population of the Connections system
    compares and contrasts between <3.0 and 3.0+



          The World Before 3.0                   The World 3.0 and beyond

                 All Users Ever                            All Users Ever

                                                      Users in Profiles DB


                                  Users                                       Users
         Active Users /           App 'X'         Active Users                App 'X'
         Users in Profiles        Knows                                       Knows
         DB




                                                 © 2011 IBM Corporation   4
Active vs. Inactive User Member Tables
●   When a user changes state, the member and login tables need to be updated
    to prevent data constraint issues later on.

                   Active User                                       Inactive User
                   MEMBER TABLE                                        MEMBER TABLE
     Column           Example Value                  Column                 Example Value
    InternalId        12345...                       InternalId             12345...
    DisplayName       Mike Ahern                     DisplayName Mike Ahern
    Email             ahernm@us.ibm.com   <NULLED>   Email                  <NO VALUE>
    ExternalId        abc-foo-1234..                 ExternalId             abc-foo-1234..
    State             0                              State                  1

                 LOGINS TABLE TABLE                               LOGINS TABLE TABLE
     Internal-ID      Login               <NULLED>   Internal-ID            Login
    12345...          ahernm@us.ibm.com              <NO VALUE> <NO VALUE>

    12345...          ahernm

                                                       © 2011 IBM Corporation   5
User LifeCycle Architecture - Commands
●   User LifeCycle is implemented by a set of discrete 'platform commands' that
    allow you to drive user data changes from Profiles across the platform.


●   These commands are executable via TDI; the Admin ATOM API and wsadmin.
    In addition, each of the components has matching wsadmin commands to allow
    you to correct data in an individual component.


●   Platform Commands:
    Command                             Description
    Update User                         Update user data
    Publish User Data                   Publish the current user data from Profiles
    Inactivate User                     Inactivate user
    Activate User                       Activate / reactivate a user
    Swap User Access                    Allows you to restore a users content and
                                        inactivate their 'phantom' Profile record

                                                   © 2011 IBM Corporation   6
LifeCycle Architecture – Platform Command (SEND)
                                                                                            Consuming
                                                                                            Component
TDI Process
                  Profiles TDI
                                   ProfilesDB
                  Connector


                                                                     Event
  LDAP                                                           Infrastructure

                                 Profiles Server



                                          Synchronous Event                                   News Server
 Profiles Admin                           Augmentation (such
 API Caller                               as Audit)

    Profiles Admin
                                                                                            3rd Party Event
    API Caller
                                                                                            SPI

                                                               © 2011 IBM Corporation   7
LifeCycle Architecture – Platform Command (ACK)



        Consuming
        Component                  Event Infrastructure


              Synchronous Event
              Augmentation (such
              as Audit)




                                                                          News Server
       Component
          DB
                                                                         Future 3rd Party
                                                                         Monitoring App?



                                            © 2011 IBM Corporation   8
What is Tivoli Directory Integrator
●   IBM Tivoli Directory Integrator is the “Norwegian army knife” of data synchronization. It
    is software that synchronizes data across multiple repositories. TDI can connect and
    transfer data from and to:
       ─ LDAP directories
       ─ Domino databases
       ─ Relational Databases
       ─ And much more . . .

●   A unit of work in TDI-speak is called an Assembly Line (AL) and Assembly Lines are
    made up of a set of components known as 'Connectors' which read / write and / or
    transform data
●   Connections ships with a number of 'out-of-the-box' AL's for synchronizing LDAP data
    with Profiles.


                   source
                  source                                                              Target
                 source
                                                                                     (Profiles)
                                               TDI

                                                        © 2011 IBM Corporation   9
Fitting the Pieces Together: Scripting
●   For 3.0 the major objectives of TDI has been in improving maintainability of the
    system and providing customer tooling and extension points to cover functional
    gaps not filled by the core product.


●   Major functions:
     ─   Source Repository Connector
     ─   Custom delete logic hook
     ─   Improved Logging
     ─   And...


●   The Profiles TDI Connectors
     ─   The TDI Connectors is the formalization of the interface to the Profiles backend
     ─   The Connector allows you to script and interact with the Profiles DB via the TDI
         scripting editor
     ─   The Connectors are fully integrated with User LifeCycle, allowing you to push data
         changes to the Connections Platform

                                                        © 2011 IBM Corporation   10
Under the Hood: Connector Details

  Connector Details
                                              EMPLOYEE                     SURNAME
  - During read / create /
                                                Table                        Table
  update of profile records
  all four tables are merged
  into a single logical TDI
  entry
  - During deletes, TDI will   Profile TDI                                     DYNA_ATTRS
  touch and remove content     Connector                                          Table
  from all of the tables
  associated with a user                               GIVEN_NAME
  (PROF_CONNECTION,                                        Table
  PEOPLE_TAG, ETC)                                                                   Additional
                                                                                      Tables



                                                                   PROFILE_EXTENSIONS
                                             PROFILE_LOGIN                Table
                                                 Table



                                                      © 2011 IBM Corporation    11
Demo: The Connector In Action
Scenario 1: Migrating users to a new LDAP

PROBLEM: The IT department is in the process of reoganizing the LDAP
directory. As a result of this action the external ID (GUID) will change for all users
in the system.

SOLUTION: Assuming the 'uid' (the company assigned unique identifier for the
user) has not changed during the migration, run 'sync_all_dns'. Profiles will
propagate the changes to the platform




                                                    © 2011 IBM Corporation   12
Demo: The Connector In Action
Scenario 2: Normalizing values in the 'uid' field of Profiles

PROBLEM: At company X Ops recently realized that their LDAP contains
inconsistent data for 'uid'. Different 'casing' is used for different users and in some
cases there are even trailing spaces after names! In parallel to cleaning up their
LDAP they wish to normalize the data in Profiles to remove inconsistencies.

SOLUTION: Create a custom script.




                                                    © 2011 IBM Corporation   13
Questions?




             © 2011 IBM Corporation   14
Legal Disclaimer
 © IBM Corporation 2011. All Rights Reserved.

 The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without
 warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of
 the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors,
 or altering the terms and conditions of the applicable license agreement governing the use of IBM software.

 References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change
 at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor
 shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.

 IBM, the IBM logo, Lotus, WebSphere, Rational, Rational Jazz and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both.

 Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

 Other company, product, or service names may be trademarks or service marks of others.

 All references to Renovations refer to a fictitious company and are used for illustration purposes only.




                                                                                                                                                  © 2011 IBM Corporation                 15
References
●   User LifeCycle:
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Managing_users_ic301
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/User_life_cycle_details_ic301
    http://www-
    10.lotus.com/ldd/lcwiki.nsf/dx/Managing_user_data_using_Profiles_administrative_commands_ic301
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Troubleshooting_the_user_lifecycle_SPI_ic301

●   Learning TDI:
    http://www.tdi-users.org/twiki/bin/view/Integrator/WebHome
    http://www.tdi-users.org/twiki/bin/view/Integrator/LearningTDI


●   Connections / TDI:
    http://www-
    10.lotus.com/ldd/lcwiki.nsf/dx/Developing_custom_Tivoli_Directory_Integrator_assembly_lines_for_Pro
    files_ic301
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Setting_up_your_development_environment_ic301
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Using_a_custom_source_repository_connector_ic301




                                                                     © 2011 IBM Corporation   16
Backup – Iterator Mode
    Iterates through the Profiles database
       – no input settings required
       – returns all Profile data, including extension attributes




                                                                © 2011 IBM Corporation   17
Backup – Update Mode
  update via link criteria
  Set data to be updated




                              © 2011 IBM Corporation   18
Beyond the Basics:
                          An Overview of User LifeCycle
                          and Managing Users with TDI
                          Michael Ahern | IBM Connections Developer | IBM




                                        © 2011 IBM Corporation




Hello, my name is Michael Ahern... I am a developer
 with IBM Connections in Dublin. Prior to moving to
 Dublin earlier this year, I was the development lead
 for the Connections Profiles component and have
 been working on Connections in some shape or form
 since 1.0.

Talk today: on the new user management features in
  Connections 3.0 known as user life cycle and how
  this integrates together with the new features in the
  Profiles TDI component.

EMAIL: michael.ahern@ie.ibm.com

NOTE: Some slides are not created equal. Please
 excuse some of the terser comments.
Agenda
       ●   Overview of Connections User LifeCycle

       ●   User LifeCycle Architecture

       ●   Overview of the Profiles TDI Solution

       ●   Profiles TDI Connector Architecture

       ●   Scenario based Demo

       ●   Questions and Answers




                                                    © 2011 IBM Corporation   2




The agenda for today is...

To give an overview of what User LifeCycle is and an
  architectural background into its functioning.

I'll then switch over and do the same for the Profiles
    TDI solution and then finally tie the together with a
    couple of illustrative examples.
What is User LifeCycle?
        ●   A number of other customers requested that the ability to retire or 'inactivate' users rather than being
            required to delete them from the Profiles DB


        ●   Profile types, provide a partial solution, but cannot deliver on full end-to-end including the UI
            changes expected: indicating inactivity in membership lists, hiding them from name searches,
            removing users from membership typeaheads etc and (most importantly) managing users in non-
            Profiles components.


        ●   Outside of inactivation, we were seeing a large number of operational issues in production with
            managing user data across the platform. For example, there was no way to automatically
            propagate name, email and external ID changes from Profiles to the other Connections
            components.


        ●   What was delivered:
             ─ User state and other relevant data will be communicated from Profiles to the rest of the
               Connections platform
             ─ All Connections Application UIs will reflect and indicate the 'state' of the user
             ─ Inactive users do not show up in a 'default' Profiles name / advanced searches



                                                                        © 2011 IBM Corporation   3




Customers requested...

Profiles types provides partial. Issues:
* No visual indication outside of Profiles
* Users in membership typeaheads
* Notifications
Contrast of User Populations Pre/Post 3.0.
        ●   This slide captures how the user population of the Connections system
            compares and contrasts between <3.0 and 3.0+



                 The World Before 3.0                    The World 3.0 and beyond

                         All Users Ever                            All Users Ever

                                                              Users in Profiles DB


                                          Users                                       Users
                 Active Users /           App 'X'         Active Users                App 'X'
                 Users in Profiles        Knows                                       Knows
                 DB




                                                         © 2011 IBM Corporation   4




Slide showing comparison of users known by system
  in 2.5 vs 3.0.

● In 2.5 Profiles contains only 'active' users and the
   entire active population.
● Components contain a subset of Profiles + inactive

   users that have used the component, but are now
   inactive

● In 3.0+ Profiles contains the total population of active
   users + the population a subset of the inactive user
   population that has been inactivated since 3.0+ was
   installed.
● Components may contain additional inactive users

   that Profiles is not aware of.
Active vs. Inactive User Member Tables
        ●   When a user changes state, the member and login tables need to be updated
            to prevent data constraint issues later on.

                           Active User                                       Inactive User
                           MEMBER TABLE                                        MEMBER TABLE
             Column           Example Value                  Column                 Example Value
            InternalId        12345...                       InternalId             12345...
            DisplayName       Mike Ahern                     DisplayName Mike Ahern
            Email             ahernm@us.ibm.com   <NULLED>   Email                  <NO VALUE>
            ExternalId        abc-foo-1234..                 ExternalId             abc-foo-1234..
            State             0                              State                  1

                         LOGINS TABLE TABLE                               LOGINS TABLE TABLE
             Internal-ID      Login               <NULLED>   Internal-ID            Login
            12345...          ahernm@us.ibm.com              <NO VALUE> <NO VALUE>

            12345...          ahernm

                                                               © 2011 IBM Corporation   5




In certain orgs email / login Ids are reused after a
  period of inactivity (this happens at IBM for instance).
  To prevent this from causing operational issues, the
  login ID(s) and email address are blanked to allow
  their reuse.

Not blanking the fields can prevent new users from
 being able to access the system due to ID clashes
 between the active & inactive users. In more
 extreme cases, the clashes can result in data
 leakage if system admins accidentally reactivate the
 old user's account in order to allow the new user to
 log into the system.
User LifeCycle Architecture - Commands
●   User LifeCycle is implemented by a set of discrete 'platform commands' that
    allow you to drive user data changes from Profiles across the platform.


●   These commands are executable via TDI; the Admin ATOM API and wsadmin.
    In addition, each of the components has matching wsadmin commands to allow
    you to correct data in an individual component.


●   Platform Commands:
    Command                            Description
    Update User                        Update user data
    Publish User Data                  Publish the current user data from Profiles
    Inactivate User                    Inactivate user
    Activate User                      Activate / reactivate a user
    Swap User Access                   Allows you to restore a users content and
                                       inactivate their 'phantom' Profile record

                                                  © 2011 IBM Corporation   6
LifeCycle Architecture – Platform Command (SEND)
                                                                                                   Consuming
                                                                                                   Component
       TDI Process
                         Profiles TDI
                                          ProfilesDB
                         Connector


                                                                            Event
         LDAP                                                           Infrastructure

                                        Profiles Server



                                                 Synchronous Event                                   News Server
        Profiles Admin                           Augmentation (such
        API Caller                               as Audit)

           Profiles Admin
                                                                                                   3rd Party Event
           API Caller
                                                                                                   SPI

                                                                      © 2011 IBM Corporation   7




This picture shows the parts of the pieces of the
 Platform Command architecture.

1. Events are generated in TDI or an Admin API
  process.

2. Changes are queued up in a staging table in Profiles
  (USER_PLATFORM_EVENTS) for publication.
  Within Profiles, the changes are seen immediately.

3. Changes is published via the Event Infrastructure to
  the Connections platform

4. Consuming Components (Blogs, Communities,
  Files, etc) process the commands.
LifeCycle Architecture – Platform Command (ACK)



                Consuming
                Component                  Event Infrastructure


                      Synchronous Event
                      Augmentation (such
                      as Audit)




                                                                                  News Server
               Component
                  DB
                                                                                 Future 3rd Party
                                                                                 Monitoring App?



                                                    © 2011 IBM Corporation   8




In addition to the command message, there is an
  acknowledgement. Currently no action is taken on
  the acknowledgement.

The intention is to ensure that there is an auditing trail
 of each components response to the command. If
 no applications are subscribing to the message, the
 infrastructure will not publish the message to reduce
 the system load.

In the future it is hoped that an ISV or ISSL may build a
  monitoring application utilizing the command
  acknowledgement to alert admins as to the platform-
  wide result of their commands.
What is Tivoli Directory Integrator
        ●   IBM Tivoli Directory Integrator is the “Norwegian army knife” of data synchronization. It
            is software that synchronizes data across multiple repositories. TDI can connect and
            transfer data from and to:
               ─ LDAP directories
               ─ Domino databases
               ─ Relational Databases
               ─ And much more . . .

        ●   A unit of work in TDI-speak is called an Assembly Line (AL) and Assembly Lines are
            made up of a set of components known as 'Connectors' which read / write and / or
            transform data
        ●   Connections ships with a number of 'out-of-the-box' AL's for synchronizing LDAP data
            with Profiles.


                           source
                          source                                                              Target
                         source
                                                                                             (Profiles)
                                                       TDI

                                                                © 2011 IBM Corporation   9




* Norweigen army knife of data sync

* Loads / transforms data

* Unit of work AL

* Connections provides a group of AL's (a solution) for
  synchronizing data with Profiles
Fitting the Pieces Together: Scripting
●   For 3.0 the major objectives of TDI has been in improving maintainability of the
    system and providing customer tooling and extension points to cover functional
    gaps not filled by the core product.


●   Major functions:
     ─   Source Repository Connector
     ─   Custom delete logic hook
     ─   Improved Logging
     ─   And...


●   The Profiles TDI Connectors
     ─   The TDI Connectors is the formalization of the interface to the Profiles backend
     ─   The Connector allows you to script and interact with the Profiles DB via the TDI
         scripting editor
     ─   The Connectors are fully integrated with User LifeCycle, allowing you to push data
         changes to the Connections Platform

                                                        © 2011 IBM Corporation   10
Under the Hood: Connector Details

         Connector Details
                                                     EMPLOYEE                     SURNAME
         - During read / create /
                                                       Table                        Table
         update of profile records
         all four tables are merged
         into a single logical TDI
         entry
         - During deletes, TDI will   Profile TDI                                     DYNA_ATTRS
         touch and remove content     Connector                                          Table
         from all of the tables
         associated with a user                               GIVEN_NAME
         (PROF_CONNECTION,                                        Table
         PEOPLE_TAG, ETC)                                                                   Additional
                                                                                             Tables



                                                                          PROFILE_EXTENSIONS
                                                    PROFILE_LOGIN                Table
                                                        Table



                                                             © 2011 IBM Corporation    11




Admins should never (or as rarely as possible) modify
 Dbs directly. In reality (especially with user data)
 there are special cases where this is a necessary
 function.

As the complexity grows (as here), it becomes
 essentially impossible to make manual modifications
 in a manner that maintains DB integrity.

The Connector solves this situation of having to
 understand the schema, but providing a stable
 flattened data view.
Demo: The Connector In Action
       Scenario 1: Migrating users to a new LDAP

       PROBLEM: The IT department is in the process of reoganizing the LDAP
       directory. As a result of this action the external ID (GUID) will change for all users
       in the system.

       SOLUTION: Assuming the 'uid' (the company assigned unique identifier for the
       user) has not changed during the migration, run 'sync_all_dns'. Profiles will
       propagate the changes to the platform




                                                           © 2011 IBM Corporation   12




Scenario one is a trick problem... LifeCycle combined
 with TDI should handle this seamlessly in most
 organizations.

Scenario two, is a simple problem, however pre-3.0 it
 was fairly complicated to execute this form of data
 change. In the field I have seen organizations spend
 man-weeks (sometime months) preparing for and
 executing data changes like this. One customer
 actually sent me a 40 page document describing the
 procedure the ops-team intended to implement to
 solve this problem.

These problems can now be solved in man-days and
 with a far higher degree of reliability.
Demo: The Connector In Action
       Scenario 2: Normalizing values in the 'uid' field of Profiles

       PROBLEM: At company X Ops recently realized that their LDAP contains
       inconsistent data for 'uid'. Different 'casing' is used for different users and in some
       cases there are even trailing spaces after names! In parallel to cleaning up their
       LDAP they wish to normalize the data in Profiles to remove inconsistencies.

       SOLUTION: Create a custom script.




                                                           © 2011 IBM Corporation   13




Scenario one is a trick problem... LifeCycle combined
 with TDI should handle this seamlessly in most
 organizations.

Scenario two, is a simple problem, however pre-3.0 it
 was fairly complicated to execute this form of data
 change. In the field I have seen organizations spend
 man-weeks (sometime months) preparing for and
 executing data changes like this. One customer
 actually sent me a 40 page document describing the
 procedure the ops-team intended to implement to
 solve this problem.

These problems can now be solved in man-days and
 with a far higher degree of reliability via a single-pass
 script rather than via the 10+ wsadmin commands it
 took previously.
Questions?




             © 2011 IBM Corporation   14
Legal Disclaimer
 © IBM Corporation 2011. All Rights Reserved.

 The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without
 warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of
 the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors,
 or altering the terms and conditions of the applicable license agreement governing the use of IBM software.

 References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change
 at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor
 shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.

 IBM, the IBM logo, Lotus, WebSphere, Rational, Rational Jazz and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both.

 Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

 Other company, product, or service names may be trademarks or service marks of others.

 All references to Renovations refer to a fictitious company and are used for illustration purposes only.




                                                                                                                                                  © 2011 IBM Corporation                 15
References
●   User LifeCycle:
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Managing_users_ic301
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/User_life_cycle_details_ic301
    http://www-
    10.lotus.com/ldd/lcwiki.nsf/dx/Managing_user_data_using_Profiles_administrative_commands_ic301
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Troubleshooting_the_user_lifecycle_SPI_ic301

●   Learning TDI:
    http://www.tdi-users.org/twiki/bin/view/Integrator/WebHome
    http://www.tdi-users.org/twiki/bin/view/Integrator/LearningTDI


●   Connections / TDI:
    http://www-
    10.lotus.com/ldd/lcwiki.nsf/dx/Developing_custom_Tivoli_Directory_Integrator_assembly_lines_for_Pro
    files_ic301
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Setting_up_your_development_environment_ic301
    http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Using_a_custom_source_repository_connector_ic301




                                                                     © 2011 IBM Corporation   16
Backup – Iterator Mode
    Iterates through the Profiles database
       – no input settings required
       – returns all Profile data, including extension attributes




                                                                © 2011 IBM Corporation   17
Backup – Update Mode
  update via link criteria
  Set data to be updated




                              © 2011 IBM Corporation   18

More Related Content

What's hot

Oracle - Programatica2010
Oracle - Programatica2010Oracle - Programatica2010
Oracle - Programatica2010Agora Group
 
InduSoft Web Studio e Dream Report
InduSoft Web Studio e Dream ReportInduSoft Web Studio e Dream Report
InduSoft Web Studio e Dream ReportAVEVA
 
Kapil Verma: What's new in FrameMaker 10
Kapil Verma: What's new in FrameMaker 10Kapil Verma: What's new in FrameMaker 10
Kapil Verma: What's new in FrameMaker 10akashjd
 
Introducing adf business components
Introducing adf business componentsIntroducing adf business components
Introducing adf business componentsPrabhat gangwar
 
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...Novell
 
Aras Vision and Roadmap with Aras Innovator PLM Software
Aras Vision and Roadmap with Aras Innovator PLM SoftwareAras Vision and Roadmap with Aras Innovator PLM Software
Aras Vision and Roadmap with Aras Innovator PLM SoftwareAras
 
Service Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
Service Oriented Architecture (SOA) [2/5] : Enterprise Service BusService Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
Service Oriented Architecture (SOA) [2/5] : Enterprise Service BusIMC Institute
 
Workflow bis17
Workflow bis17Workflow bis17
Workflow bis17sakpob
 
Expendables E-AppStore
Expendables E-AppStoreExpendables E-AppStore
Expendables E-AppStorelobalint
 
AD for i in modern world
AD for i in modern worldAD for i in modern world
AD for i in modern worldCOMMON Europe
 
Scribe insight 2009
Scribe insight 2009Scribe insight 2009
Scribe insight 2009jeroenpaters
 
[DSBW Spring 2009] Unit 07: WebApp Design Patterns & Frameworks (2/3)
[DSBW Spring 2009] Unit 07: WebApp Design Patterns & Frameworks (2/3)[DSBW Spring 2009] Unit 07: WebApp Design Patterns & Frameworks (2/3)
[DSBW Spring 2009] Unit 07: WebApp Design Patterns & Frameworks (2/3)Carles Farré
 
Aras PLM Software Visualization
Aras PLM Software VisualizationAras PLM Software Visualization
Aras PLM Software VisualizationAras
 
Anish Karmakar S C A
Anish  Karmakar    S C AAnish  Karmakar    S C A
Anish Karmakar S C ASOA Symposium
 
Asyma E3 2012 - Sage 300 ERP 2012 - Emerging Trends - Jamie Kandola
Asyma E3 2012 - Sage 300 ERP 2012  - Emerging Trends - Jamie KandolaAsyma E3 2012 - Sage 300 ERP 2012  - Emerging Trends - Jamie Kandola
Asyma E3 2012 - Sage 300 ERP 2012 - Emerging Trends - Jamie Kandolaasyma
 
Sql Server 2012 overview and licensing
Sql Server 2012 overview and licensingSql Server 2012 overview and licensing
Sql Server 2012 overview and licensingRay Cochrane
 
Take Your Infrastructure To The Next Level Of Agility And Cost Savings–Dynami...
Take Your Infrastructure To The Next Level Of Agility And Cost Savings–Dynami...Take Your Infrastructure To The Next Level Of Agility And Cost Savings–Dynami...
Take Your Infrastructure To The Next Level Of Agility And Cost Savings–Dynami...Carly Snodgrass
 

What's hot (18)

Oracle - Programatica2010
Oracle - Programatica2010Oracle - Programatica2010
Oracle - Programatica2010
 
InduSoft Web Studio e Dream Report
InduSoft Web Studio e Dream ReportInduSoft Web Studio e Dream Report
InduSoft Web Studio e Dream Report
 
Kapil Verma: What's new in FrameMaker 10
Kapil Verma: What's new in FrameMaker 10Kapil Verma: What's new in FrameMaker 10
Kapil Verma: What's new in FrameMaker 10
 
Introducing adf business components
Introducing adf business componentsIntroducing adf business components
Introducing adf business components
 
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...
 
Aras Vision and Roadmap with Aras Innovator PLM Software
Aras Vision and Roadmap with Aras Innovator PLM SoftwareAras Vision and Roadmap with Aras Innovator PLM Software
Aras Vision and Roadmap with Aras Innovator PLM Software
 
Enterprise Service Bus and JBI
Enterprise Service Bus and JBIEnterprise Service Bus and JBI
Enterprise Service Bus and JBI
 
Service Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
Service Oriented Architecture (SOA) [2/5] : Enterprise Service BusService Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
Service Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
 
Workflow bis17
Workflow bis17Workflow bis17
Workflow bis17
 
Expendables E-AppStore
Expendables E-AppStoreExpendables E-AppStore
Expendables E-AppStore
 
AD for i in modern world
AD for i in modern worldAD for i in modern world
AD for i in modern world
 
Scribe insight 2009
Scribe insight 2009Scribe insight 2009
Scribe insight 2009
 
[DSBW Spring 2009] Unit 07: WebApp Design Patterns & Frameworks (2/3)
[DSBW Spring 2009] Unit 07: WebApp Design Patterns & Frameworks (2/3)[DSBW Spring 2009] Unit 07: WebApp Design Patterns & Frameworks (2/3)
[DSBW Spring 2009] Unit 07: WebApp Design Patterns & Frameworks (2/3)
 
Aras PLM Software Visualization
Aras PLM Software VisualizationAras PLM Software Visualization
Aras PLM Software Visualization
 
Anish Karmakar S C A
Anish  Karmakar    S C AAnish  Karmakar    S C A
Anish Karmakar S C A
 
Asyma E3 2012 - Sage 300 ERP 2012 - Emerging Trends - Jamie Kandola
Asyma E3 2012 - Sage 300 ERP 2012  - Emerging Trends - Jamie KandolaAsyma E3 2012 - Sage 300 ERP 2012  - Emerging Trends - Jamie Kandola
Asyma E3 2012 - Sage 300 ERP 2012 - Emerging Trends - Jamie Kandola
 
Sql Server 2012 overview and licensing
Sql Server 2012 overview and licensingSql Server 2012 overview and licensing
Sql Server 2012 overview and licensing
 
Take Your Infrastructure To The Next Level Of Agility And Cost Savings–Dynami...
Take Your Infrastructure To The Next Level Of Agility And Cost Savings–Dynami...Take Your Infrastructure To The Next Level Of Agility And Cost Savings–Dynami...
Take Your Infrastructure To The Next Level Of Agility And Cost Savings–Dynami...
 

Similar to Beyond the Basics: An Overview of User LifeCycle and Managing Users with TDI

DanNotes: Using TDI with IBM Connections
DanNotes: Using TDI with IBM ConnectionsDanNotes: Using TDI with IBM Connections
DanNotes: Using TDI with IBM ConnectionsMorten Christensen
 
Enabling End User And Ad Hoc Reporting With M S S Q L Server 2005 R...
Enabling  End  User And  Ad  Hoc  Reporting  With  M S  S Q L  Server 2005  R...Enabling  End  User And  Ad  Hoc  Reporting  With  M S  S Q L  Server 2005  R...
Enabling End User And Ad Hoc Reporting With M S S Q L Server 2005 R...Joseph Lopez
 
21st Century Service Oriented Architecture
21st Century Service Oriented Architecture21st Century Service Oriented Architecture
21st Century Service Oriented ArchitectureBob Rhubart
 
IBM Connect Switzerland - Der entspannte Administrator
IBM Connect Switzerland - Der entspannte AdministratorIBM Connect Switzerland - Der entspannte Administrator
IBM Connect Switzerland - Der entspannte AdministratorKlaus Bild
 
A great api is hard to find
A great api is hard to findA great api is hard to find
A great api is hard to findDan Diephouse
 
Jazz for Service Management - OMNIbus
Jazz for Service Management - OMNIbusJazz for Service Management - OMNIbus
Jazz for Service Management - OMNIbusIBM_BSM
 
Advanced Federation and Web Services in Aras for Enterprise PLM
Advanced Federation and Web Services in Aras for Enterprise PLMAdvanced Federation and Web Services in Aras for Enterprise PLM
Advanced Federation and Web Services in Aras for Enterprise PLMAras
 
Aras Federation Web Services
Aras Federation Web ServicesAras Federation Web Services
Aras Federation Web ServicesProdeos
 
Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilRoopa Nadkarni
 
Identity management for ibm cognos 8 with ibm tivoli identity manager redp4643
Identity management for ibm cognos 8 with ibm tivoli identity manager redp4643Identity management for ibm cognos 8 with ibm tivoli identity manager redp4643
Identity management for ibm cognos 8 with ibm tivoli identity manager redp4643Banking at Ho Chi Minh city
 
The IBM Rational Insight Reporting Solution
The IBM Rational Insight Reporting SolutionThe IBM Rational Insight Reporting Solution
The IBM Rational Insight Reporting SolutionMarc Nehme
 
Sydney cloud foundry meetup - Service Brokers
Sydney cloud foundry meetup - Service  BrokersSydney cloud foundry meetup - Service  Brokers
Sydney cloud foundry meetup - Service BrokersLawrence Crowther
 
21st Century SOA
21st Century SOA21st Century SOA
21st Century SOABob Rhubart
 
Become BI Architect with 1KEY Agile BI Suite
Become BI Architect with 1KEY Agile BI SuiteBecome BI Architect with 1KEY Agile BI Suite
Become BI Architect with 1KEY Agile BI SuiteDhiren Gala
 
Initial Kautilya Brochure Doc
Initial Kautilya Brochure DocInitial Kautilya Brochure Doc
Initial Kautilya Brochure DocSaket Rai
 
IBM Forms: Streamline your business, reduce cost and paper
IBM Forms: Streamline your business, reduce cost and paperIBM Forms: Streamline your business, reduce cost and paper
IBM Forms: Streamline your business, reduce cost and paperVincent Kwon
 
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...Steve Speicher
 
OSA03 Pourquoi choisir IBM pour vos projets BPM ?
OSA03 Pourquoi choisir IBM pour vos projets BPM ?OSA03 Pourquoi choisir IBM pour vos projets BPM ?
OSA03 Pourquoi choisir IBM pour vos projets BPM ?Nicolas Desachy
 
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for ITDenny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for ITBala Subra
 

Similar to Beyond the Basics: An Overview of User LifeCycle and Managing Users with TDI (20)

DanNotes: Using TDI with IBM Connections
DanNotes: Using TDI with IBM ConnectionsDanNotes: Using TDI with IBM Connections
DanNotes: Using TDI with IBM Connections
 
Enabling End User And Ad Hoc Reporting With M S S Q L Server 2005 R...
Enabling  End  User And  Ad  Hoc  Reporting  With  M S  S Q L  Server 2005  R...Enabling  End  User And  Ad  Hoc  Reporting  With  M S  S Q L  Server 2005  R...
Enabling End User And Ad Hoc Reporting With M S S Q L Server 2005 R...
 
21st Century Service Oriented Architecture
21st Century Service Oriented Architecture21st Century Service Oriented Architecture
21st Century Service Oriented Architecture
 
IBM Connect Switzerland - Der entspannte Administrator
IBM Connect Switzerland - Der entspannte AdministratorIBM Connect Switzerland - Der entspannte Administrator
IBM Connect Switzerland - Der entspannte Administrator
 
A great api is hard to find
A great api is hard to findA great api is hard to find
A great api is hard to find
 
Jazz for Service Management - OMNIbus
Jazz for Service Management - OMNIbusJazz for Service Management - OMNIbus
Jazz for Service Management - OMNIbus
 
Advanced Federation and Web Services in Aras for Enterprise PLM
Advanced Federation and Web Services in Aras for Enterprise PLMAdvanced Federation and Web Services in Aras for Enterprise PLM
Advanced Federation and Web Services in Aras for Enterprise PLM
 
Aras Federation Web Services
Aras Federation Web ServicesAras Federation Web Services
Aras Federation Web Services
 
Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini Patil
 
Identity management for ibm cognos 8 with ibm tivoli identity manager redp4643
Identity management for ibm cognos 8 with ibm tivoli identity manager redp4643Identity management for ibm cognos 8 with ibm tivoli identity manager redp4643
Identity management for ibm cognos 8 with ibm tivoli identity manager redp4643
 
The IBM Rational Insight Reporting Solution
The IBM Rational Insight Reporting SolutionThe IBM Rational Insight Reporting Solution
The IBM Rational Insight Reporting Solution
 
Sydney cloud foundry meetup - Service Brokers
Sydney cloud foundry meetup - Service  BrokersSydney cloud foundry meetup - Service  Brokers
Sydney cloud foundry meetup - Service Brokers
 
21st Century SOA
21st Century SOA21st Century SOA
21st Century SOA
 
Become BI Architect with 1KEY Agile BI Suite
Become BI Architect with 1KEY Agile BI SuiteBecome BI Architect with 1KEY Agile BI Suite
Become BI Architect with 1KEY Agile BI Suite
 
Initial Kautilya Brochure Doc
Initial Kautilya Brochure DocInitial Kautilya Brochure Doc
Initial Kautilya Brochure Doc
 
IBM Forms: Streamline your business, reduce cost and paper
IBM Forms: Streamline your business, reduce cost and paperIBM Forms: Streamline your business, reduce cost and paper
IBM Forms: Streamline your business, reduce cost and paper
 
Spotfire
SpotfireSpotfire
Spotfire
 
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
 
OSA03 Pourquoi choisir IBM pour vos projets BPM ?
OSA03 Pourquoi choisir IBM pour vos projets BPM ?OSA03 Pourquoi choisir IBM pour vos projets BPM ?
OSA03 Pourquoi choisir IBM pour vos projets BPM ?
 
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for ITDenny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
Denny Lee\'s Data Camp v1.0 talk on SSRS Best Practices for IT
 

More from Stuart McIntyre

IBM Connections 4.5 Reviewer's Guide
IBM Connections 4.5 Reviewer's GuideIBM Connections 4.5 Reviewer's Guide
IBM Connections 4.5 Reviewer's GuideStuart McIntyre
 
Social Business: The Irresistible Force To Overcome Immovable Objections
Social Business: The Irresistible Force To Overcome Immovable ObjectionsSocial Business: The Irresistible Force To Overcome Immovable Objections
Social Business: The Irresistible Force To Overcome Immovable ObjectionsStuart McIntyre
 
BCCON 2014 - Social Business: The irresistible force to overcome immovable ob...
BCCON 2014 - Social Business: The irresistible force to overcome immovable ob...BCCON 2014 - Social Business: The irresistible force to overcome immovable ob...
BCCON 2014 - Social Business: The irresistible force to overcome immovable ob...Stuart McIntyre
 
Social Business - The Irresistible Force to Overcome Immovable Objections (IB...
Social Business - The Irresistible Force to Overcome Immovable Objections (IB...Social Business - The Irresistible Force to Overcome Immovable Objections (IB...
Social Business - The Irresistible Force to Overcome Immovable Objections (IB...Stuart McIntyre
 
A Profile is the key a users' Connections identity, exploit it!
A Profile is the key a users' Connections identity, exploit it!A Profile is the key a users' Connections identity, exploit it!
A Profile is the key a users' Connections identity, exploit it!Stuart McIntyre
 
Congratulations, you've successfully deployed IBM Connections 4.x! Now what?
Congratulations, you've successfully deployed IBM Connections 4.x! Now what?Congratulations, you've successfully deployed IBM Connections 4.x! Now what?
Congratulations, you've successfully deployed IBM Connections 4.x! Now what?Stuart McIntyre
 
Social Connections II - Paul Mason - Applicable, the power of choice
Social Connections II - Paul Mason - Applicable, the power of choiceSocial Connections II - Paul Mason - Applicable, the power of choice
Social Connections II - Paul Mason - Applicable, the power of choiceStuart McIntyre
 
Social Connections II - Gaining Traction & Results from Collaboration Platfor...
Social Connections II - Gaining Traction & Results from Collaboration Platfor...Social Connections II - Gaining Traction & Results from Collaboration Platfor...
Social Connections II - Gaining Traction & Results from Collaboration Platfor...Stuart McIntyre
 
Social Connections II - Stuart McIntyre - Extending IBM Connections
Social Connections II - Stuart McIntyre - Extending IBM ConnectionsSocial Connections II - Stuart McIntyre - Extending IBM Connections
Social Connections II - Stuart McIntyre - Extending IBM ConnectionsStuart McIntyre
 
Avoiding the seven deadly sins of IBM Connections and how to plot the route ...
Avoiding the seven deadly sins of IBM Connections and how to plot the route ...Avoiding the seven deadly sins of IBM Connections and how to plot the route ...
Avoiding the seven deadly sins of IBM Connections and how to plot the route ...Stuart McIntyre
 
Extending IBM Connections - Bridging the Gap
Extending IBM Connections - Bridging the GapExtending IBM Connections - Bridging the Gap
Extending IBM Connections - Bridging the GapStuart McIntyre
 
Social Connections II - Gaining Traction & Results from Collaboration Platfor...
Social Connections II - Gaining Traction & Results from Collaboration Platfor...Social Connections II - Gaining Traction & Results from Collaboration Platfor...
Social Connections II - Gaining Traction & Results from Collaboration Platfor...Stuart McIntyre
 
IBM Connections - Bridging the Gap (delivered at DanNotes, Nov 2011)
IBM Connections - Bridging the Gap (delivered at DanNotes, Nov 2011)IBM Connections - Bridging the Gap (delivered at DanNotes, Nov 2011)
IBM Connections - Bridging the Gap (delivered at DanNotes, Nov 2011)Stuart McIntyre
 
Ascendant Technology: Successful Collaboration solutions require a concrete a...
Ascendant Technology: Successful Collaboration solutions require a concrete a...Ascendant Technology: Successful Collaboration solutions require a concrete a...
Ascendant Technology: Successful Collaboration solutions require a concrete a...Stuart McIntyre
 
Salvation Army: A private social network
Salvation Army: A private social networkSalvation Army: A private social network
Salvation Army: A private social networkStuart McIntyre
 
IBM Connections Next - Futures & Feedback
IBM Connections Next - Futures & FeedbackIBM Connections Next - Futures & Feedback
IBM Connections Next - Futures & FeedbackStuart McIntyre
 
Great expectations - students today, employees tomorrow
Great expectations - students today, employees tomorrowGreat expectations - students today, employees tomorrow
Great expectations - students today, employees tomorrowStuart McIntyre
 
IBM Connections - Customizing and Extending
IBM Connections - Customizing and ExtendingIBM Connections - Customizing and Extending
IBM Connections - Customizing and ExtendingStuart McIntyre
 
Things I wish I'd known 5 years ago
Things I wish I'd known 5 years agoThings I wish I'd known 5 years ago
Things I wish I'd known 5 years agoStuart McIntyre
 
I’m too busy to collaborate
I’m too busy to collaborateI’m too busy to collaborate
I’m too busy to collaborateStuart McIntyre
 

More from Stuart McIntyre (20)

IBM Connections 4.5 Reviewer's Guide
IBM Connections 4.5 Reviewer's GuideIBM Connections 4.5 Reviewer's Guide
IBM Connections 4.5 Reviewer's Guide
 
Social Business: The Irresistible Force To Overcome Immovable Objections
Social Business: The Irresistible Force To Overcome Immovable ObjectionsSocial Business: The Irresistible Force To Overcome Immovable Objections
Social Business: The Irresistible Force To Overcome Immovable Objections
 
BCCON 2014 - Social Business: The irresistible force to overcome immovable ob...
BCCON 2014 - Social Business: The irresistible force to overcome immovable ob...BCCON 2014 - Social Business: The irresistible force to overcome immovable ob...
BCCON 2014 - Social Business: The irresistible force to overcome immovable ob...
 
Social Business - The Irresistible Force to Overcome Immovable Objections (IB...
Social Business - The Irresistible Force to Overcome Immovable Objections (IB...Social Business - The Irresistible Force to Overcome Immovable Objections (IB...
Social Business - The Irresistible Force to Overcome Immovable Objections (IB...
 
A Profile is the key a users' Connections identity, exploit it!
A Profile is the key a users' Connections identity, exploit it!A Profile is the key a users' Connections identity, exploit it!
A Profile is the key a users' Connections identity, exploit it!
 
Congratulations, you've successfully deployed IBM Connections 4.x! Now what?
Congratulations, you've successfully deployed IBM Connections 4.x! Now what?Congratulations, you've successfully deployed IBM Connections 4.x! Now what?
Congratulations, you've successfully deployed IBM Connections 4.x! Now what?
 
Social Connections II - Paul Mason - Applicable, the power of choice
Social Connections II - Paul Mason - Applicable, the power of choiceSocial Connections II - Paul Mason - Applicable, the power of choice
Social Connections II - Paul Mason - Applicable, the power of choice
 
Social Connections II - Gaining Traction & Results from Collaboration Platfor...
Social Connections II - Gaining Traction & Results from Collaboration Platfor...Social Connections II - Gaining Traction & Results from Collaboration Platfor...
Social Connections II - Gaining Traction & Results from Collaboration Platfor...
 
Social Connections II - Stuart McIntyre - Extending IBM Connections
Social Connections II - Stuart McIntyre - Extending IBM ConnectionsSocial Connections II - Stuart McIntyre - Extending IBM Connections
Social Connections II - Stuart McIntyre - Extending IBM Connections
 
Avoiding the seven deadly sins of IBM Connections and how to plot the route ...
Avoiding the seven deadly sins of IBM Connections and how to plot the route ...Avoiding the seven deadly sins of IBM Connections and how to plot the route ...
Avoiding the seven deadly sins of IBM Connections and how to plot the route ...
 
Extending IBM Connections - Bridging the Gap
Extending IBM Connections - Bridging the GapExtending IBM Connections - Bridging the Gap
Extending IBM Connections - Bridging the Gap
 
Social Connections II - Gaining Traction & Results from Collaboration Platfor...
Social Connections II - Gaining Traction & Results from Collaboration Platfor...Social Connections II - Gaining Traction & Results from Collaboration Platfor...
Social Connections II - Gaining Traction & Results from Collaboration Platfor...
 
IBM Connections - Bridging the Gap (delivered at DanNotes, Nov 2011)
IBM Connections - Bridging the Gap (delivered at DanNotes, Nov 2011)IBM Connections - Bridging the Gap (delivered at DanNotes, Nov 2011)
IBM Connections - Bridging the Gap (delivered at DanNotes, Nov 2011)
 
Ascendant Technology: Successful Collaboration solutions require a concrete a...
Ascendant Technology: Successful Collaboration solutions require a concrete a...Ascendant Technology: Successful Collaboration solutions require a concrete a...
Ascendant Technology: Successful Collaboration solutions require a concrete a...
 
Salvation Army: A private social network
Salvation Army: A private social networkSalvation Army: A private social network
Salvation Army: A private social network
 
IBM Connections Next - Futures & Feedback
IBM Connections Next - Futures & FeedbackIBM Connections Next - Futures & Feedback
IBM Connections Next - Futures & Feedback
 
Great expectations - students today, employees tomorrow
Great expectations - students today, employees tomorrowGreat expectations - students today, employees tomorrow
Great expectations - students today, employees tomorrow
 
IBM Connections - Customizing and Extending
IBM Connections - Customizing and ExtendingIBM Connections - Customizing and Extending
IBM Connections - Customizing and Extending
 
Things I wish I'd known 5 years ago
Things I wish I'd known 5 years agoThings I wish I'd known 5 years ago
Things I wish I'd known 5 years ago
 
I’m too busy to collaborate
I’m too busy to collaborateI’m too busy to collaborate
I’m too busy to collaborate
 

Recently uploaded

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 

Recently uploaded (20)

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 

Beyond the Basics: An Overview of User LifeCycle and Managing Users with TDI

  • 1. Beyond the Basics: An Overview of User LifeCycle and Managing Users with TDI Michael Ahern | IBM Connections Developer | IBM © 2011 IBM Corporation
  • 2. Agenda ● Overview of Connections User LifeCycle ● User LifeCycle Architecture ● Overview of the Profiles TDI Solution ● Profiles TDI Connector Architecture ● Scenario based Demo ● Questions and Answers © 2011 IBM Corporation 2
  • 3. What is User LifeCycle? ● A number of other customers requested that the ability to retire or 'inactivate' users rather than being required to delete them from the Profiles DB ● Profile types, provide a partial solution, but cannot deliver on full end-to-end including the UI changes expected: indicating inactivity in membership lists, hiding them from name searches, removing users from membership typeaheads etc and (most importantly) managing users in non- Profiles components. ● Outside of inactivation, we were seeing a large number of operational issues in production with managing user data across the platform. For example, there was no way to automatically propagate name, email and external ID changes from Profiles to the other Connections components. ● What was delivered: ─ User state and other relevant data will be communicated from Profiles to the rest of the Connections platform ─ All Connections Application UIs will reflect and indicate the 'state' of the user ─ Inactive users do not show up in a 'default' Profiles name / advanced searches © 2011 IBM Corporation 3
  • 4. Contrast of User Populations Pre/Post 3.0. ● This slide captures how the user population of the Connections system compares and contrasts between <3.0 and 3.0+ The World Before 3.0 The World 3.0 and beyond All Users Ever All Users Ever Users in Profiles DB Users Users Active Users / App 'X' Active Users App 'X' Users in Profiles Knows Knows DB © 2011 IBM Corporation 4
  • 5. Active vs. Inactive User Member Tables ● When a user changes state, the member and login tables need to be updated to prevent data constraint issues later on. Active User Inactive User MEMBER TABLE MEMBER TABLE Column Example Value Column Example Value InternalId 12345... InternalId 12345... DisplayName Mike Ahern DisplayName Mike Ahern Email ahernm@us.ibm.com <NULLED> Email <NO VALUE> ExternalId abc-foo-1234.. ExternalId abc-foo-1234.. State 0 State 1 LOGINS TABLE TABLE LOGINS TABLE TABLE Internal-ID Login <NULLED> Internal-ID Login 12345... ahernm@us.ibm.com <NO VALUE> <NO VALUE> 12345... ahernm © 2011 IBM Corporation 5
  • 6. User LifeCycle Architecture - Commands ● User LifeCycle is implemented by a set of discrete 'platform commands' that allow you to drive user data changes from Profiles across the platform. ● These commands are executable via TDI; the Admin ATOM API and wsadmin. In addition, each of the components has matching wsadmin commands to allow you to correct data in an individual component. ● Platform Commands: Command Description Update User Update user data Publish User Data Publish the current user data from Profiles Inactivate User Inactivate user Activate User Activate / reactivate a user Swap User Access Allows you to restore a users content and inactivate their 'phantom' Profile record © 2011 IBM Corporation 6
  • 7. LifeCycle Architecture – Platform Command (SEND) Consuming Component TDI Process Profiles TDI ProfilesDB Connector Event LDAP Infrastructure Profiles Server Synchronous Event News Server Profiles Admin Augmentation (such API Caller as Audit) Profiles Admin 3rd Party Event API Caller SPI © 2011 IBM Corporation 7
  • 8. LifeCycle Architecture – Platform Command (ACK) Consuming Component Event Infrastructure Synchronous Event Augmentation (such as Audit) News Server Component DB Future 3rd Party Monitoring App? © 2011 IBM Corporation 8
  • 9. What is Tivoli Directory Integrator ● IBM Tivoli Directory Integrator is the “Norwegian army knife” of data synchronization. It is software that synchronizes data across multiple repositories. TDI can connect and transfer data from and to: ─ LDAP directories ─ Domino databases ─ Relational Databases ─ And much more . . . ● A unit of work in TDI-speak is called an Assembly Line (AL) and Assembly Lines are made up of a set of components known as 'Connectors' which read / write and / or transform data ● Connections ships with a number of 'out-of-the-box' AL's for synchronizing LDAP data with Profiles. source source Target source (Profiles) TDI © 2011 IBM Corporation 9
  • 10. Fitting the Pieces Together: Scripting ● For 3.0 the major objectives of TDI has been in improving maintainability of the system and providing customer tooling and extension points to cover functional gaps not filled by the core product. ● Major functions: ─ Source Repository Connector ─ Custom delete logic hook ─ Improved Logging ─ And... ● The Profiles TDI Connectors ─ The TDI Connectors is the formalization of the interface to the Profiles backend ─ The Connector allows you to script and interact with the Profiles DB via the TDI scripting editor ─ The Connectors are fully integrated with User LifeCycle, allowing you to push data changes to the Connections Platform © 2011 IBM Corporation 10
  • 11. Under the Hood: Connector Details Connector Details EMPLOYEE SURNAME - During read / create / Table Table update of profile records all four tables are merged into a single logical TDI entry - During deletes, TDI will Profile TDI DYNA_ATTRS touch and remove content Connector Table from all of the tables associated with a user GIVEN_NAME (PROF_CONNECTION, Table PEOPLE_TAG, ETC) Additional Tables PROFILE_EXTENSIONS PROFILE_LOGIN Table Table © 2011 IBM Corporation 11
  • 12. Demo: The Connector In Action Scenario 1: Migrating users to a new LDAP PROBLEM: The IT department is in the process of reoganizing the LDAP directory. As a result of this action the external ID (GUID) will change for all users in the system. SOLUTION: Assuming the 'uid' (the company assigned unique identifier for the user) has not changed during the migration, run 'sync_all_dns'. Profiles will propagate the changes to the platform © 2011 IBM Corporation 12
  • 13. Demo: The Connector In Action Scenario 2: Normalizing values in the 'uid' field of Profiles PROBLEM: At company X Ops recently realized that their LDAP contains inconsistent data for 'uid'. Different 'casing' is used for different users and in some cases there are even trailing spaces after names! In parallel to cleaning up their LDAP they wish to normalize the data in Profiles to remove inconsistencies. SOLUTION: Create a custom script. © 2011 IBM Corporation 13
  • 14. Questions? © 2011 IBM Corporation 14
  • 15. Legal Disclaimer © IBM Corporation 2011. All Rights Reserved. The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. IBM, the IBM logo, Lotus, WebSphere, Rational, Rational Jazz and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others. All references to Renovations refer to a fictitious company and are used for illustration purposes only. © 2011 IBM Corporation 15
  • 16. References ● User LifeCycle: http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Managing_users_ic301 http://www-10.lotus.com/ldd/lcwiki.nsf/dx/User_life_cycle_details_ic301 http://www- 10.lotus.com/ldd/lcwiki.nsf/dx/Managing_user_data_using_Profiles_administrative_commands_ic301 http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Troubleshooting_the_user_lifecycle_SPI_ic301 ● Learning TDI: http://www.tdi-users.org/twiki/bin/view/Integrator/WebHome http://www.tdi-users.org/twiki/bin/view/Integrator/LearningTDI ● Connections / TDI: http://www- 10.lotus.com/ldd/lcwiki.nsf/dx/Developing_custom_Tivoli_Directory_Integrator_assembly_lines_for_Pro files_ic301 http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Setting_up_your_development_environment_ic301 http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Using_a_custom_source_repository_connector_ic301 © 2011 IBM Corporation 16
  • 17. Backup – Iterator Mode  Iterates through the Profiles database – no input settings required – returns all Profile data, including extension attributes © 2011 IBM Corporation 17
  • 18. Backup – Update Mode  update via link criteria  Set data to be updated © 2011 IBM Corporation 18
  • 19. Beyond the Basics: An Overview of User LifeCycle and Managing Users with TDI Michael Ahern | IBM Connections Developer | IBM © 2011 IBM Corporation Hello, my name is Michael Ahern... I am a developer with IBM Connections in Dublin. Prior to moving to Dublin earlier this year, I was the development lead for the Connections Profiles component and have been working on Connections in some shape or form since 1.0. Talk today: on the new user management features in Connections 3.0 known as user life cycle and how this integrates together with the new features in the Profiles TDI component. EMAIL: michael.ahern@ie.ibm.com NOTE: Some slides are not created equal. Please excuse some of the terser comments.
  • 20. Agenda ● Overview of Connections User LifeCycle ● User LifeCycle Architecture ● Overview of the Profiles TDI Solution ● Profiles TDI Connector Architecture ● Scenario based Demo ● Questions and Answers © 2011 IBM Corporation 2 The agenda for today is... To give an overview of what User LifeCycle is and an architectural background into its functioning. I'll then switch over and do the same for the Profiles TDI solution and then finally tie the together with a couple of illustrative examples.
  • 21. What is User LifeCycle? ● A number of other customers requested that the ability to retire or 'inactivate' users rather than being required to delete them from the Profiles DB ● Profile types, provide a partial solution, but cannot deliver on full end-to-end including the UI changes expected: indicating inactivity in membership lists, hiding them from name searches, removing users from membership typeaheads etc and (most importantly) managing users in non- Profiles components. ● Outside of inactivation, we were seeing a large number of operational issues in production with managing user data across the platform. For example, there was no way to automatically propagate name, email and external ID changes from Profiles to the other Connections components. ● What was delivered: ─ User state and other relevant data will be communicated from Profiles to the rest of the Connections platform ─ All Connections Application UIs will reflect and indicate the 'state' of the user ─ Inactive users do not show up in a 'default' Profiles name / advanced searches © 2011 IBM Corporation 3 Customers requested... Profiles types provides partial. Issues: * No visual indication outside of Profiles * Users in membership typeaheads * Notifications
  • 22. Contrast of User Populations Pre/Post 3.0. ● This slide captures how the user population of the Connections system compares and contrasts between <3.0 and 3.0+ The World Before 3.0 The World 3.0 and beyond All Users Ever All Users Ever Users in Profiles DB Users Users Active Users / App 'X' Active Users App 'X' Users in Profiles Knows Knows DB © 2011 IBM Corporation 4 Slide showing comparison of users known by system in 2.5 vs 3.0. ● In 2.5 Profiles contains only 'active' users and the entire active population. ● Components contain a subset of Profiles + inactive users that have used the component, but are now inactive ● In 3.0+ Profiles contains the total population of active users + the population a subset of the inactive user population that has been inactivated since 3.0+ was installed. ● Components may contain additional inactive users that Profiles is not aware of.
  • 23. Active vs. Inactive User Member Tables ● When a user changes state, the member and login tables need to be updated to prevent data constraint issues later on. Active User Inactive User MEMBER TABLE MEMBER TABLE Column Example Value Column Example Value InternalId 12345... InternalId 12345... DisplayName Mike Ahern DisplayName Mike Ahern Email ahernm@us.ibm.com <NULLED> Email <NO VALUE> ExternalId abc-foo-1234.. ExternalId abc-foo-1234.. State 0 State 1 LOGINS TABLE TABLE LOGINS TABLE TABLE Internal-ID Login <NULLED> Internal-ID Login 12345... ahernm@us.ibm.com <NO VALUE> <NO VALUE> 12345... ahernm © 2011 IBM Corporation 5 In certain orgs email / login Ids are reused after a period of inactivity (this happens at IBM for instance). To prevent this from causing operational issues, the login ID(s) and email address are blanked to allow their reuse. Not blanking the fields can prevent new users from being able to access the system due to ID clashes between the active & inactive users. In more extreme cases, the clashes can result in data leakage if system admins accidentally reactivate the old user's account in order to allow the new user to log into the system.
  • 24. User LifeCycle Architecture - Commands ● User LifeCycle is implemented by a set of discrete 'platform commands' that allow you to drive user data changes from Profiles across the platform. ● These commands are executable via TDI; the Admin ATOM API and wsadmin. In addition, each of the components has matching wsadmin commands to allow you to correct data in an individual component. ● Platform Commands: Command Description Update User Update user data Publish User Data Publish the current user data from Profiles Inactivate User Inactivate user Activate User Activate / reactivate a user Swap User Access Allows you to restore a users content and inactivate their 'phantom' Profile record © 2011 IBM Corporation 6
  • 25. LifeCycle Architecture – Platform Command (SEND) Consuming Component TDI Process Profiles TDI ProfilesDB Connector Event LDAP Infrastructure Profiles Server Synchronous Event News Server Profiles Admin Augmentation (such API Caller as Audit) Profiles Admin 3rd Party Event API Caller SPI © 2011 IBM Corporation 7 This picture shows the parts of the pieces of the Platform Command architecture. 1. Events are generated in TDI or an Admin API process. 2. Changes are queued up in a staging table in Profiles (USER_PLATFORM_EVENTS) for publication. Within Profiles, the changes are seen immediately. 3. Changes is published via the Event Infrastructure to the Connections platform 4. Consuming Components (Blogs, Communities, Files, etc) process the commands.
  • 26. LifeCycle Architecture – Platform Command (ACK) Consuming Component Event Infrastructure Synchronous Event Augmentation (such as Audit) News Server Component DB Future 3rd Party Monitoring App? © 2011 IBM Corporation 8 In addition to the command message, there is an acknowledgement. Currently no action is taken on the acknowledgement. The intention is to ensure that there is an auditing trail of each components response to the command. If no applications are subscribing to the message, the infrastructure will not publish the message to reduce the system load. In the future it is hoped that an ISV or ISSL may build a monitoring application utilizing the command acknowledgement to alert admins as to the platform- wide result of their commands.
  • 27. What is Tivoli Directory Integrator ● IBM Tivoli Directory Integrator is the “Norwegian army knife” of data synchronization. It is software that synchronizes data across multiple repositories. TDI can connect and transfer data from and to: ─ LDAP directories ─ Domino databases ─ Relational Databases ─ And much more . . . ● A unit of work in TDI-speak is called an Assembly Line (AL) and Assembly Lines are made up of a set of components known as 'Connectors' which read / write and / or transform data ● Connections ships with a number of 'out-of-the-box' AL's for synchronizing LDAP data with Profiles. source source Target source (Profiles) TDI © 2011 IBM Corporation 9 * Norweigen army knife of data sync * Loads / transforms data * Unit of work AL * Connections provides a group of AL's (a solution) for synchronizing data with Profiles
  • 28. Fitting the Pieces Together: Scripting ● For 3.0 the major objectives of TDI has been in improving maintainability of the system and providing customer tooling and extension points to cover functional gaps not filled by the core product. ● Major functions: ─ Source Repository Connector ─ Custom delete logic hook ─ Improved Logging ─ And... ● The Profiles TDI Connectors ─ The TDI Connectors is the formalization of the interface to the Profiles backend ─ The Connector allows you to script and interact with the Profiles DB via the TDI scripting editor ─ The Connectors are fully integrated with User LifeCycle, allowing you to push data changes to the Connections Platform © 2011 IBM Corporation 10
  • 29. Under the Hood: Connector Details Connector Details EMPLOYEE SURNAME - During read / create / Table Table update of profile records all four tables are merged into a single logical TDI entry - During deletes, TDI will Profile TDI DYNA_ATTRS touch and remove content Connector Table from all of the tables associated with a user GIVEN_NAME (PROF_CONNECTION, Table PEOPLE_TAG, ETC) Additional Tables PROFILE_EXTENSIONS PROFILE_LOGIN Table Table © 2011 IBM Corporation 11 Admins should never (or as rarely as possible) modify Dbs directly. In reality (especially with user data) there are special cases where this is a necessary function. As the complexity grows (as here), it becomes essentially impossible to make manual modifications in a manner that maintains DB integrity. The Connector solves this situation of having to understand the schema, but providing a stable flattened data view.
  • 30. Demo: The Connector In Action Scenario 1: Migrating users to a new LDAP PROBLEM: The IT department is in the process of reoganizing the LDAP directory. As a result of this action the external ID (GUID) will change for all users in the system. SOLUTION: Assuming the 'uid' (the company assigned unique identifier for the user) has not changed during the migration, run 'sync_all_dns'. Profiles will propagate the changes to the platform © 2011 IBM Corporation 12 Scenario one is a trick problem... LifeCycle combined with TDI should handle this seamlessly in most organizations. Scenario two, is a simple problem, however pre-3.0 it was fairly complicated to execute this form of data change. In the field I have seen organizations spend man-weeks (sometime months) preparing for and executing data changes like this. One customer actually sent me a 40 page document describing the procedure the ops-team intended to implement to solve this problem. These problems can now be solved in man-days and with a far higher degree of reliability.
  • 31. Demo: The Connector In Action Scenario 2: Normalizing values in the 'uid' field of Profiles PROBLEM: At company X Ops recently realized that their LDAP contains inconsistent data for 'uid'. Different 'casing' is used for different users and in some cases there are even trailing spaces after names! In parallel to cleaning up their LDAP they wish to normalize the data in Profiles to remove inconsistencies. SOLUTION: Create a custom script. © 2011 IBM Corporation 13 Scenario one is a trick problem... LifeCycle combined with TDI should handle this seamlessly in most organizations. Scenario two, is a simple problem, however pre-3.0 it was fairly complicated to execute this form of data change. In the field I have seen organizations spend man-weeks (sometime months) preparing for and executing data changes like this. One customer actually sent me a 40 page document describing the procedure the ops-team intended to implement to solve this problem. These problems can now be solved in man-days and with a far higher degree of reliability via a single-pass script rather than via the 10+ wsadmin commands it took previously.
  • 32. Questions? © 2011 IBM Corporation 14
  • 33. Legal Disclaimer © IBM Corporation 2011. All Rights Reserved. The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. IBM, the IBM logo, Lotus, WebSphere, Rational, Rational Jazz and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others. All references to Renovations refer to a fictitious company and are used for illustration purposes only. © 2011 IBM Corporation 15
  • 34. References ● User LifeCycle: http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Managing_users_ic301 http://www-10.lotus.com/ldd/lcwiki.nsf/dx/User_life_cycle_details_ic301 http://www- 10.lotus.com/ldd/lcwiki.nsf/dx/Managing_user_data_using_Profiles_administrative_commands_ic301 http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Troubleshooting_the_user_lifecycle_SPI_ic301 ● Learning TDI: http://www.tdi-users.org/twiki/bin/view/Integrator/WebHome http://www.tdi-users.org/twiki/bin/view/Integrator/LearningTDI ● Connections / TDI: http://www- 10.lotus.com/ldd/lcwiki.nsf/dx/Developing_custom_Tivoli_Directory_Integrator_assembly_lines_for_Pro files_ic301 http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Setting_up_your_development_environment_ic301 http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Using_a_custom_source_repository_connector_ic301 © 2011 IBM Corporation 16
  • 35. Backup – Iterator Mode  Iterates through the Profiles database – no input settings required – returns all Profile data, including extension attributes © 2011 IBM Corporation 17
  • 36. Backup – Update Mode  update via link criteria  Set data to be updated © 2011 IBM Corporation 18