NAV Security and Security Filters – Practical Observations

By Marek Tylko | February 20, 2015

Nav security and security filters – practical observations

Over the years I have implemented security for Microsoft Dynamics NAV at a number of clients.  That has given me the opportunity to see the battle between security needs and wants play out in various ways.  Here are a few observations.

Security Groups:

I find that using Windows Security Groups saves a lot of time.  Assign your users to Active Directory Security Groups with names such as “NAV-Sales”, then create a NAV user associated with that name.  Set the “License Type” field on the User Card to – “Windows Group” and now you have a single place to set up security for the Sales group.  In this way you are not assigning long lists of specific permission sets to individuals.

The fewer groups that you divide your users into, the better chance you have of maintaining security a year after implementation.  The effort required to maintain security increases faster than the level of complexity of a NAV security setup. Take every opportunity to simplify even if it means giving people permissions to parts of the system that they may not use, but that do not constitute a threat to your data.   The best time to do all of this is during implementation, in that way you are irritating people who are already irritated by a new system.

Changes:

When adding new permissions or making existing ones more generous in a stock permission set a simple way to document your additions is to create new permission sets for extra permissions e.g. “G/L-ACCOUNT-XTRA”.   By adding a permissions set to a windows group’s permissions it is clear what extra security has been granted and it will still be clear next year.

Users:

Accentuate the positive – it helps to remind users that you are not targeting them (the typical trusted employee) out of functionality; you are locking out next year’s mistaken new hire that none of us know yet.

Field Level Security on the cheap:   (hide some vendors from me)

The more granular that security becomes, the more difficult it is to maintain and the more likely that it will fail miserably.  In spite of this, NAV offers Security Filters that can provide some powerful functionality.  Be warned that Security filters are the first step on the road to unmanageable security, but sometimes they really are worthwhile.

Example: purchasing is performed in NAV, employees are also listed as NAV vendors.  Most users should not have access to the employee type vendor records or their associated documents.

How to:

Typically a permission record gives a level of access to an object that is the same for every record.  By populating the Security filter field, it is possible to make the permission only valid for a subset of records.

We are going to look at Permission Sets and the Permissions under them.  The Security Filter will be set on an individual object permission.

1) Search for “Permission Sets” and Click the “Permissions” Action for any Permission Set.

NAV Permission Sets

 

2) Select Advanced Filter and just filter on Object ID – in this example the Vendor Table (23)

NAV Permissions PP Journal

Now we see all the occurrences of the Vendor Table.  There is a choice between deleting these particular entries and providing Vendor security with our own permission sets, or adding Security Filters to them.  If the only users that are going to see the FOREIGN vendors are super users, then we can add Security filters to these permissions.  Let’s make that our example.

3) Click on the AssistEdit Button of the Security Filter field.

Now you may enter a Security filter.  Note that no wild cards are allowed here.  In this case “Vendor Posting Group<>FOREIGN” will prevent the user from having any privileges from a permission record for vendors with the Posting Group “FOREIGN”.  Be careful not to exclude permissions for blank Vendor Posting Groups, or a user will not be able to open a new Vendor Record.  Vendor Lists that the user is shown, should be filtered to exclude these FOREIGN vendors, or errors will occur.  Obviously, Vendor Ledger Entries become a candidate for this treatment depending on the specific security result desired.  There are code changes that can be made such as the use of SETPERMISSIONFILTER.  This can filter the records an object (typically a page) can see and avoid permissions errors.

NAV Table Filter Vendor

Summary:
Keep It Simple – there is no better advice.  Security systems should be designed for the future to protect your environment from threats that are as yet unknown.  Unnecessary complexity should be avoided wherever possible to avoid unintentional security gaps being created.

A typical administrator will be tempted to add a permission every time a user gets an error.  At the very least by adding that permission into an “Extras” permission set these changes may be reviewed later.

 

Related Posts

Recommended Reading:

5.13.22 Power Platform

Using Power BI Object Level Security

  The following article will demonstrate how to use Power BI Object Level Security to disable column data based on […]

Read the Article
5.12.22 Dynamics CRM

How to Use the Stoneridge Support Portal

Stoneridge Software’s support portal is an intuitive and useful function that makes it easy for you to access resources to […]

Read the Article
5.6.22 Dynamics GP

Dynamics GP Transaction Removal: Purchase Orders

  Are you having performance issues with Purchase Orders?  Do you find that there are old Purchase Orders on your […]

Read the Article
5.5.22 Dynamics GP

The Real Story about the Long-Term Future of Dynamics GP Support

I’ve seen a number of people put forward comment that Dynamics GP is going away and you have to get […]

Read the Article

New Features in Dynamics 365 Business Central 2022 Wave 1 Release Part 3 – Financial Enhancements

The Dynamics 365 Businses Central 2022 Wave 1 Release has a lot of new and exciting features to help your […]

Read the Article
4.29.22 Dynamics GP

Dynamics GP Transaction Removals: Bank Reconciliation

  This is part 2 of a 3 part series on Dynamics GP Transaction Removals. These quick tips will hopefully […]

Read the Article
4.28.22 Dynamics GP

Uncommonly Used Features – Integrate Purchasing and Payables to Fixed Assets in Dynamics GP

Being able to integrate Purchasing and Payables to Fixed Assets in Dynamics GP will help you create visibility for your […]

Read the Article

New Features in the Dynamics 365 Business Central 2022 Wave 1 Release Part 2 – Ease-of-Use Features

  There are many new features in the Dynamics 365 Business Central 2022 Wave 1 Release to get excited about! […]

Read the Article
4.22.22 Dynamics GP

Dynamics GP Transaction Removal Series: Receivables

  This is part 1 of a 3 part series on Dynamics GP Transaction Removal. These quick tips will hopefully […]

Read the Article

Start the Conversation

It’s our mission to help clients win. We’d love to talk to you about the right business solutions to help you achieve your goals.

Subscribe To Our Blog

Sign up to get periodic updates on the latest posts.

Thank you for subscribing!

X