Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A colaboração no local de trabalho geralmente se estende além de uma organização para parceiros externos. O compartilhamento de informações fora da rede de uma organização requer medidas para evitar a perda de dados e impor políticas de conformidade. A Proteção de Informações do Microsoft Purview fornece soluções para classificar e proteger informações confidenciais. Os rótulos de confidencialidade aplicam essa proteção a dados no Excel, no Outlook, no PowerPoint e no Word.
Use a API JavaScript do Office para implementar soluções de rótulo de confidencialidade em seus projetos de Suplemento do Office e dar suporte aos cenários a seguir.
- Aplique rótulos de confidencialidade a documentos, mensagens ou compromissos para cumprir políticas comerciais e jurídicas.
- Restrinja ações adicionais se um determinado rótulo de confidencialidade for aplicado, como impedir que os usuários adicionem destinatários externos a uma mensagem.
- Classifique dados com base em seu rótulo de confidencialidade para dar suporte a auditoria e relatórios.
Observação
No Excel, no PowerPoint e no Word, as APIs de rótulo de confidencialidade estão em versão prévia. No Outlook, o suporte para o recurso de rótulo de confidencialidade foi introduzido no conjunto de requisitos 1.13. Para obter informações sobre suporte ao cliente, consulte Plataformas e clientes com suporte.
Pré-requisitos
O recurso de rótulo de confidencialidade requer uma assinatura do Microsoft 365 E5. Verifique se você se qualifica para uma assinatura de desenvolvedor do Microsoft 365 E5 por meio do Programa de Desenvolvedor do Microsoft 365 nas perguntas frequentes do programa. Caso contrário, inicie uma avaliação gratuita de 1 mês ou adquira um plano do Microsoft 365.
Clientes e plataformas com suporte
O suporte à API do rótulo de confidencialidade varia de acordo com o aplicativo e a plataforma do Office. O suporte do Outlook requer o Exchange Online. A tabela a seguir lista as combinações com suporte.
| Application | Web | Windows | Mac |
|---|---|---|---|
| Excel | Visualização | Versão prévia | Visualização |
| Outlook | Com suporte | Com suporte (novo e clássico (Versão 2304 (Build 16327.20248) ou posterior)) |
Com suporte (Versão 16.77 (23081600) ou posterior) |
| PowerPoint | Visualização | Versão prévia | Visualização |
| Word | Visualização | Versão prévia | Visualização |
Configurar o suporte ao rótulo de confidencialidade
Observação
As APIs de visualização estão sujeitas a alterações e não se destinam ao uso em um ambiente de produção. Recomendamos que você experimente apenas em ambiente de teste e desenvolvimento. Não use APIs de visualização em um ambiente de produção ou em documentos comercialmente críticos.
Para usar APIs de visualização:
- Você deve usar a versão de visualização da biblioteca da API JavaScript do Office da CDN (Rede de Distribuição de Conteúdo) doOffice.js. O arquivo de definição de tipo da compilação TypeScript e IntelliSense pode ser encontrado na CDN e DefinitelyTyped. Você pode instalar esses tipos com
npm install --save-dev @types/office-js-preview. - Talvez seja necessário ingressar no programa Microsoft 365 Insider para obter acesso a builds mais recentes do Office.
As APIs de rótulo de confidencialidade do Excel, PowerPoint e Word seguem um padrão de programação semelhante. Em cada host, o contexto de solicitação fornece acesso ao catálogo de rótulos de confidencialidade, enquanto o objeto de arquivo específico do host fornece métodos para obter ou atualizar seu rótulo.
A tabela a seguir lista os membros da API usados para acessar o catálogo de rótulos de confidencialidade e o rótulo aplicado a um arquivo em cada aplicativo host do Office.
| Application | Catálogo de rótulos de confidencialidade | Rótulo de confidencialidade no arquivo |
|---|---|---|
| Excel | context.sensitivityLabelsCatalog |
context.workbook.sensitivityLabel |
| PowerPoint | context.sensitivityLabelsCatalog |
context.presentation.sensitivityLabel |
| Word | context.sensitivityLabelsCatalog |
context.document.sensitivityLabel |
Os exemplos nas seções a seguir usam o Word. Para usar o Excel ou o PowerPoint, substitua o namespace do host correspondente e o objeto de rótulo de confidencialidade no nível do arquivo.
Verifique se a rotulagem de confidencialidade está disponível
Os rótulos e as políticas de confidencialidade são configurados pelo administrador de uma organização por meio do portal de conformidade do Microsoft Purview. Para obter orientações sobre como configurar rótulos de confidencialidade no seu locatário, consulte Criar e configurar rótulos de confidencialidade e suas políticas.
Para determinar se o rótulo de confidencialidade está disponível para o usuário atual, carregue getLabelingCapability (Excel, PowerPoint, Word) do catálogo de rótulos de confidencialidade.
await Word.run(async (context) => {
// Access the sensitivity label catalog for the current user.
const labelCatalog = context.sensitivityLabelsCatalog;
if (!labelCatalog) {
console.warn("The sensitivity label catalog isn't available.");
return;
}
// Load the labeling capability status before reading it.
labelCatalog.load("getLabelingCapability");
await context.sync();
// Display whether sensitivity labeling is enabled and available.
console.log(`Sensitivity labeling capability: ${labelCatalog.getLabelingCapability}`);
});
Identificar os rótulos de confidencialidade disponíveis
Para recuperar os rótulos publicados para o usuário atual, chame getLabels() (Excel, PowerPoint, Word) no catálogo.
O método retorna uma coleção cujos itens e propriedades não estão disponíveis até que você os carregue explicitamente e chame context.sync(). Para obter orientação, consulte Carregar de uma coleção. Carga items e as propriedades do rótulo de que seu suplemento precisa. As propriedades disponíveis diferem por host. Para obter uma lista completa, consulte SensitivityLabelDetails (Excel, PowerPoint, Word).
await Word.run(async (context) => {
// Access the sensitivity label catalog for the current user.
const labelCatalog = context.sensitivityLabelsCatalog;
if (!labelCatalog) {
console.warn("The sensitivity label catalog isn't available.");
return;
}
// Get the available labels and load the properties used by the add-in.
const availableLabels = labelCatalog.getLabels();
availableLabels.load("items/id,items/name,items/isEnabled");
await context.sync();
// Display the available labels.
console.log("Available sensitivity labels:");
availableLabels.items.forEach((label) => {
console.log(`${label.name} (${label.id}) - ${label.isEnabled ? "Enabled" : "Disabled"}`);
});
});
Obter o rótulo de confidencialidade
Para recuperar o rótulo atual, se um for aplicado, chame getCurrentOrNullObject() (Excel, PowerPoint, Word) no objeto de rótulo de confidencialidade do arquivo.
await Word.run(async (context) => {
// Access the sensitivity label applied to the current document.
const documentLabel = context.document.sensitivityLabel;
// Get the current label, if one is applied, and load its ID and name.
const currentLabel = documentLabel.getCurrentOrNullObject();
currentLabel.load("id,name");
await context.sync();
// Display the current label or report that the document isn't labeled.
if (currentLabel.isNullObject) {
console.log("The document doesn't have a sensitivity label.");
} else {
console.log(`Current label: ${currentLabel.name} (${currentLabel.id})`);
}
});
Definir o rótulo de confidencialidade
Antes de aplicar um rótulo, chame getLabels() (Excel, PowerPoint, Word) e selecione um rótulo ou sub-rótulo ativado da coleção retornada. O tryToUpdate() método (Excel, PowerPoint, Word) requer a ID do rótulo selecionado como parâmetro. Ligar getLabels() primeiro permite recuperar essa ID necessária e verificar se o rótulo está disponível para o usuário atual. Verifique o valor retornado SensitivityLabelUpdateResult (Excel, PowerPoint, Word) para determinar se a atualização foi bem-sucedida.
Observação
Um rótulo pai com sub-rótulos não pode ser aplicado diretamente. Em vez disso, selecione um de seus sub-rótulos habilitados.
async function setDocumentSensitivityLabel(labelId: string) {
await Word.run(async (context) => {
// Access the sensitivity label applied to the current document.
const documentLabel = context.document.sensitivityLabel;
// Apply the selected label.
const updateResult = documentLabel.tryToUpdate(labelId);
await context.sync();
// Check whether the label update succeeded.
if (updateResult.value === Word.SensitivityLabelUpdateResult.success) {
console.log("Applied the sensitivity label to the document.");
} else {
console.error(`The sensitivity label wasn't applied. Result: ${updateResult.value}`);
}
});
}
Detectar alterações no rótulo de confidencialidade com o evento OnSensitivityLabelChanged
Observação
O OnSensitivityLabelChanged evento só está disponível no Outlook.
Use o evento para executar a OnSensitivityLabelChanged lógica do suplemento quando o rótulo de confidencialidade for alterado em uma mensagem ou compromisso. Por exemplo, impedir que os usuários façam o downgrade do rótulo de um item de email que contém determinados anexos.
O OnSensitivityLabelChanged evento usa ativação baseada em eventos. Para obter diretrizes de configuração, depuração e implantação, consulte Ativar suplementos com eventos.