JahiaOne 2015 - Customer Testimonial: The National Governors Association by Kevin Hastings
JahiaOne 2015 - External user/group providers in Digital Factory 7.1
-
Upload
jahia-solutions-group -
Category
Technology
-
view
75 -
download
0
Transcript of JahiaOne 2015 - External user/group providers in Digital Factory 7.1
![Page 1: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/1.jpg)
External user/group providers in
Digital Factory 7.1Sergiy Shyrkov
Software Architect @ Jahia Solutions Group SA
© 2002 - 2015 Jahia Solutions Group SA
![Page 2: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/2.jpg)
Outline
Refactoring in Digital Factory 7.1
Steps for custom provider integration
Demo
Questions
Useful links
© 2002 - 2015 Jahia Solutions Group SA2
![Page 3: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/3.jpg)
Full multitenancy support
Global + site-level groups
Global platform users
User provisioning on site
level (7.1+)
© 2002 - 2015 Jahia Solutions Group SA
Refactoring – Multitenancy (1)
3
![Page 4: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/4.jpg)
Standard JCR API for user/group access
Transparent access to
users/groups via JCR API
Increased usability and
maintainability
Improved performance (no
intermediate objects)
© 2002 - 2015 Jahia Solutions Group SA
Refactoring – JCR API (2)
4
![Page 5: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/5.jpg)
Improved extensibility
Ad-hoc integration points
Custom provider
integration was never so
easy
© 2002 - 2015 Jahia Solutions Group SA
Refactoring – Extensibility (3)
5
![Page 6: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/6.jpg)
External data provider
User and group nodes are handled as JCR nodes
External providers are mounted under
/users/providers/xyz
/groups/providers/xyz
User / group service uses those nodes as normal users
and groups
© 2002 - 2015 Jahia Solutions Group SA
Integration – Base (1)
6
![Page 7: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/7.jpg)
© 2002 - 2015 Jahia Solutions Group SA
Integration – Diagram (2)
7
![Page 8: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/8.jpg)
© 2002 - 2015 Jahia Solutions Group SA
Integration – What to do (3)
8
What we’ve done:
Automatic registration of providers
Provider management UI
Seamless translation of JCR calls for providers
Support for custom UI views for provider management
What you have to do:
Implement code for
custom user/group data
access
(Optionally) provide views
for provider creation and
configuration
![Page 9: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/9.jpg)
What to implement for user provider
© 2002 - 2015 Jahia Solutions Group SA
Integration – Users (4)
9
<<interface>>
UserGroupProvider
getUser(String name): JahiaUser
searchUsers(Properties searchCriteria, long offset, long
limit): List<String>
…
![Page 10: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/10.jpg)
What to implement for group provider
© 2002 - 2015 Jahia Solutions Group SA
Integration – Groups (5)
10
<<interface>>
UserGroupProvider
getGroup(String name): JahiaGroup
getGroupMembers(String groupName): List<Member>
getMembership(Member member): List<String>
searchGroups(Properties searchCriteria, long offset, long
limit): List<String>
supportsGroups(): Boolean
…
![Page 11: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/11.jpg)
Demo
© 2002 - 2015 Jahia Solutions Group SA11
Provider management
Database provider
JCR queries
LDAP provider
![Page 12: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/12.jpg)
Questions
Questions
Comments
Thoughts
© 2002 - 2015 Jahia Solutions Group SA12
![Page 13: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/13.jpg)
Useful linksShowcase provider
https://github.com/shyrkov/df-users-groups-db-provider-showcase
External Provider User and Groupshttps://github.com/Jahia/external-provider-users-groups
External Data Providerhttp://www.jahiaone.com/home/program/session/external-
data-provider
https://github.com/Jahia/external-provider
© 2002 - 2015 Jahia Solutions Group SA13
![Page 14: JahiaOne 2015 - External user/group providers in Digital Factory 7.1](https://reader030.fdocuments.net/reader030/viewer/2022032620/55cbd85bbb61eb077d8b45fa/html5/thumbnails/14.jpg)
Thank you and stay tuned!
© 2002 - 2015 Jahia Solutions Group SA14
Sergiy Shyrkov
Software Architect @ Jahia Solutions Group [email protected]