Gerir a etiqueta de confidencialidade da sua mensagem ou compromisso no modo de composição

A colaboração no local de trabalho não só ocorre na organização, como também se estende a parceiros externos. Com as informações a serem partilhadas para além da rede de uma organização, é importante estabelecer medidas para evitar a perda de dados e impor políticas de conformidade. Proteção de Informações do Microsoft Purview ajuda-o a implementar soluções para classificar e proteger informações confidenciais. A utilização de etiquetas de confidencialidade no Outlook é uma capacidade que pode configurar para proteger os seus dados.

Pode utilizar a API JavaScript do Office para implementar soluções de etiquetas de confidencialidade nos seus projetos de suplemento do Outlook e suportar os seguintes cenários.

  • Aplique automaticamente etiquetas de confidencialidade a determinadas mensagens e compromissos enquanto estão a ser compostos, para que os utilizadores possam concentrar-se no seu trabalho.
  • Restringir ações adicionais se uma determinada etiqueta de confidencialidade for aplicada a uma mensagem ou compromisso, como impedir que os utilizadores adicionem destinatários externos a uma mensagem.
  • Adicione um cabeçalho ou rodapé a uma mensagem ou compromisso com base na etiqueta de confidencialidade para cumprir as políticas empresariais e legais.

Observação

O suporte para a funcionalidade de etiqueta de confidencialidade foi introduzido no conjunto de requisitos 1.13. Para obter informações sobre o suporte de cliente para esta funcionalidade, veja Supported clients and platforms (Clientes e plataformas suportados).

Pré-requisitos

Para implementar a funcionalidade de etiqueta de confidencialidade no suplemento, tem de ter uma subscrição Microsoft 365 E5. Pode qualificar-se para uma subscrição de programador Microsoft 365 E5 através do Programa para Programadores do Microsoft 365. Para obter detalhes, consulte as FAQ. Em alternativa, pode inscrever-se numa avaliação gratuita de um mês ou comprar um plano do Microsoft 365.

Clientes e plataformas suportados

A tabela seguinte lista as combinações cliente-servidor que suportam a utilização da funcionalidade de etiqueta de confidencialidade nos suplementos do Outlook. As combinações excluídas não são suportadas.

Cliente Exchange Online
Browser (IU moderna)

novo Outlook no Windows
Com suporte
Windows (clássico)
Versão 2304 (Compilação 16327.20248) ou posterior
Com suporte
Mac
Versão 16.77 (23081600) ou posterior
Com suporte
Android Não aplicável
iOS Não aplicável

Configurar o manifesto

Para utilizar a funcionalidade de confidencialidade no seu projeto de suplemento do Outlook, tem de configurar a permissão de item de leitura/escrita no manifesto do seu suplemento.

  • Manifesto unificado para o Microsoft 365: na matriz "authorization.permissions.resourceSpecific", defina a propriedade "name" de um objeto como "MailboxItem.ReadWrite.User".
  • Manifesto apenas de suplemento: defina o <elemento Permissões> como ReadWriteItem.

Se o suplemento detetar e processar o OnSensitivityLabelChanged evento, são necessárias configurações de manifesto adicionais para ativar a funcionalidade de ativação baseada em eventos. Para saber mais, veja Detetar alterações de etiquetas de confidencialidade com o evento OnSensitivityLabelChanged.

Verificar a status do catálogo de etiquetas de confidencialidade

As etiquetas e políticas de confidencialidade são configuradas pelo administrador de uma organização através do portal de conformidade do Microsoft Purview. Para obter orientações sobre como configurar etiquetas de confidencialidade no seu inquilino, veja Criar e configurar etiquetas de confidencialidade e as respetivas políticas.

Antes de poder obter ou definir a etiqueta de confidencialidade numa mensagem ou compromisso, primeiro tem de se certificar de que o catálogo de etiquetas de confidencialidade está ativado na caixa de correio onde o suplemento está instalado. Para marcar a status do catálogo de etiquetas de confidencialidade, chame context.sensitivityLabelsCatalog.getIsEnabledAsync no modo de composição.

// Check whether the catalog of sensitivity labels is enabled.
Office.context.sensitivityLabelsCatalog.getIsEnabledAsync((asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
        console.log(asyncResult.value);
    } else {
        console.log("Action failed with error: " + asyncResult.error.message);
    }
});

Identificar as etiquetas de confidencialidade disponíveis

Se quiser determinar as etiquetas de confidencialidade disponíveis para utilização numa mensagem ou compromisso no modo de composição, utilize context.sensitivityLabelsCatalog.getAsync. As etiquetas disponíveis são devolvidas sob a forma de objetos SensitivityLabelDetails , que fornecem os seguintes detalhes.

  • O nome da etiqueta.
  • O identificador exclusivo (GUID) da etiqueta.
  • Uma descrição da etiqueta.
  • A cor atribuída à etiqueta.
  • As sub-etiquetas configuradas, se existirem.

O exemplo seguinte mostra como identificar as etiquetas de confidencialidade disponíveis no catálogo.

// It's recommended to check the status of the catalog of sensitivity labels before
// calling other sensitivity label methods.
Office.context.sensitivityLabelsCatalog.getIsEnabledAsync((asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded && asyncResult.value == true) {
        // Identify available sensitivity labels in the catalog.
        Office.context.sensitivityLabelsCatalog.getAsync((asyncResult) => {
            if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
                const catalog = asyncResult.value;
                console.log("Sensitivity Labels Catalog:");
                catalog.forEach((sensitivityLabel) => {
                    console.log(`Name: ${sensitivityLabel.name}`);
                    console.log(`ID: ${sensitivityLabel.id}`);
                    console.log(`Tooltip: ${sensitivityLabel.tooltip}`);
                    console.log(`Color: ${sensitivityLabel.color}`);
                    console.log(`Sublabels: ${JSON.stringify(sensitivityLabel.children)}`);
                });
            } else {
                console.log("Action failed with error: " + asyncResult.error.message);
            }
        });
    } else {
        console.log("Action failed with error: " + asyncResult.error.message);
    }
});

Obter a etiqueta de confidencialidade de uma mensagem ou compromisso

Para obter a etiqueta de confidencialidade atualmente aplicada a uma mensagem ou compromisso no modo de composição, chame item.sensitivityLabel.getAsync , conforme mostrado no exemplo seguinte. Esta ação devolve o GUID da etiqueta de confidencialidade.

// It's recommended to check the status of the catalog of sensitivity labels before
// calling other sensitivity label methods.
Office.context.sensitivityLabelsCatalog.getIsEnabledAsync((asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded && asyncResult.value == true) {
        // Get the current sensitivity label of a message or appointment.
        Office.context.mailbox.item.sensitivityLabel.getAsync((asyncResult) => {
            if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
                console.log(asyncResult.value);
            } else {
                console.log("Action failed with error: " + asyncResult.error.message);
            }
        });
    } else {
        console.log("Action failed with error: " + asyncResult.error.message);
    }
});

Definir a etiqueta de confidencialidade numa mensagem ou compromisso

Só pode definir uma etiqueta de confidencialidade numa mensagem ou compromisso no modo de composição. Antes de definir a etiqueta, chame context.sensitivityLabelsCatalog.getAsync. Isto garante que a etiqueta que pretende aplicar está disponível para utilização. Também o ajuda a identificar o GUID de uma etiqueta, que terá de aplicar a etiqueta ao item de correio. Depois de confirmar a disponibilidade da etiqueta, transmita o GUID como um parâmetro para item.sensitivityLabel.setAsync, conforme mostrado no exemplo seguinte.

// It's recommended to check the status of the catalog of sensitivity labels before
// calling other sensitivity label methods.
Office.context.sensitivityLabelsCatalog.getIsEnabledAsync((asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded && asyncResult.value == true) {
        // Identify available sensitivity labels in the catalog.
        Office.context.sensitivityLabelsCatalog.getAsync((asyncResult) => {
            if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
                const catalog = asyncResult.value;
                if (catalog.length > 0) {
                    // Get the GUID of the sensitivity label.
                    var id = catalog[0].id;
                    // Set the mail item's sensitivity label using the label's GUID.
                    Office.context.mailbox.item.sensitivityLabel.setAsync(id, (asyncResult) => {
                        if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
                            console.log(asyncResult.status);
                        } else {
                            console.log("Action failed with error: " + asyncResult.error.message);
                        }
                    });
                } else {
                    console.log("Catalog list is empty");
                }
            } else {
                console.log("Action failed with error: " + asyncResult.error.message);
            }
        });
    } else {
        console.log("Action failed with error: " + asyncResult.error.message);
    }
});

Em vez de utilizar o GUID para definir a etiqueta de confidencialidade, pode transmitir o objeto SensitivityLabelDetails obtido a partir da chamada de catálogo, conforme mostrado no exemplo seguinte.

// It's recommended to check the status of the catalog of sensitivity labels before
// calling other sensitivity label methods.
Office.context.sensitivityLabelsCatalog.getIsEnabledAsync((asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded && asyncResult.value == true) {
        // Identify available sensitivity labels in the catalog.
        Office.context.sensitivityLabelsCatalog.getAsync((asyncResult) => {
            if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
                const catalog = asyncResult.value;
                if (catalog.length > 0) {
                    // Set the mail item's sensitivity label using the SensitivityLabelDetails object.
                    Office.context.mailbox.item.sensitivityLabel.setAsync(catalog[0], (asyncResult) => {
                        if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
                            console.log(asyncResult.status);
                        } else {
                            console.log("Action failed with error: " + asyncResult.error.message);
                        }
                    });
                } else {
                    console.log("Catalog list is empty");
                }
            } else {
                console.log("Action failed with error: " + asyncResult.error.message);
            }
        });
    } else {
        console.log("Action failed with error: " + asyncResult.error.message);
    }
});

Detetar alterações de etiquetas de confidencialidade com o evento OnSensitivityLabelChanged

Tome medidas adicionais para proteger os seus dados através do OnSensitivityLabelChanged evento. Este evento permite que o suplemento conclua tarefas em resposta a alterações de etiquetas de confidencialidade numa mensagem ou compromisso. Por exemplo, pode impedir que os utilizadores atualizem a etiqueta de confidencialidade de um item de correio se este contiver determinados anexos.

O OnSensitivityLabelChanged evento está disponível através da funcionalidade de ativação baseada em eventos. Para saber como configurar, depurar e implementar um suplemento baseado em eventos que utiliza este evento, veja Configurar o seu suplemento do Outlook para ativação baseada em eventos.

Confira também