Design Pattern: Security - Masked Text

Aliases: Masking out Context: In the user interface (UI) of a software system, the user enters protected information such as a password, an access key, a credit card number etc. Problem: The entered information is visible during data entry and whenever any user (the one who entered the data, or a foreign user) opens the…

0

Design Pattern: Security - Single Point of Access

Context: Protected data needs to be used. There are many types of entities which might attempt to use the data. Problem: If no standard way of accessing data exists, then each entity might attempt to build its own system for handing the sensitive data. The data access layer might be implemented over and over again…

0

Design Pattern: Security - Data Encryption

Context: After applying Sensitive Data Encapsulation, all sensitive data is gathered in a known place in the database. This makes it possible to apply further protection best practices. Problem: If any non-authorized actor manages to get access to a copy of the database, the sensitive data is immediately available in clear-text. Forces: Accessibility: anyone who…

1

Design Pattern: Security - Sensitive Data Encapsulation

Aliases: Encapsulation, Separation of Concerns [1] Context: As a C/AL developer, you want to protect sensitive data which already exists in a system, but it is not clear which data needs protection and how to store it. Problem: Sensitive data is scattered and mixed with other data in various parts of the system (passwords residing…

2

Design Pattern: Security - SSL in Dynamics NAV

Context: The security of data transmission is just as important as the security of data storage. When data is transmitted over the web, Secure Sockets Layer (SSL) is available to be used with the web client in Dynamics NAV. Microsoft’s NAV cloud solution has SSL enabled by default. However, if a partner company chooses to…

3

Design Pattern: Create Data from Templates

For many records, such as Items, Customers, and Vendors, users have to enter the same sets of data again and again. This is tedious, error-prone (users forget to enter a field or they choose the wrong group), and difficult to learn for some users. We can group sets of data as templates to speed up…

2

Design Pattern: Data-driven Blocked Entity

This pattern implements a generic mechanism for dynamically restricting and allowing usage of a record by the business process administrator. Problem A Dynamics NAV record can be used in a number of functionalities across the application. There are situations, however, when the administrator wants to restrict the consumption of such a record, as well as…

0

Design Pattern: Passwords and sensitive data

By Bogdana Botez at Microsoft Development Center Copenhagen This pattern is supported starting from Microsoft Dynamics NAV version 2016. Abstract Protect data like passwords, social security numbers, credit card numbers etc by encrypting it and by placing it in a single table with restricted access. Problem statement When sensitive data is stored inside the Dynamics…

0

Design Pattern: Discovery Event

Sometimes one design pattern is enough to capture the experience related to one particular topic. And sometimes, multiple patterns inter-relate to define various aspects of the problem domain. The sum of those interconnected patterns is named a pattern language. And this is exactly the title of Christopher Alexander’s book, the one who in 1977 introduced…

0

Design Pattern: Cross-Session Events

By Nikolai L’Estrange, from TVision Technology Ltd. in the UK Abstract Track things that happen in other NAV Sessions.   Problem In Microsoft Dynamics NAV you can fire a function whenever something changes within your session (and from NAV 2016 this is even easier with the new Event model), however there is not an easy way to know what…

0