What is Dynamic Data Masking?

Decorative graphic
by Jessica (Malakian) Newton Posted on November 21, 2025

Dynamic data masking (DDM) is a security technique that protects sensitive information by obscuring data at the application layer. When users access a database, DDM makes sure that only authorized individuals see the real values, while others view masked or partially masked data. This is done in real time, without altering the underlying database, making DDM a powerful tool for data privacy and compliance.

Dynamic Data Masking (DDM) Challenges and Limitations

Implementing DDM comes with several challenges and limitations:

  • Complex Configuration: Setting up and maintaining masking rules for different user roles can be complex, especially in large organizations with many data fields and access requirements.
  • Read-Only Data: DDM is typically limited to read-only operations. When masked data is presented to users, it cannot be modified, which restricts its use in environments where data needs to be edited or manipulated.
  • Performance Overhead: Applying masks in real time can introduce latency, particularly in high-traffic environments, though modern systems are optimized to minimize this impact.
  • Integration Challenges: Incorporating DDM into existing workflows may require careful planning and stakeholder buy-in to avoid disruption.

Supported Databases

Dynamic data masking is supported by a variety of modern database systems, including:

  • Progress OpenEdge (version 12.8 and later)
  • Microsoft SQL Server (2016 and later)
  • Oracle Database
  • Snowflake
  • Other enterprise-grade databases that offer similar column-level security features

Each system provides unique syntax and configuration options for defining masking policies and assigning user privileges.

How to Implement Dynamic Data Masking

Implementing DDM generally follows these steps:

  1. Identify Sensitive Data: Determine which columns or fields contain sensitive information that needs protection.
  2. Define Masking Rules: Choose the appropriate masking function (e.g., partial, full, email, random) for each sensitive column.
  3. Create User Roles: Assign users or roles with permissions to view unmasked data.
  4. Apply Masking Policies: Use database-specific commands to apply masking rules to the identified columns.
  5. Test and Monitor: Verify that unauthorized users see masked data and authorized users see the original values. Monitor for any issues with performance or data integrity.

Dynamic Data Masking Privileges

DDM relies on role-based access control to determine who can view unmasked data. Key privileges include:

  • Create: Allows the creation of new masking policies.
  • Apply: Enables the application or removal of masking policies on specific columns.
  • Ownership: Grants full control over a masking policy, including modification and deletion.

Administrators can grant these privileges to users or roles as needed, ensuring that only authorized personnel have access to sensitive information.

Dynamic Data Masking Error Messages

When implementing or using DDM, users may encounter error messages related to:

  • Permission Denied: Attempting to view unmasked data without the necessary privileges.
  • Configuration Errors: Incorrect syntax or unsupported data types when defining masking rules.
  • Integration Issues: Problems with integrating DDM into existing workflows or applications.

Detailed logs and audit trails are essential for troubleshooting and ensuring compliance.

Best Practices

Best Practice 1: Prioritize Sensitive Data

Focus first on masking personally identifiable information (PII), financial data, and other highly sensitive fields.

Best Practice 2: Regularly Review and Update Policies

As business needs and regulations evolve, review and update masking rules and user roles to maintain compliance and security.

Best Practice 3: Train and Communicate

Educate users and stakeholders about DDM, its benefits, and its limitations to ensure smooth adoption and minimize disruption.

Dynamic Data Masking Use Cases

Use Case 1: Customer Service

Customer service representatives can access customer records but only see masked versions of sensitive data like credit card numbers or Social Security numbers.

Use Case 2: Internal Analytics

Analysts can work with production-like data for reporting and analytics, but sensitive fields are masked to protect privacy.

Use Case 3: Compliance and Auditing

Organizations can demonstrate compliance with regulations such as GDPR and HIPAA by ensuring that only authorized users can access sensitive data.

Dynamic Data Masking Benefits

Benefit 1: Enhanced Data Privacy

DDM ensures that sensitive information is only visible to authorized users, reducing the risk of data breaches.

Benefit 2: Regulatory Compliance

DDM helps organizations meet stringent data protection regulations by controlling access to sensitive data.

Benefit 3: Minimal Application Changes

DDM can be implemented without modifying application code, making it easier and less costly to adopt.

Dynamic Data Masking and OpenEdge

Progress OpenEdge 12.8 introduces dynamic data masking as a core security feature, empowering organizations to protect sensitive data while maintaining business agility. With OpenEdge DDM, security administrators can define masking policies based on user roles and permissions, ensuring that only authorized users see unmasked data. OpenEdge DDM works seamlessly across all clients—including ABL, .NET, Java, AppServer, and SQL—without requiring changes to application code. This feature supports a variety of masking types, such as partial, full, custom, and null masks, and is managed through intuitive database utilities for enabling, disabling, activating, and deactivating DDM. OpenEdge also provides robust auditing and user notification capabilities, simplifying rule maintenance and ensuring consistent data access.

FAQ Section

What is the difference between Dynamic Data Masking and Static Data Masking?

Dynamic data masking obscures sensitive data in real time as it is accessed, without altering the underlying database. Static data masking permanently replaces sensitive data with fictitious values before the data is used in non-production environments.

What is SQL Server Static Data Masking?

SQL Server static data masking is not a built-in feature; static masking typically refers to third-party tools or processes that permanently replace sensitive data in a database copy, making it safe for use in development or testing.

What is the difference between TDE and dynamic data masking?

Transparent Data Encryption (TDE) encrypts data at rest on disk, protecting it from unauthorized access to physical storage. Dynamic data masking, on the other hand, controls which users can view sensitive data within the application, but does not encrypt the data itself.

Learn more about Dynamic Data Masking in OpenEdge. https://www.progress.com/resources/videos/elevating-data-security-with-dynamic-data-masking-(ddm)-in-openedge-12.8


Jessica Malakian
Jessica (Malakian) Newton

Jessica (Malakian)  Newton is a Senior Product Marketing Specialist at Progress, focused on the Progress OpenEdge product. Jessica started her career at Progress as an intern in 2020 and has since developed into a full-time marketer, dedicated to guiding customers on how to maximize the value of their OpenEdge solutions. Outside of work, Jessica enjoys reading and writing.

More from the author

Related Products:

OpenEdge

Application development platform that enables users to build, run and manage business-critical applications that require high availability and AI capabilities, while offering flexible deployment options to support scalability, security and performance.

Get Started

Related Tags

Related Articles

What’s New in OpenEdge 12.8: Supercharge Developer Efficiency, Enhance Environment Management and Improve Application Security
OpenEdge 12.8, our latest Long Term Supported (LTS) release and the culmination of the OpenEdge 12.3 through 12.7 innovation releases, empowers developers, streamlines database management and enhances application security.
Rethinking OpenEdge Hiring: Build a Future-Ready Developer Pipeline
Forward-thinking organizations can overcome the OpenEdge developer shortage by hiring adaptable talent with transferable skills, investing in internships and mentorships, and positioning OpenEdge as a rewarding, future-focused career path.
Enhance Your Enterprise Security with Progress OpenEdge 12.8
The Progress OpenEdge platform features a variety of advanced security features designed to help organizations fortify themselves against breaches and strengthen robust data protection from cyberattacks.
Prefooter Dots
Subscribe Icon

Latest Stories in Your Inbox

Subscribe to get all the news, info and tutorials you need to build better business apps and sites

Loading animation