For this mater ( Multi-Tenancy ) you have Organizations, that's all what you need, you "cut" visibility to each tenancy assigning a Organization to each one, that's all.
Wiki, there's no wiki anymore, existed before ThingWorx becoming a PTC company, now what you have it's:
- Oficial documentation: http://support.ptc.com/cs/help/thingworx_hc/thingworx_6.5_hc/
- This community
- Support articles: https://support.ptc.com/appserver/cs/portal/
- Learning Connector ( inside ThingWorx 6.5 ), but I thing there's much content here, it's starting.
I was able to get this working by using a single organization with subunits representing the customer accounts and by completely blowing away the Thingworx installation and starting from scratch. I'll leave the text below for posterity.
Hi Pai and Carles,
I've been playing quite a bit with organizations and multi-tenancy today, thank you for the pointers. I watched the video and read the docs and implementing it does restrict visibility to everything. I did the visibility modification to PlatformSubsystem to fix the Mashup Widget Style issues.
However, I still have a problem with getting only devices assigned to an organization. getImplementingThingsWithData doesn't seem to care about the visibility of the things that are derived from the template. In order for getImplementingThingsWithData to return things the Organization has to have visibility to the template and then Run Time permission for service execute (non-instance). As soon as you add visibility to a Thing Template to be able to do service execution (to getImplementingThingsWithData) all items get returned, even items the users doesn't have visibility to. This is same template, same mashup, two users in different orgs, two different devices with visibility set to one org. As soon as I add Visibility to the template to both orgs, the getImplentingThingsWithData returns both devices for both users, not just the devices visible to the user. Do I need to manually do any visibility permission checks in the mashup?
Are you aware of any documents that walk through implementing multi-tenancy with mashups, not just looking at /Thingworx/Server/Things to verify the visibility is working?
Thank you and sorry for being that new guy that asks a bunch of questions.