What is the SDM Translator Service?

The SDM-Translator is the specific worker service that handles the "heavy lifting" of communicating with Microsoft's protection services so that Spirion can manage sensitive data labels.

About

The SDM-Translator (or SDM Translator Service) is an internal backend component used within the Spirion infrastructure, primarily responsible for handling Microsoft Information Protection (MIP) label synchronization and other translation tasks between Spirion's data platform and external APIs.

Key details about this service are described below.

Core Responsibilities

  • MIP Label Synchronization: The service is responsible for communicating with Microsoft's APIs to retrieve and synchronize MIP (Microsoft Information Protection) labels. This allows the Spirion Console to display and apply remediation labels that match a customer's actual Microsoft environment.
  • Data Translation: It serves as a bridge for processing tasks that require specific native libraries, such as the Microsoft.InformationProtection.File SDK.
  • Task Execution: It is often triggered by Service Task Type 28 (Synchronize MIP Labels) within the Task Scheduler.

Technical Architecture

  • Historical Context: Traditionally, the SDM-Translator was a Windows-based service because the early Microsoft SDKs it relied upon were limited to the .NET Framework.
  • Modernization (Linux Migration): To reduce cloud infrastructure costs (Azure/AWS Windows "upcharges"), Spirion engineering has ported the SDM-Translator to .NET Core to allow it to run on Linux nodes/pods.
  • Dependencies: It utilizes native libraries (.so files on Linux) from the Microsoft Information Protection SDK to perform its file-labeling operations.

How to Monitor it

To troubleshoot MIP label synchronization issues in the Console use the following steps:

  1. Check Service Tasks: Look for Task Type 28 in the database or Task Scheduler logs.
  2. Logs: Review the logs for the TaskScheduler service, which will indicate if the SDM-Translator was successfully invoked to fetch labels.
  3. Database: Check the MipLabels table in the Spirion database to see if the translator successfully populated the labels.


Was this article helpful?