Domain separation and Dynamic Translation
Summarize
Summary of Domain Separation and Dynamic Translation
Domain separation in Dynamic Translation allows users to manage data, processes, and administrative tasks through logical groupings known as domains. This feature enables control over data visibility and access for different users, facilitating service provider use cases.
Show less
Key Features
- Runtime Support: Domain separation operates during runtime, impacting user interfaces, cache keys, reporting, and more.
- Translator Configurations: Users can access only the translator configurations from their current domain, parent domains, or the global domain, ensuring relevant data visibility.
- Default Configurations: The current domain's default translator configuration is prioritized for dynamic translation, with fallback to parent domains if necessary.
- Connection Management: Connections and credentials are separated by domain, allowing distinct configurations while maintaining visibility constraints.
- Exclusion Framework: Each domain can establish its own Exclusion Framework rules, applicable across all domains on the instance.
Key Outcomes
By implementing domain separation, ServiceNow customers can effectively manage translation services tailored to individual domains, ensuring that users interact only with relevant configurations. This results in improved data security and operational efficiency across multi-tenant environments.
Domain separation is supported in Dynamic Translation and is configured to apply to translator configurations and Exclusion Framework. Domain separation enables you to separate data, processes, and administrative tasks into logical groupings called domains. You can control several aspects of this separation, including which users can see and access data.
Support level: Basic
- Business logic: Ensure that data goes into the proper domain for the application’s service provider use cases.
- The application supports domain separation at run time. The domain separation includes separation from the user interface, cache keys, reporting, rollups, and aggregations.
- The owner of the instance must set up the application to function across multiple tenants.
Sample use case: When a service provider (SP) uses chat to respond to a tenant-customer’s message, the customer must be able to see the SP's response.
For more information on support levels, see Application support for domain separation.
Activation information
You should activate the Domain Support - Domain Extensions Installer plugin (com.glide.domain.msp_extensions.installer). For information on how you can request for the plugin activation, see Request for domain separation in Dynamic Translation.
How domain separation works in Dynamic Translation
A service provider with domain separated instances can implement the Dynamic Translation framework so that users can use the translation service providers configured in the translator configurations specific to their domain. Translator configurations are process-separated in Dynamic Translation. All translation service providers configured in the translator configurations of the parent domain are available in child domains.
- Current domain
- Parent domains
- Global domain
Also, different connections can be configured for the same connection and credential alias of a translation service provider in multiple domains. However, Credentials and Connections are data-separated. So, a connection configured in a child domain is visible in parent domains. For information on domain separation for Connections and Credentials, see Domain separation for Credentials and Connections.
For example, consider the following scenario:
- Connection1
- Connection2
- Connection3
Domain-separated table
Translator Configuration [sn_dt_translator_configuration].
Default translator configuration for a domain
The default translator configuration of the current domain is always considered for dynamic translation. If the current domain does not have any default translator configuration, then the available default translator configuration of the nearest parent is considered.
A domain can have multiple default translator configurations. In this case also, the default translator configuration of the current domain is considered for dynamic translation. For example, let us consider the following scenario:
In Domain B, both TC1 and TC2 are visible. From Domain B, TC2 is first set as the default translator configuration. From Domain A, TC1 is then overridden and set as the default translator configuration. This results in multiple default translator configurations in Domain B. In this case, when in Domain B, TC2 is used as the default translator configuration for dynamic translation.
Overriding a translator configuration
In any domain, you can override the translator configuration of that domain or the parent domain. The overridden translator configuration of a parent domain is also visible in child domains. However, the overridden translator configuration of a child domain is not visible in the parent domain.
After you override a translator configuration of the same domain, only the overridden translator configuration is visible in that domain.
- Only the overridden translator configuration is visible in the child domain.
- The Overrides field of overridden translator configuration refers to the original translator configuration of the parent domain.
For example, consider the following scenario:
You can override a translator configuration TC1 from Domain B. After overriding, only the overridden configuration TC1 is available in Domain B and the Overrides field of TC1 refers to TC1 of the parent domain.
Domain separation in Exclusion Framework
The Exclusion Framework module in Dynamic Translation supports domain separation. Each domain on an instance can have its own set of Exclusion Framework rules, so the rules are specific to one domain. Activation of Exclusion Framework on an instance applies to all domains on the instance. For more information see Exclusion Framework in Dynamic Translation.