# Prevent a user from edit a project

**URL:** <https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578>\
**Category:** Ignition\
**Tags:** ignition79\
**Created:** [February 14, 2019, 5:22pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578 "2019-02-14T17:22:22Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![c.bertulli](https://avatars.discourse-cdn.com/v4/letter/c/f19dbf/32.png) [@c.bertulli](https://forum.inductiveautomation.com/u/c.bertulli)\
**Post date:** [February 14, 2019, 5:22pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/1 "2019-02-14T17:22:22Z")

</div>

Hi All,

This is the situation:  
I have Ignition installed on a Server and 7 clients.  
There is 2 company that can access the gateway.  
How can I prevent the users of the other company from editing my projects?

Cheers,

---

<div class="post-metadata">

**Author:** ![KathyApplebaum](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kathyapplebaum/32/7261_2.png) [@KathyApplebaum](https://forum.inductiveautomation.com/u/KathyApplebaum)\
**Post date:** [February 14, 2019, 9:17pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/2 "2019-02-14T21:17:45Z")

</div>

Use role-based permissions. [docs](https://docs.inductiveautomation.com/display/DOC79/Project+Security+in+Designer+and+Gateway)

---

<div class="post-metadata">

**Author:** ![c.bertulli](https://avatars.discourse-cdn.com/v4/letter/c/f19dbf/32.png) [@c.bertulli](https://forum.inductiveautomation.com/u/c.bertulli)\
**Post date:** [February 15, 2019, 8:28am UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/3 "2019-02-15T08:28:22Z")

</div>

Thanks for the tip 🙂, this is helpful, but I have some perplexity.  
I can block other users with different roles then mine, but I must leave to the other company the access to the “Gateway Settings” since they have to create OPC connection, create PLC device etc… so they can easily go to “gateway settings” and change back to default all options, or even create a user with the proper roles to edit, save, delete resorces on my projects.  
The other solution I thought is to use a DB as “System User Source” and delete all the current users/roles from the defalut one, but there is still one issue… they can go to “Tools - Database Query Browser” and view my users/roles table.  
Also is it possible to restore the user access to defalut?

---

<div class="post-metadata">

**Author:** ![JordanCClark](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jordancclark/32/83362_2.png) [@JordanCClark](https://forum.inductiveautomation.com/u/JordanCClark)\
**Post date:** [February 15, 2019, 12:29pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/4 "2019-02-15T12:29:18Z")

</div>

At some point on a shared resource, there is either trust or there isn’t. If it’s really an issue then they should have their own server instance.

---

<div class="post-metadata">

**Author:** ![c.bertulli](https://avatars.discourse-cdn.com/v4/letter/c/f19dbf/32.png) [@c.bertulli](https://forum.inductiveautomation.com/u/c.bertulli)\
**Post date:** [February 15, 2019, 12:34pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/5 "2019-02-15T12:34:25Z")

</div>

> [@JordanCClark](#):
>
> should have their own server instance

You mean another gateway with another license?

---

<div class="post-metadata">

**Author:** ![JordanCClark](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jordancclark/32/83362_2.png) [@JordanCClark](https://forum.inductiveautomation.com/u/JordanCClark)\
**Post date:** [February 15, 2019, 12:39pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/6 "2019-02-15T12:39:04Z")

</div>

Yes. You could limit the number of admins on a single server to 2 (you and one admin for the other company), but you still have to trust the other guy. If you can’t, then the only way to isolate them is to put them on their own server.

This is true of any shared resource, not just Ignition.

---

<div class="post-metadata">

**Author:** ![c.bertulli](https://avatars.discourse-cdn.com/v4/letter/c/f19dbf/32.png) [@c.bertulli](https://forum.inductiveautomation.com/u/c.bertulli)\
**Post date:** [February 15, 2019, 1:06pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/7 "2019-02-15T13:06:26Z")

</div>

If I use a DB as “System User Source” and then HASH the password? Will this work?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [February 15, 2019, 1:27pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/8 "2019-02-15T13:27:19Z")

</div>

If you give them gateway administrator permissions for the web interface, there is no way to prevent their access out of bounds. Its exactly like giving admin privileges on a domain – that user can do anything they want. Trust them or set up another server. Period.

---

<div class="post-metadata">

**Author:** ![c.bertulli](https://avatars.discourse-cdn.com/v4/letter/c/f19dbf/32.png) [@c.bertulli](https://forum.inductiveautomation.com/u/c.bertulli)\
**Post date:** [February 15, 2019, 1:30pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/9 "2019-02-15T13:30:24Z")

</div>

Ok, thanks to all for the help 🙂

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [February 15, 2019, 1:38pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/10 "2019-02-15T13:38:32Z")

</div>

It’s also worth keeping in mind that **_any_** user that can use the designer to write and execute gateway scripts can invoke Module SDK APIs to enumerate the entire gateway. Ignition’s role-based access controls are really just speed bumps if one has designer access. If your customers have any legal obligations to secure their data, you certainly need to put them on their own server.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [February 15, 2019, 8:03pm UTC](https://forum.inductiveautomation.com/t/prevent-a-user-from-edit-a-project/22578/11 "2019-02-15T20:03:49Z")

</div>

2 posts were split to a new topic: [Missing scripting functions](https://forum.inductiveautomation.com/t/missing-scripting-functions/22623)
