Domain separation and Dynamic Translation

  • Release version: Yokohama
  • Updated January 30, 2025
  • 4 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 Domain separation and Dynamic Translation

    Domain separation in Dynamic Translation allows ServiceNow customers to organize data, processes, and administrative tasks into distinct logical groupings called domains. This separation controls user access and visibility of data across domains, enabling multi-tenant support and ensuring that data remains within the appropriate domain for service provider use cases. The feature supports separation at runtime, including user interface elements, cache keys, reporting, rollups, and data aggregations.

    Show full answer Show less

    Key Features

    • Translator Configurations: Translator configurations are process-separated by domain. Users can access translator configurations within their current domain, any parent domains, and the global domain. The global domain’s configurations are visible across all domains.
    • Default Translator Configuration: Each domain uses its default translator configuration for dynamic translation. If none exists, the nearest parent domain's default configuration is used. Domains can have multiple default configurations, in which case the current domain’s default takes precedence.
    • Overriding Translator Configurations: Translator configurations can be overridden within the same domain or parent domains. Overridden configurations in a child domain are visible only there and not in the parent domain. After overriding, only the overridden configuration is active in that domain.
    • Connections and Credentials: Connections and credentials are data-separated by domain. Multiple connections for the same translation provider and credential alias can exist across domains, with priority given based on configuration order when multiple active connections are available.
    • Exclusion Framework Support: The Exclusion Framework module supports domain separation, allowing each domain to maintain its own exclusion rules. Activation applies instance-wide but rules are domain-specific.
    • Plugin Activation: To enable domain separation features in Dynamic Translation, the Domain Support - Domain Extensions Installer plugin must be activated.

    Practical Implications for ServiceNow Customers

    • Enable secure and logical multi-tenant separation of translation configurations and data within your instance, facilitating service provider and tenant use cases.
    • Control user access to translation service providers and configurations based on domain hierarchy, ensuring proper data visibility and management.
    • Customize translation behavior per domain by overriding configurations without impacting parent or sibling domains.
    • Manage multiple active connections for translation providers efficiently with domain-specific controls and prioritization.
    • Apply domain-specific exclusion rules to translation processing, enhancing control over what content gets translated per domain.
    • Ensure proper setup by activating the required plugin and following configuration best practices to support domain separation in Dynamic Translation.

    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.

    A translator configuration in the global domain is visible in all other domains. In any domain, a user can only view the translator configurations configured in the following domains:
    • Current domain
    • Parent domains
    • Global domain
    Note:
    If there are multiple translator configurations in a domain for the same translation service provider, the translator configuration of the current domain or the closest parent domain is considered for dynamic translation.

    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:

    Figure 1. Connections for a translation service provider in multiple domains
    Translation service provider in multiple domains
    Different connections are configured for the same connection and credential alias of Google in multiple domains. When in Domain A, all the following connections are visible:
    • Connection1
    • Connection2
    • Connection3
    Note:
    When multiple active connections are visible for the same connection and credential alias in a domain, the connection with the highest order is given priority when the Support Multiple Active Connections check box is selected.

    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:

    Figure 2. Domain separation in Dynamic Translation
    Domain separation in Dynamic Translation

    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.

    After you override a translator configuration of a parent domain, the following scenarios happen:
    • 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:

    Figure 3. Domain separation in Dynamic Translation
    Screenshot for Domain separation in Dynamic Translation

    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.