Advanced Cloud Security Documentation
Index

Control Visibility

Visibility control allows you to hide fields from users who should not see certain information. This guide explains how to configure and use field visibility settings.

Understanding Visibility

When a field's visibility is set to "No":

  • The field does not appear on the page
  • The field label is not shown
  • The space may collapse (depending on page layout)
  • The user has no indication the field exists

Configuring Field Visibility

Accessing Field Controls

  1. Open Define Security Features
  2. Select a security feature
  3. In the Field Access part (embedded below the feature list), add a new line

Adding Fields with Visibility Control

  1. Use the assist edit (...) to select a table, field, and page
  2. Set the Visible column to Hide

Visibility Options

Setting Field Behavior
Show Field appears on the page
Hide Field is hidden
(blank) No visibility override (inherits default)

Visibility Control Examples

Example 1: Hide Cost Information

Hide cost fields from non-purchasing users:

Page Field Visible
Item Card Unit Cost No
Item Card Last Direct Cost No
Item Card Standard Cost No
Item List Unit Cost No
Purchase Line Direct Unit Cost No

Example 2: Hide Personal Information

Hide sensitive employee data:

Page Field Visible
Employee Card Social Security No. No
Employee Card Birth Date No
Employee Card Bank Account No. No
Employee List Birth Date No

Example 3: Hide Financial Details

Hide financial information from operations staff:

Page Field Visible
Customer Card Credit Limit (LCY) No
Customer Card Balance (LCY) No
Vendor Card Balance (LCY) No

Finding All Occurrences

A field may appear on multiple pages. To ensure complete hiding:

Common Page Types to Check

Page Type Example
Card pages Customer Card, Item Card
List pages Customer List, Item List
Mini cards Mini Customer Card
Worksheet pages Item Journal
FactBoxes Customer Statistics FactBox
Parts Sales Line Subform

Systematic Approach

  1. Identify the table containing the field
  2. List all pages that display this table
  3. Check each page for the field
  4. Add controls for each occurrence

Visibility Precedence

When multiple features control the same field:

User has Feature A: Field visible
User has Feature B: Field hidden
Result: Field is HIDDEN

Hidden always wins - if any assigned feature hides the field, it's hidden.

Why Most Restrictive Wins

This ensures security is additive:

  • Adding a feature can only restrict access
  • Never accidentally reveals hidden data
  • Predictable behavior

Dynamic Visibility

Standard Business Central may have fields with dynamic visibility:

Visible = ShowCreditLimit;

ACS can work with these fields - see Handle Conflict Fields.

Testing Visibility Controls

Before Deployment

  1. Assign the feature to a test user
  2. Log in as the test user (or use test function)
  3. Navigate to each controlled page
  4. Verify fields are hidden

After Deployment

  1. Communicate changes to affected users
  2. Be available for questions
  3. Monitor for issues

Test Checklist

  • Field hidden on card page
  • Field hidden on list page
  • Field hidden on related pages
  • No errors when opening pages
  • Page layout looks acceptable

User Experience Considerations

Layout Impact

When fields are hidden:

  • Page layout may shift
  • Groups may appear emptier
  • FastTabs may have fewer fields

User Perception

Users won't see hidden fields, so:

  • No "access denied" messages
  • Field appears to not exist
  • Cleaner interface for that user

Training

Help users understand:

  • They have appropriate access for their role
  • Not seeing certain fields is intentional
  • Who to contact for additional access

Common Pitfalls

Pitfall 1: Missing Pages

Forgetting to hide field on all pages where it appears.

Solution: Systematically check all pages for the table.

Pitfall 2: FactBox Fields

FactBoxes often show sensitive data (statistics, balances).

Solution: Check and configure FactBox parts.

Pitfall 3: Page Parts

Subforms and embedded parts may have the field.

Solution: Configure page parts separately.

Pitfall 4: Extension Regeneration

Forgetting to regenerate after adding fields.

Solution: Always regenerate extension after changes.

Visibility vs. Editability

Goal Use
User should not see the data Visibility = No
User can see but not change Editability = No
User can see and change No control needed

Choose visibility when the data itself is sensitive.

Reporting Considerations

Field visibility is a UI control:

  • Fields may still appear in reports
  • API access is not affected
  • Report filtering may expose hidden data

For complete data protection:

  • Combine with data-level filters
  • Review report access
  • Consider API permissions

Best Practices

Group Logically

Create features for related fields:

  • "HIDE-COST-INFO" - all cost fields
  • "HIDE-PERSONAL-DATA" - all PII fields
  • "HIDE-FINANCIAL-DETAILS" - all financial fields

Document Thoroughly

Record:

  • Which fields are hidden
  • Which pages are affected
  • Why these fields are hidden
  • Who should have this feature

Review Regularly

  • Check visibility settings periodically
  • Update as business needs change
  • Remove obsolete controls

Communicate Changes

  • Notify users before implementing
  • Explain the rationale
  • Provide contact for questions