Bug reports
Version 3.x > Bug reports > Membership on multiple websites View modes: 
User avatar
Member
Member
rostagno - 11/19/2008 5:23:26 AM
   
Membership on multiple websites
Hello

I've searched on the forum but haven't found any results...
I got this problem (and Im assuming perhaps its a bug):

Im running 3 websites on the same KenticoCMS (same DB and Files, Version: 3.1 Build: 3.1.3078).

- Custom made
- ECommerce Template
- Corporate Template

I've registered an user at Ecommerce site and set permission only to that site, but the user can login at the other two websites! What might be the problem? I've looked up the database and, for example, userid=5 website=2 only... maybe the control isn't checking this condition or am I doing something wrong?

TIA

User avatar
Kentico Support
Kentico Support
kentico_jurajo - 11/19/2008 8:33:11 AM
   
RE:Membership on multiple websites
Hi,

Could you please go to the Site Manager -> Administration -> Users -> edit appropriate user -> Sites tab: for which sites is the user assigned to?

You need to assign this user only for certain site.

Best Regards,
Juraj Ondrus

User avatar
Member
Member
rostagno - 11/19/2008 8:34:25 AM
   
RE:Membership on multiple websites
Hello Jurajo,

I've already done that and it doesn't work, but thank you anyway...

User avatar
Member
Member
rostagno - 11/19/2008 8:40:28 AM
   
RE:Membership on multiple websites
Just to clarify the situation a little bit more...

The user is correctly assigned to the site where he/she registered in to (and I've confirmed in the db) - the checkbox is correctly checked too at "SiteManager / Administration / Users / <edited user> / Sites <tab>".

But the problem still happening.. I think the control is ignoring the condition to check if user belongs to the SiteId (or whatever the collumn name is) or not - I haven't had the time to check if this is the problem or not

User avatar
Kentico Support
Kentico Support
kentico_jurajo - 11/19/2008 8:44:33 AM
   
RE:Membership on multiple websites
Is this user global administrator?

This is very strange. If it is possible, could you please send us a message to support@kentico.com with access credentials so we can see and inspect this issue?
Thank you.

Best Regards,
Juraj Ondrus

User avatar
Member
Member
rostagno - 11/19/2008 8:57:52 AM
   
RE:Membership on multiple websites
No, the user is not Global Administrator...

I would send the email, but the sites are accessible on localhost only. The custom one is the only one accessible from outside...

Site 1 (localhost/KenticoCMS/custom) domain aliase is my_custom_name.net
Site 2 (localhost/KenticoCMS/corporate) domain aliase is 127.0.0.1
Site 3 (localhost/KenticoCMS/ecommerce) domain aliase is localhost

The best I can do is setup an account for the custom site with previleges to access the other sites information... is it ok?

Thank you

User avatar
Kentico Support
Kentico Support
kentico_jurajo - 11/19/2008 9:01:31 AM
   
RE:Membership on multiple websites
That would be great! Thank you.

User avatar
Member
Member
rostagno - 11/19/2008 9:10:12 AM
   
RE:Membership on multiple websites
teste@teste.com teste teste 11/19/2008 11:13:42 AM Enabled
(user created on site2, permission granted for site2 only - supposedly)

teste1@teste.com teste teste 11/19/2008 11:14:17 AM Enabled
(user created on site3, permission granted for site3 only - supposedly)

Both users can login at Site2 and Site3

Ok.. e-mail sent. Thank you

User avatar
Member
Member
Darren - 11/19/2008 9:16:55 AM
   
RE:Membership on multiple websites
I have to say we had the same problem. I have 3 sites and if a user registers on site A, he can also log in on site B and site C. It doesn't matter what site he is a member of. Luckily this is what we wanted but it wasn't by design. I'm not sure whether I missed a configuration option somewhere or whether the login procedure is not checking the site membership, so I'll be interested in what you find in this case.

This is for secure areas of the site by the way, not the CMS Desk.


User avatar
Kentico Support
Kentico Support
kentico_jurajo - 11/19/2008 9:31:02 AM
   
RE:Membership on multiple websites
Hi,

So, I have discussed this problem with our CTO. This behavior is not a bug, but is it by design because many of the customers has requested this.


Best Regards,
Juraj Ondrus

User avatar
Member
Member
rostagno - 11/19/2008 10:09:49 AM
   
RE:Membership on multiple websites
I don't get... doesn't make sense because if customers want to share membership between sites, than It would be easier or logic (and maybe safer?) to just setup at SiteManager / Users... now I have to clone this webpart and code it myself, but it's ok..

Thank you very much for the explanation and for the inspection to see if something was wrong.

User avatar
Member
Member
JimS - 11/24/2008 2:11:07 PM
   
RE:Membership on multiple websites
Hi,
I would have run into this sooner or later myself as I'm planning a set of websites where some users are allowed to access 2 or more sites but most users are only restricted to the one site they are registered for.

May be I misunderstood, but does your CTO's output mean that the configuration as per
<cite>
... the Site Manager -> Administration -> Users -> edit appropriate user -> Sites tab: for which sites is the user assigned to?
</cite>
is not working as expected? I consider calling that a bug! The above mentioned "many customers that requested this" could have easily checked all checkboxes on the relevant Site tabs. If it not working as expected it makes Kentico CMS useless for web agencys that need to host a bunch of different, separated customer web sites. Customer X will not be amused if some users of customer Y just login into his site, won't he? If it's "by design" then what of use are those checkboxes anyway?

As said, maybe I misunderstood or used the wrong scope. If not it will be crucial to solve this issue before I decide to get a license.
- Is this fixed in v3.2?
- How _do_ I assign/restrict specific users to specific websites?

Thanks vm b4hand,
Jim

User avatar
Member
Member
kentico_petrp - 11/25/2008 1:18:26 AM
   
RE:Membership on multiple websites
Hi Jim and Rostagno,

Thank you for your feedback. As Juraj na our CTO mentioned, this is by design. The reason is that the multisite support in Kentico CMS is not designed to be used for multiple clients.

It's designed for web sites where a single client has one or more sites that they need to manage in one place, share their content or templates and share the user accounts. In this scenario, the site owner typically wants to have a single login for his visitors on all his web sites, so that they do not have to register again and again - consider e.g. a client with a main site, partner site and client site.

If you're using Kentico CMS for multiple clients, it's highly recommended that you install Kentico CMS separately for each client. It provides a better security, performance and you will avoid issues like this.

You can modify the code of the User Registration and Logon Form web parts so that they assign/check the user's site, but the issue here is this: if user A registers on site X and then on site Y, he will be assigned to both sites. If the owner of site X modifies or disables visitor's account, the site Y will also be affected which is a security issue.

So the recommended solution is to use separated installations of Kentico CMS for each client.

Regards,

Petr Palas, Kentico

User avatar
Member
Member
rostagno - 11/25/2008 2:16:57 AM
   
RE:Membership on multiple websites
Well... The solution is simple for me: Change the conditions to verify user membership. I still dont get why you can set user membership on users administration if this feature isnt working as I thought it would, but ok.

Sorry Petr, but Im not convinced (dont take me wrong, please) about the example you gave... Even if one client has multiple websites, he might not want to share membership.. or would be logic to just create some sub-domain aliases for that site.

Anyway... I don't know about the performance (dont have thought much about it), but seems crazy to use about 60Mb of files + Database size for just one simple client's website.

Please note I don't want to "attack" Kentico's philosophy, but I expect you consider this post as a constructive opinion. At the begining I didn't even like CMS's, but since Im "forced" to work with it, I've learned more about it and starting to like it.

Thank you

User avatar
Member
Member
kentico_petrp - 11/26/2008 3:49:40 AM
   
RE:Membership on multiple websites
The reason why you can assign the users to the site in the administration interface is that this feature works for content editors - i.e. for the employees of the site owner who manage the web sites. It allows site owner to assign content editors to particular sites. It can't be used for the users registered on the live site for the reasons that I explained in my post.

Anyway, you can always customize this behavior using your own code - you don't even need to have the source code license - this part of the source code is included in all licenses (even in the trial version).

As to the hosting: 6GB disk space + database costs something about $20 per month if you use shared hosting. If you use a dedicated server (around $200 per month), you can easily get to $5 per month if you host all your client's sites there. So I don't think this is a problem.

User avatar
Member
Member
pbielek-accessgroup - 4/3/2009 10:10:49 AM
   
RE:Membership on multiple websites
Hi Petr,

Here's why your argument doesn't make sense to me.

Even if like in your example, all the sites belong to one customer e.g. a client with a main site, partner site and client site.

When would you ever want your partner loging into your main site and if you did why would you create a separate site for them?

For example we have an investor site but they don't have access to our main site and vice versa.

When you create separate sites the intention is that the site users are to be separate, otherwise if you wanted to pool your users, and have them all access all your sites you would just create a section in your main site and not go to the trouble of creating separate sites for the different functions.

It's nice to have the option to share users between websites if that model works for you but it would be nice to have the option not to.

Creating separate instances of Kentico brings up the licensing question. If you have an Enterprise license are you allowed to install another instance of Kentico?

Can you point me to the source code you mentioned?

User avatar
Member
Member
kentico_petrp - 4/15/2009 12:36:48 AM
   
RE:Membership on multiple websites
Thank you for your feedback. I understand that the current solution may not fit to everyone out-of-the-box, but you still have the option to customize the code (without having the full source code) to change this behavior. I will ask our CTO to write a blog post with some code samples.

To answer your questions:

When would you ever want your partner loging into your main site and if you did why would you create a separate site for them?


For example, at kentico.com, our partners (for whom we are now building a new Partner Portal) may want to sign in to download the latest version of Kentico CMS. If someone has a partner user account, he/she may want to use the same account to access this DevNet site.

Many companies have separate sites for their client portals, partner portals or communities. These sites are built as separate sites for easier navigation. And for them, it doesn't make sense to make their users register separately for every site.

As I mentioned, you can customize this behaviour with some simple code if you do not want to allow partners to access the DevNet site in this example. We will provide some code samples soon.

It's nice to have the option to share users between websites if that model works for you but it would be nice to have the option not to.


We will certainly consider that for future versions so that you can easily configure that. At this moment, you can make multiple separate installations of Kentico CMS or customize the code.

Creating separate instances of Kentico brings up the licensing question. If you have an Enterprise license are you allowed to install another instance of Kentico?


Actually, it's not a licensing issue in any way. If you have 1 Web Site License (no matter which edition), you can use it only for a single web site even if you create multiple sites within one installation. Kentico CMS is licensed per web site, not per installation.

User avatar
Member
Member
MartinH (CTO) - 4/16/2009 4:13:14 AM
   
RE:Membership on multiple websites
Hi guys,

Here is the blog post with examples of how to modify the default behavior and explanation why this works the way it currently does and what are the benefits:

Membership customizations

Hope this helps

User avatar
Member
Member
pbielek-accessgroup - 6/18/2009 11:28:38 AM
   
RE:Membership on multiple websites
Hi Martin and Petr,

Thank you for the thorough and detailed explanation, it does help