Visibility domains and Contains domains

  • Release version: Washingtondc
  • Updated February 1, 2024
  • 2 minutes to read
  • Summarize
    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

    Visibility domains and contains domains are vital elements of domain separation in ServiceNow, controlling data access for users and groups. Visibility domains restrict user access to records from other domains, while contains domains create flexible relationships between domains, allowing broader visibility based on specific needs.

    Show full answer Show less

    Key Features

    • Visibility Domains: Define which users or groups can access records in a specific domain. These domains are explicitly granted and are not influenced by the domain picker.
    • Contains Domains: Allow many-to-many relationships between domains, providing visibility to data within selected domains and their children, independent of the hierarchical structure.
    • Group Membership: Users can inherit visibility domains based on their group memberships, enhancing data security and access control.

    Key Outcomes

    By effectively utilizing visibility and contains domains, ServiceNow customers can manage user access to records securely and flexibly, ensuring that data remains separated according to organizational needs. This capability is crucial for maintaining data integrity and compliance in service provider environments.

    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

    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.
    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

    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.
    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

    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

    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

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