Integración con directivas de prevención de pérdida de datos de Microsoft Teams
Importante
La funcionalidad descrita en este artículo se encuentra actualmente en versión preliminar pública. Esta versión preliminar se ofrece sin un Acuerdo de Nivel de Servicio y no se recomienda para cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas. Para más información, consulte Términos de uso complementarios de las Versiones Preliminares de Microsoft Azure.
El administrador de Microsoft Teams puede configurar directivas para la prevención de pérdida de datos (DLP) para evitar la pérdida de información confidencial de los usuarios de Teams durante las reuniones. Los desarrolladores tienen la opción de integrar la funcionalidad de chat en reuniones de Teams con Azure Communication Services. Esto se puede hacer a través de la biblioteca de interfaz de usuario de Azure Communication Services o a través de una integración personalizada. En este artículo se describe cómo incorporar la prevención de pérdida de datos sin usar la biblioteca de interfaz de usuario.
Debe configurar la aplicación para que escuche las actualizaciones en tiempo real en las ediciones de mensajes. Si un usuario de Teams envía un mensaje con contenido confidencial, se reemplazará automáticamente por un mensaje en blanco y se marcará con un resultado de "policyViolation". La aplicación debe actualizar su interfaz de usuario para reflejar que el mensaje se ha bloqueado. Por ejemplo, mostrar un mensaje como "Mensaje bloqueado por contener información confidencial". Tenga en cuenta que puede haber un breve retraso, normalmente un par de segundos, entre cuando se envía un mensaje y cuando se detecta y se aplica una infracción de directiva. Puede encontrar un ejemplo de este código a continuación.
Es importante tener en cuenta que las directivas DLP solo se aplican a los mensajes enviados por los usuarios de Teams y no impiden que los usuarios de Azure Communications envíen información confidencial.
Prevención de pérdida de datos con la suscripción a notificaciones de chat en tiempo real
let endpointUrl = '<replace with your resource endpoint>';
// The user access token generated as part of the pre-requisites
let userAccessToken = '<USER_ACCESS_TOKEN>';
let chatClient = new ChatClient(endpointUrl, new AzureCommunicationTokenCredential(userAccessToken));
await chatClient.startRealtimeNotifications();
chatClient.on("chatMessageEdited", (e) => {
if (e.policyViolation?.result == "contentBlocked") {
// Show UI message blocked
}
});
Prevención de pérdida de datos con la recuperación de mensajes de chat anteriores
const messages = chatThreadClient.listMessages();
for await (const message of messages) {
if (message.policyViolation?.result == "contentBlocked") {
// Show UI message blocked
}
}