---
sourceDocument: Zurich Platform security
sourceDocumentLink: https://www.servicenow.com/docs/r/zurich/platform-security

 Release :

    - zurich

ft:locale :

    - en-US

ft:publication_title :

    - Zurich Platform security

ft:clusterId :

    - psec

bundleId :

    - psec

workflow :

    - Platform


---

# Visibility domains and Contains domains

# Visibility domains and Contains domains {#ariaid-title1}

* Release version: Zurich
* 
* Updated July 31, 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 minutes to read

Summarize  
![AI sparkle icon](https://servicenow.com/docs/portal-asset/ai-sparkle-icon) Summarized using AI  
This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.  

## Summary of Visibility domains and Contains domains

This content explains the differences betweenVisibility domainsandContains domainswithin ServiceNow's domain separation framework.
These mechanisms control user access to data across different domains, ensuring proper data segregation and visibility according to organizational needs.
Show full answer Show less  

## Visibility domains

* Visibility domains define whether specific users or groups can access records from other domains.
* They are explicitly granted user-to-domain relationships and are associated with User and Group records.
* Groups grant their members the visibility domains assigned to the group, and members lose access when removed from the group.
* Visibility domains grant all access rights to records in that domain as governed by ACL rules.
* They are not hierarchical (no child domains) and do not depend on the domain picker selection.
* Users with access to a visibility domain also see data in that domain's child domains.
* Excessive use of visibility domains is discouraged; contains domains are recommended for more robust control.

## Contains domains

* Contains domains create many-to-many relationships between domains, independent of parent-child hierarchy.
* They grant visibility only to domain data, without affecting processes.
* Users can see data from a selected domain and its child domains when that domain is selected in the domain picker.
* The domain picker controls the scope of data visibility for contains domains.
* When working within a domain record, only child domains are shown unless "Toggle Domain Scope" is used to reveal related domains.

## Practical examples

* **Contains domain example:** If a user's home domain (A) contains domains B and C, the user can view data in A, B, and C while in domain A. Changing the domain picker to B restricts visibility to domain B data only.
* **Visibility domain example:** If two users belong to different visibility domains (e.g., Database and Network), they cannot see each other's incidents, maintaining data separation.

## Additional notes

* Users inherit visibility domains from groups if visibility domains are assigned to groups.
* Visibility domains provide direct user-to-domain access control, while contains domains manage broader domain relationships and visibility.
* Choosing between visibility and contains domains affects how data visibility and control are structured across your ServiceNow instance.  
Visibility domains control what a specific user or group of users can see. "Contains"
domains control what an entire domain of users can see.

## Visibility domains {#c_DomainVisibility__section_sb3_hk4_2cb}

The "Visibility domains" element determines whether users from one domain can access records
from another domain. Associate this element with User \[sys_user\] and Group \[sys_user_group\]
records in related lists on those records. Groups grant their members the visibility domains of
the group. When a user leaves a group, they lose the group's visibility domains. Granting users
a visibility domain grants all the rights to the records in that domain based on ACL (access
control list) rules.

A visibility domain:  
* Is a user-to-domain relationship and is explicitly granted.
* Is not a child domain.
* Is not controlled by the selection in the domain picker. Users with access to a visibility domain always see data in that domain and its child domains.
{#c_DomainVisibility__ul_ppq_c44_4s}  
Note:  
Using visibility domains excessively is not recommended. Although visibility is one method to allow users to access records, it's best to use contains domains for more robust control.

## Contains domains {#c_DomainVisibility__section_lxd_pk4_2cb}

Normally parent-child relationships define the domain hierarchy. A contains domain lets you
relate domains on an as-needed basis, independent of parent-child relationships. However,
contains domains grant visibility only to domain data. Processes remain unaffected by contains
relationships.

A contains domain:  
* Is a many-to-many, domain-to-domain relationship.
* May have child domains. When a domain is selected, you can see the data from that domain and its children.
* Is controlled by the selection in the domain picker.
{#c_DomainVisibility__ul_pr5_yj4_2cb}  
Note:  
When you open the domain record, the scope is set to that record's domain, so you can see only child domains. Choose Toggle Domain Scope from the menu to populate the related list.

## Contains domain example {#c_DomainVisibility__section_nqz_jt2_ybb}

When a user's home domain is A, and the A domain contains domains B and C, they all become
peer domains. That means the user sees data from domains A, B, and C while in their home domain
A. If users change domains with the domain picker to Domain B, they see only data in Domain B.
When users interact with a record from Domain B or Domain C directly, they see only data for
that domain.

## Visibility domain example {#c_DomainVisibility__section_xnr_kj2_ybb}

Using domain visibility, if Don Goodliffe is in the Database domain, and Bow Ruggeri is in the
Network domain, and no incidents are in the global domain, then Don cannot access Bow's
incidents because of data separation.

## Inheriting visibility domains based on group membership {#c_DomainVisibility__section_mbt_vl2_ybb}

If you set the domain table to the Group \[sys_user_group\] table, users can inherit visibility
domains based on their group membership.
**Related concepts**   

* [Configuration that can be delegated to internal or external customers](https://www.servicenow.com/docs/NJu3xOJ6LOB~Roml9T9avA "Domain separation is designed to give ServiceNow service providers (SPs) the ability to configure the services they offer to their customers. It is not designed to enable their customers to administer those services themselves, except in a few areas that this topic details.")
* [Domain assignment](https://www.servicenow.com/docs/HN2BFBeNnzoECHcJ5aZUKA "By default, domain separation adds a domain field to tables and their extensions.")
* [Domain scope](https://www.servicenow.com/docs/X7cfGxbnuPm_Huie4jQmsw "Domain scope defines what users can and cannot access.")
* [Concepts for service providers](https://www.servicenow.com/docs/vweThjrda4Le6q4Nw8r1Zg "These concepts work with the existing ServiceNow platform capabilities to help you solve for common use cases.")
* [Contains queries and domain access](https://www.servicenow.com/docs/_oQACqHfjgpPbW0CdVRlTg "Use a \"contains\" query only in special cases, such as when users or groups need to see data from a domain that they don't have access to, but you don't want to move those users to a domain. Creating domain \"contains\" and user or group access for a domain should be an exception, only when absolutely needed.")  
**Related reference**   

* [Installed with domain separation](https://www.servicenow.com/docs/HiVIXMCKHp2EZq2AhjsgQw "Several platform components are added or modified with domain separation.")
* [Domain separation recommended practices for service providers](https://www.servicenow.com/docs/nuD8s3sCDhRtdCPQlXKUkg "You can create, implement, and maintain domain separation for your applications and services.")

