Multiple Schemas?

Vesaro September 22, 2023

Hi Guys, 

I'm slowly building an asset/inventory system. 
I have the basic functionality down now, but am thinking about security. 

We are providing hardware to a customer with many different "Venues" across the world. 

I have created a few forms where the customer could pick a part to be returned from their Venue etc. Currently they select their Venues location from a dropdown. But this also gives them the ability to select another Venues and see/be able to manipulate their assets/stock as well...  

Any advice as how best to structure this so each venue can only see their own objects? I was thinking perhaps a different schema for each venue? 

Thanks 
Dave

2 answers

1 accepted

3 votes
Answer accepted
Adrian Wood
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
September 22, 2023

Instead of using forms, you'll probably want to use a couple of Asset object custom fields as that gives you more control over the results that are returned. 

https://support.atlassian.com/jira-service-management-cloud/docs/set-up-the-assets-object-field/

In Assets, you could relate the users to the venues and then set the filter issue scope on the Venues Asset object custom field to only show the venues that the person raising the ticket is related to. 

In my example, I have an Object Type of "Venues" and each venue is related to one or more owners. 

Object schema: Venues

Filter scope (AQL): None

Filter issue scope (AQL): "Owners" = ${reporter}

You could then set the parts dropdown to only show the parts that are at the venue. 

Vesaro September 25, 2023

Hi Adrian, 

This is the approach I ended up taking, still currently working with everything in one schema.  Still a bit confused about best practises for creating more than one. And how schemas can interplay - but feel this is something i can feel out with time based upon my use case. 

I've managed to create a form using custom fields similar to how you describe. And now have it so only an owner can view their own venues Items as it were. which is great. Thanks. 

My issue now is that as an Admin I cant actually fill out the form. Can only use it when testing when logged in as that specific user...

What can i add to the filter scopes so that i can keep that condition but so that admins can see all the options?
Is this possible. 
Have tried several approaches but to no avail. 

Vesaro September 25, 2023

I've just figured this out I think - using groups instead of users. 

2 votes
Robert Wen_Cprime_
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
September 22, 2023

I think you're on the right track with separate object schemas, given that security is based on an object schema level.

To incorporate this, you'd need to set the Object Schema User access to the group that corresponds to that venue's users.  You'd have to set up different groups for each venue.

Vesaro September 22, 2023

Yeah, I'm Just playing with this now. Think my brains going to explode trying to structure it ha.

I think the only way I can see it working is having all the parts in one schema and then basically having different schemas for each venue with reference objects linked to the actual parts object in the "parts" schema as it were. 

Would it work so they could only see objects in the "parts" if it has the reference from their own schema? 


Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
PRODUCT PLAN
PREMIUM
PERMISSIONS LEVEL
Product Admin
TAGS
AUG Leaders

Atlassian Community Events