Forums / Setup & design / Where should I store my users' details?

Where should I store my users' details?

Author Message

ANCA GROZEA

Tuesday 30 September 2008 3:34:06 pm

Hello,

I am thinking about building an eZ Publish site and I wonder where should I store my users if in /Users or in /Content if:
- My users need to authenticate via AD / LDAP
- I need to create an employee directory where for each user I will have to display several info such as name, contact info (email, tel etc), job description, manager, team he is part of, keywords, list of blogs, recent comments on blog/forum.
- users will have various types of access depending on their groups membership.

Please advice,

Thank you!
Anca

Ivo Lukac

Wednesday 01 October 2008 1:54:50 am

Hello Anca,

I had similar dilemma on one project and I can suggest to leave your users in /Users part. To make this happen you need to give read access to part of the /Users tree where your users are and map this part to web within templates.

http://www.linkedin.com/in/ivolukac
http://www.netgen.hr/eng/blog
http://twitter.com/ilukac

Mark Marsiglio

Wednesday 01 October 2008 6:40:07 am

We have done it like Ivo suggested in a few cases, and sometimes we set up a workflow to (or manually) create an additional location for the user account within the content tree.

http://www.thinkcreative.com
Turning Ideas Into Strategic Solutions

Paul Borgermans

Wednesday 01 October 2008 7:27:08 am

Hi Anca :-)

No worries to extend the user class with attributes you need

Authentication can be done independently of the attributes (or do these also need to come from the AD? hopefully not)

Cheers
Paul

eZ Publish, eZ Find, Solr expert consulting and training
http://twitter.com/paulborgermans

André R.

Wednesday 01 October 2008 12:35:43 pm

How many users are we talking about?
If your planning on going up in the 100.000 ranges, then you should try to keep attributes and user object versions low.

eZ Online Editor 5: http://projects.ez.no/ezoe || eZJSCore (Ajax): http://projects.ez.no/ezjscore || eZ Publish EE http://ez.no/eZPublish/eZ-Publish-Enterprise-Subscription
@: http://twitter.com/andrerom

Paul Borgermans

Wednesday 01 October 2008 2:14:38 pm

In this case, there are not that many users .. but indeed, many attributes x many users x many versions can inflate some tables beyond usable limits (performance, maintenance) wise

Paul

eZ Publish, eZ Find, Solr expert consulting and training
http://twitter.com/paulborgermans

John Moritz

Thursday 02 October 2008 1:01:26 am

in this case...

what is too much? I have a community with not that many users > 10.000 but many pictures. There are about 230.000 Pictures (growing: 1000 Pictures more per week).

At the moment i am thinking about to integrate all into ezPublish but i am not sure. Now i think its better to leave it external...?

I was also asking about using of LDAP in a previous Thread. Because i have no experience with LDAP and i want to migrate my existing users to ez, i am not sure if its a good idea to use LDAP for authentication. On one side it will help me to connect different systems like ezpublish and a jabber server or a external forum which also has available LDAP auth. But how is speed when compare mysql and LDAP on growing Users, < 100.000?

Is LDAP a good auth method for ez or more experimental? Is LDAP good for Web-Communitys or just for Intranet use with not that many Users?

Mickael Robin

Monday 06 October 2008 1:10:04 am

@ Mark :

Could you please explain how you set up a <b>workflow to automatically add a location</b> in the content tree (i.e Content section) to a user object created in the Users section ?

Thanks in advance,
Mickael.

ANCA GROZEA

Wednesday 08 October 2008 2:23:40 am

Hello everyone,

Thank you for your replies.

@André R: there will be no more than 300-500 users.. nothing compared to 10.000 but a lot to set up manually..
@Paul Borgermans: Hi Paul! :)
Initially i will load the users from AD (name, user id, email, department it, maybe also manager id). In the site users have to log in to contribute or to access restricted areas and logging in should be made through AD.

The extra attributes i need will be used to for Employee's Directory - job name, description, photo.. etc

So far I understood that I have to create users in /Users and can make that content available via templates. Any suggestions about ways to import the users?

Have a nice day!
Anca

eZ debug

Timing: Jan 18 2025 04:55:50
Script start
Timing: Jan 18 2025 04:55:50
Module start 'content'
Timing: Jan 18 2025 04:55:51
Module end 'content'
Timing: Jan 18 2025 04:55:51
Script end

Main resources:

Total runtime1.1359 sec
Peak memory usage4,096.0000 KB
Database Queries222

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0078 587.8281180.8281
Module start 'content' 0.00780.9467 768.6563816.1328
Module end 'content' 0.95450.1813 1,584.7891344.4453
Script end 1.1358  1,929.2344 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00520.4555210.0002
Check MTime0.00200.1778210.0001
Mysql Total
Database connection0.00080.070110.0008
Mysqli_queries1.023090.05342220.0046
Looping result0.00300.26572200.0000
Template Total1.091396.120.5456
Template load0.00200.173220.0010
Template processing1.089395.893620.5446
Template load and register function0.00020.019510.0002
states
state_id_array0.00200.174510.0020
state_identifier_array0.00170.146020.0008
Override
Cache load0.00190.1655540.0000
Sytem overhead
Fetch class attribute can translate value0.00200.172980.0002
Fetch class attribute name0.00220.1905130.0002
XML
Image XML parsing0.00490.431480.0006
class_abstraction
Instantiating content class attribute0.00000.0024140.0000
General
dbfile0.01261.1104470.0003
String conversion0.00000.000730.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
9content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
15content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
7content/datatype/view/ezxmltags/line.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/line.tplEdit templateOverride template
5content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 38
 Number of unique templates used: 6

Time used to render debug report: 0.0002 secs