When you can’t go backwards, make sure you heading in the right direction before you start walking — The Hosk
Entity Ownership is the same in CRM 2011 all the way to Dynamics 365, it’s common activity you do many times but if you get it wrong, it can be extremely painful and time consuming to fix it.
When you create a new entity, you have to make a choice about Entity Ownership.
What is Entity ownership?
When you create a new entity, you have to set the ownership options, How many ownership options are there?
- Organization Owned
- User Or Team
Entity ownership Choice
Making the choice of entity ownership is painful, should the entity be organizational or user/team. I’m want to choose organization because it creates fewer fields and reduces the security maintenance.
Why is the choice important?
I know most Dynamics developers choose the default choice of User or team entity ownership and don’t even think about it.
One reason making the choice takes a bit of time is once you make that choice, there is no turning back. It’s one of those decisions that cannot be reversed. If you change your mind you have to delete the entity and start all over again, plus moving customisations and data.
Some entity checkboxes — send email, queues, Connections, business process flows it can never be unticked!!
If in doubt you can choose user/team ownership and not use owning fields and functionality.
What’s the difference, Why does it matter
What happens when you choose one option and the security ramification of the decision
When you choose Ownership of User/Team
After you have chosen Entity ownership type of user/team, CRM will create some additional fields to enable the records to be owned by users/teams.
It creates fields for OwningUser, OwningTeam, owningbusinessunit and ownerid.
The reason it creates all the fields is for the security roles and the five access levels
You have to record the business unit of the user/team so the security role can work out what other users can view the record.
If you selected organization level of Entity Ownership then it has two access levels None and Global.
Organisation ownership means the entity will not have an owner field or any of the other user/team/business unit lookups. Global or none visibility means the entity will ignore the business units of the users
Practical Considerations of Entity Ownership
If organization entity ownership only has access levels of none or global when would you use it?
If no one needs to own the records, reference data
- Config Settings
If in doubt, select User/Team
If you find you do need to hide visibility of an entity or think you might need security in the future then choose user/team.
If you are 100 percent sure the entity doesn’t need to be owned by anyone or there is no need to hide records from groups/users then organisation.
Changing an entity from organisation ownership to user/team
You cannot go back on your decision but what can happen is the project can happily move forward and then at some point in the future the customer will decide this entity now has some security requirements on the entity.
Changing an entity from entity ownership type Organisation to User/Team is not possible. What you would have to do is create a new entity with the ownership type user/team. Export all the data from your old entity and import it into your new entity. If the entity has customisations on the entity, moving them to a new entity can be extremely time consuming. You will need to configure security roles and then delete the old entity.
In other words, loads of work, so if there is any doubt, select user/team
Here are their comments
Scott Durow @ScottDurow
@BenHosk I always select ‘User or Team’ just in case security requirements comes along later!
Jukka Niiranen @jukkan