Cifrado de doble clave (DKE)Double Key Encryption (DKE)

Se aplica a: cifrado de doble clave para Microsoft 365 Public Preview, microsoft 365 Compliance, Azure Information ProtectionApplies to: Double Key Encryption for Microsoft 365 public preview, Microsoft 365 Compliance, Azure Information Protection

Instrucciones para: cliente de etiquetado Unificado de Azure Information Protection para WindowsInstructions for: Azure Information Protection unified labeling client for Windows

Descripción del servicio para: cumplimiento de Microsoft 365Service description for: Microsoft 365 Compliance

El cifrado de doble clave (DKE) utiliza dos claves conjuntamente para obtener acceso al contenido protegido.Double Key Encryption (DKE) uses two keys together to access protected content. Se almacena una clave en Microsoft Azure y se mantiene la otra clave.You store one key in Microsoft Azure, and you hold the other key. El cliente de etiqueta Unificado de Azure Information Protection protege el contenido altamente confidencial mientras mantiene un control total de una de las claves.The Azure Information Protection unified labeling client protects highly sensitive content while you maintain full control of one of your keys.

El cifrado de doble clave admite tanto la nube como las implementaciones locales.Double Key Encryption supports both cloud and on-premises deployments. Estas implementaciones ayudan a garantizar que los datos cifrados permanezcan opacos dondequiera que almacene los datos protegidos.These deployments help to ensure that encrypted data remains opaque wherever you store the protected data.

Para obtener más información acerca de las claves predeterminadas de raíz de inquilino basadas en la nube, vea Planning and Implementing Your Azure Information Protection tenant Key.For more information about the default, cloud-based tenant root keys, see Planning and implementing your Azure Information Protection tenant key.

Si las organizaciones tienen alguno de los siguientes requisitos, puede usar DKE para ayudar a proteger el contenido:If your organizations have any of the following requirements, you can use DKE to help secure your content:

  • Desea asegurarse de que solo usted puede descifrar el contenido protegido en todas las circunstancias.You want to ensure that only you can ever decrypt protected content, under all circumstances.
  • No desea que Microsoft tenga acceso a datos protegidos por su cuenta.You don't want Microsoft to have access to protected data on its own.
  • Tiene requisitos normativos para mantener las claves dentro de un límite geográfico.You have regulatory requirements to hold keys within a geographical boundary. Todas las claves que se incluyen para el cifrado y descifrado de datos se mantienen en el centro de datos.All of the keys that you hold for data encryption and decryption are maintained in your data center.

Requisitos de licencia y sistema para DKESystem and licensing requirements for DKE

El cifrado de doble clave para Microsoft 365 incluye Microsoft 365 E5 y Office 365 E5.Double Key Encryption for Microsoft 365 comes with Microsoft 365 E5 and Office 365 E5. Si no tiene una licencia de Microsoft 365 E5, puede registrarse para obtener una versión de prueba.If you don’t have a Microsoft 365 E5 license, you can sign up for a trial. Para obtener más información acerca de estas licencias, consulte Microsoft 365 Licensing Guidance for security & Compliance.For more information about these licenses, see Microsoft 365 licensing guidance for security & compliance.

Office Insider Para usar la versión preliminar pública, debe ser miembro del programa Office Insider.Office Insider To use the public preview, you must be a member of the Office Insider program. Para unirse a Office Insider, vaya a https://insider.office.com .To join Office Insider, go to https://insider.office.com. Una vez que sea miembro, prepare el entorno para implementar las compilaciones de Office Insider eligiendo el método de implementación adecuado para su organización.Once you're a member, prepare your environment to deploy Office Insider builds by choosing the right deployment method for your organization. Para obtener instrucciones, consulte Introducción a la implementación de compilaciones de Office Insider.For instructions, see Getting started on deploying Office Insider builds.

Azure Information Protection.Azure Information Protection. DKE funciona con etiquetas de confidencialidad y requiere Azure Information Protection.DKE works with sensitivity labels and requires Azure Information Protection.

Entornos admitidos para almacenar y ver contenido protegido por DKESupported environments for storing and viewing DKE-protected content

Aplicaciones compatibles.Supported applications. Microsoft 365 apps for Enterprise clients in Windows, incluidos Word, Excel y PowerPoint.Microsoft 365 Apps for enterprise clients on Windows, including Word, Excel, and PowerPoint.

Soporte de contenido en línea.Online content support. Se admiten los documentos y archivos almacenados en línea tanto en Microsoft SharePoint como en OneDrive para la empresa.Documents and files stored online in both Microsoft SharePoint and OneDrive for Business are supported. Puede compartir contenido cifrado por correo electrónico, pero no puede ver documentos cifrados y archivos en línea.You can share encrypted content by email, but you can't view encrypted documents and files online. En su lugar, debe ver el contenido protegido con las aplicaciones de escritorio en su equipo local.Instead, you must view protected content using the desktop apps on your local computer.

Acerca de este artículo de la versión preliminar públicaAbout this public preview article

Hay varias formas de realizar algunos de los pasos para implementar el cifrado doble de claves.There are several ways you can complete some of the steps to deploy Double Key Encryption. En este artículo se proporcionan instrucciones detalladas para que los administradores menos experimentados implementen correctamente el servicio.This article provides detailed instructions so that less experienced admins successfully deploy the service. Si le resulta cómodo hacerlo, puede elegir usar sus propios métodos.If you're comfortable doing so, you can choose to use your own methods.

En este artículo se incluyen instrucciones paso a paso sobre cómo implementar el servicio de cifrado de doble clave en Azure.This article includes step-by-step instructions on how to deploy the Double Key Encryption service to Azure. Este escenario no es algo que probablemente haría en producción.This scenario isn't something you'd likely do in production. Para la versión preliminar pública, el uso de Azure es una forma rápida de implementar DKE.For public preview, using Azure is a quick way to deploy DKE. La implementación en Azure le permite empezar a usar el cifrado de doble clave inmediatamente.Deploying to Azure lets you get started using Double Key Encryption right away.

Puede implementar el servicio localmente en la red o con otro proveedor.You can deploy the service locally on your network or with another provider. Deberá publicar el almacén de claves con los métodos apropiados para esa ubicación.You'll need to publish the key store using methods that are appropriate for that location.

Implementar el cifrado de doble claveDeploy Double Key Encryption

Este artículo y el vídeo de implementación usan Azure como destino de implementación para el servicio DKE.This article and the deployment video use Azure as the deployment destination for the DKE service. Si va a realizar la implementación en otra ubicación, deberá proporcionar sus propios valores.If you're deploying to another location, you'll need to provide your own values.

Vea el vídeo sobre la implementación de doble clave para ver una introducción paso a paso de los conceptos del artículo.Watch the Double Key Encryption deployment video to see step-by-step overview of concepts in the article. El vídeo tarda unos 18 minutos en completarse.The video takes about 18 minutes to complete.

Deberá seguir estos pasos generales para configurar el cifrado de doble clave para su organización.You'll follow these general steps to set up Double Key Encryption for your organization.

  1. Requisitos previos de instalación de softwareInstall software prerequisites
  2. Clone el repositorio de GitHub con cifrado de doble claveClone the Double Key Encryption GitHub repository
  3. Modificación de la configuración de la aplicaciónModify application settings
  4. Generar claves de pruebaGenerate test keys
  5. Compilar el proyectoBuild the project
  6. Publicar el almacén de clavesPublish the key store
  7. Validar la implementaciónValidate your deployment
  8. Registrar el almacén de clavesRegister your key store
  9. Cree etiquetas de confidencialidadCreate sensitivity labels

Cuando haya terminado, puede cifrar documentos y archivos con DKE.When you're done, you can encrypt documents and files using DKE. Para obtener más información, consulte aplicar etiquetas de confidencialidad a los archivos y el correo electrónico en Office.For information, see Apply sensitivity labels to your files and email in Office.

Requisitos previos de instalación de softwareInstall software prerequisites

Existen dos tipos de requisitos previos de software para el cifrado doble de clavesThere are two types of software prerequisites for Double Key Encryption

Requisitos previos del servicio de cifrado de doble claveDouble Key Encryption service prerequisites

Instale estos requisitos previos en el equipo en el que desea instalar el servicio DKE.Install these prerequisites on the computer where you want to install the DKE service.

SDK .net Core 3,1..NET Core 3.1 SDK. Descargue e instale el SDK desde download .net Core 3,1.Download and install the SDK from Download .NET Core 3.1.

Visual Studio Code.Visual Studio Code. Descargue Visual Studio Code desde https://code.visualstudio.com/ .Download Visual Studio Code from https://code.visualstudio.com/. Una vez instalado, ejecute Visual Studio Code y seleccione Ver > extensiones.Once installed, run Visual Studio Code and select View > Extensions. Instale estas extensiones.Install these extensions.

  • C# para Visual Studio CodeC# for Visual Studio Code

  • Administrador de paquetes NuGetNuGet Package Manager

Microsoft Office Insider.Microsoft Office Insider. Configure al menos un método de implementación.Set up at least one deployment method.

Recursos git.Git resources. Descargue e instale uno de los siguientes elementos.Download and install one of the following.

OpenSSL Debe tener instalado OpenSSL para generar las claves de prueba después de implementar DKE.OpenSSL You must have OpenSSL installed to generate test keys after you deploy DKE. Asegúrese de que está invocando correctamente desde la ruta de las variables de entorno.Make sure you're invoking it correctly from your environment variables path. Por ejemplo, consulte "agregar el directorio de instalación a la ruta de acceso" en https://www.osradar.com/install-openssl-windows/ para más detalles.For example, see "Add the installation directory to PATH" at https://www.osradar.com/install-openssl-windows/ for details.

Requisitos previos de cifrado de doble clave para equipos clienteDouble Key Encryption prerequisites for client computers

Instale estos requisitos previos en cada equipo cliente donde quiera proteger y consumir documentos protegidos.Install these prerequisites on each client computer where you want to protect and consume protected documents.

Microsoft Office versión *. 12711 o posterior.Microsoft Office version *.12711 or later.

Azure Information Protection el cliente de etiquetado unificado versiones 2.7.93.0 o posterior.Azure Information Protection Unified Labeling Client versions 2.7.93.0 or later. Descargue e instale el cliente de etiquetado Unificado de Microsoft.Download and install the Unified Labeling client from Microsoft.

Clonar el repositorio de GitHub DKEClone the DKE GitHub repository

Microsoft proporciona los archivos de origen de DKE en un repositorio de GitHub.Microsoft supplies the DKE source files in a GitHub repository. Clonar el repositorio para compilar el proyecto de forma local para el uso de su organización.You clone the repository to build the project locally for your organization's use. El repositorio de GitHub DKE se encuentra en https://github.com/Azure-Samples/DoubleKeyEncryptionService .The DKE GitHub repository is located at https://github.com/Azure-Samples/DoubleKeyEncryptionService.

Las siguientes instrucciones están destinadas a usuarios no con experiencia de Git o Visual Studio Code:The following instructions are intended for inexperienced git or Visual Studio Code users:

  1. En el explorador, vaya a:https://github.com/Azure-Samples/DoubleKeyEncryptionServiceIn your browser, go to: https://github.com/Azure-Samples/DoubleKeyEncryptionService

  2. Hacia el lado derecho de la pantalla, seleccione código.Towards the right side of the screen, select Code. Es posible que la versión de la interfaz de usuario muestre un botón clonar o descargar .Your version of the UI might show a Clone or download button. A continuación, en la lista desplegable que aparece, seleccione el icono de copia para copiar la dirección URL en el portapapeles.Then, in the dropdown that appears, select the copy icon to copy the URL to your clipboard.

    Por ejemplo:For example:

    Clone el repositorio del servicio de cifrado de doble clave desde GitHub

  3. En Visual Studio Code, seleccione Ver > paleta de comandos y seleccione git: clon.In Visual Studio Code, select View > Command Palette and select Git: Clone. Para ir a la opción de la lista, empiece a escribir git: clone para filtrar las entradas y, a continuación, selecciónela en la lista desplegable.To jump to the option in the list, start typing git: clone to filter the entries and then select it from the drop-down. Por ejemplo:For example:

    Opción de Visual Studio Code GIT: Clone

  4. En el cuadro de texto, pegue la dirección URL que copió desde git y seleccione clonar desde GitHub.In the text box, paste the URL that you copied from Git and select Clone from GitHub.

  5. En el cuadro de diálogo Seleccionar carpeta que aparece, busque y seleccione una ubicación para almacenar el repositorio.In the Select Folder dialog that appears, browse to and select a location to store the repository. En el símbolo del sistema, seleccione abrir.At the prompt, select Open.

    El repositorio se abre en Visual Studio Code y muestra la rama git actual en la parte inferior izquierda.The repository is opened in Visual Studio Code, and displays the current Git branch at the bottom left. La rama debe ser maestra.The branch should be master.

    Por ejemplo:For example:

    Rama de patrón de Visual Studio Code

  6. Seleccione el patrón de palabras y, a continuación, seleccione public_preview de la lista de ramas.Select the word master, and then select public_preview from the list of branches.

    Importante

    Al seleccionar la rama public_preview, se asegura de que tiene los archivos correctos para compilar el proyecto.Selecting the public_preview branch ensures that you have the correct files to build the project. Si no elige la rama correcta, se producirá un error en la implementación.If you do not choose the correct branch your deployment will fail.

Ahora tiene su repositorio de origen de DKE configurado de forma local.You now have your DKE source repository set up locally. A continuación, modifique la configuración de la aplicación para su organización.Next, modify application settings for your organization.

Modificación de la configuración de la aplicaciónModify application settings

Para implementar el servicio DKE, debe modificar los siguientes tipos de configuración de aplicación:To deploy the DKE service, you must modify the following types of application settings:

Modifique la configuración de la aplicación en el appsettings.jsarchivo.You modify application settings in the appsettings.json file. Este archivo se encuentra en el repositorio de DoubleKeyEncryptionService que clonó localmente en DoubleKeyEncryptionService\src\customer-key-store.This file is located in the DoubleKeyEncryptionService repo you cloned locally under DoubleKeyEncryptionService\src\customer-key-store. Por ejemplo, en Visual Studio Code, puede desplazarse hasta el archivo como se muestra en la siguiente imagen.For example, in Visual Studio Code, you can browse to the file as shown in the following picture.

Buscar el appsettings.jsen el archivo para DKE.

Configuración de acceso a clavesKey access settings

Elija si desea usar el correo electrónico o la autorización de roles.Choose whether to use email or role authorization. DKE solo admite uno de estos métodos de autenticación a la vez.DKE supports only one of these authentication methods at a time.

  • Autorización de correo electrónico.Email authorization. Permite a su organización autorizar el acceso a claves basadas solo en direcciones de correo electrónico.Allows your organization to authorize access to keys based on email addresses only.

  • Autorización de roles.Role authorization. Permite a su organización autorizar el acceso a las claves en función de los grupos de Active Directory y requiere que el servicio Web pueda consultar LDAP.Allows your organization to authorize access to keys based on Active Directory groups, and requires that the web service can query LDAP.

Para establecer la configuración de acceso clave para DKE mediante autorización de correo electrónicoTo set key access settings for DKE using email authorization

  1. Abra el appsettings.jsen archivo y busque la AuthorizedEmailAddress configuración.Open the appsettings.json file and locate the AuthorizedEmailAddress setting.

  2. Agregue las direcciones o direcciones de correo electrónico que quiera autorizar.Add the email address or addresses that you want to authorize. Separe varias direcciones de correo electrónico con comillas dobles y comas.Separate multiple email addresses with double quotes and commas. Por ejemplo:For example:

    "AuthorizedEmailAddress": ["email1@company.com", "email2@company.com ", "email3@company.com"]
    
  3. Busque la LDAPPath configuración y quite el texto If role authorization is used then this is the LDAP path comprendido entre las comillas dobles.Locate the LDAPPath setting and remove the text If role authorization is used then this is the LDAP path between the double quotes. Deje las comillas dobles en su posición.Leave the double quotes in place. Cuando haya terminado, la configuración debería ser similar a la siguiente.When you're finished, the setting should look like this.

    "LDAPPath": ""
    
  4. Busque la AuthorizedRoles configuración y elimine la línea completa.Locate the AuthorizedRoles setting and delete the entire line.

Esta imagen muestra la appsettings.jsen un archivo con el formato correcto para la autorización de correo electrónico.This image shows the appsettings.json file correctly formatted for email authorization.

El appsettings.jsen archivo que muestra el método de autorización de correo electrónico

Para establecer la configuración de acceso clave de DKE mediante la autorización de rolesTo set key access settings for DKE using role authorization

  1. Abra el appsettings.jsen archivo y busque la AuthorizedRoles configuración.Open the appsettings.json file and locate the AuthorizedRoles setting.

  2. Agregue los nombres de grupo de Active Directory que desea autorizar.Add the Active Directory group names you want to authorize. Separe varios nombres de grupo con comillas dobles y comas.Separate multiple group names with double quotes and commas. Por ejemplo:For example:

    "AuthorizedRoles": ["group1", "group2", "group3"]
    
  3. Busque la LDAPPath opción y agregue el dominio de Active Directory.Locate the LDAPPath setting and add the Active Directory domain. Por ejemplo:For example:

    "LDAPPath": "contoso.com"
    
  4. Busque la AuthorizedEmailAddress configuración y elimine la línea completa.Locate the AuthorizedEmailAddress setting and delete the entire line.

Esta imagen muestra la appsettings.jsen un archivo con el formato correcto para la autorización de rol.This image shows the appsettings.json file correctly formatted for role authorization.

appsettings.jsen el archivo que muestra el método de autorización de roles

Configuración de inquilinos y clavesTenant and key settings

La configuración de clave y de inquilino de DKE se encuentra en el appsettings.jsen el archivo.DKE tenant and key settings are located in the appsettings.json file.

Para establecer la configuración de inquilinos y claves para DKETo configure tenant and key settings for DKE

  1. Abra el appsettings.jsen el archivo.Open the appsettings.json file.

  2. Busque la ValidIssuers configuración y sustitúyala <tenantid> por el identificador de inquilino.Locate the ValidIssuers setting and replace <tenantid> with your tenant ID. Puede encontrar el identificador de inquilino en el portal de Azure y ver las propiedades del espacioempresarial.You can locate your tenant ID by going to the Azure portal and viewing the tenant properties. Por ejemplo:For example:

    "ValidIssuers": [
      "https://sts.windows.net/9c99431e-b513-44be-a7d9-e7b500002d4b/"
    ]
    

Busque el JwtAudience .Locate the JwtAudience. Reemplace <yourhostname> por el nombre de host del equipo en el que se ejecutará el servicio DKE.Replace <yourhostname> with the hostname of the machine where the DKE service will run. Por ejemplo:For example:

Importante

El valor de JwtAudience debe coincidir exactamentecon el nombre de su host.The value for JwtAudience must match the name of your host exactly. Puede usar localhost: 5001 durante la depuración.You may use localhost:5001 while debugging. Sin embargo, cuando haya terminado la depuración, asegúrese de actualizar este valor al nombre de host del servidor.However, When you're done debugging, make sure to update this value to the server's hostname.

  • TestKeys:Name.TestKeys:Name. Escriba un nombre para la clave.Enter a name for your key. Por ejemplo: TestKey1For example: TestKey1
  • TestKeys:Id.TestKeys:Id. Cree un GUID y escríbalo como el TestKeys:ID valor.Create a GUID and enter it as the TestKeys:ID value. Por ejemplo, DCE1CC21-FF9B-4424-8FF4-9914BD19A1BE.For example, DCE1CC21-FF9B-4424-8FF4-9914BD19A1BE. Puede usar un sitio como el generador de GUID en línea para generar un GUID de forma aleatoria.You can use a site like Online GUID Generator to randomly generate a GUID.

Esta imagen muestra el formato correcto para la configuración de inquilinos y claves de appsettings.js.This image shows the correct format for tenant and keys settings in appsettings.json. LDAPPathestá configurado para la autorización de roles.LDAPPath is configured for role authorization.

Muestra los valores correctos de las claves y los inquilinos para DKE en el appsettings.jsen el archivo.

Generar claves de pruebaGenerate test keys

Una vez que haya definido la configuración de la aplicación, estará listo para generar claves de prueba públicas y privadas.Once you have your application settings defined, you're ready to generate public and private test keys.

Para generar claves:To generate keys:

  1. En el menú Inicio de Windows, ejecute el símbolo del sistema de OpenSSL.From the Windows Start menu, run the OpenSSL Command Prompt.

  2. Cambie a la carpeta en la que desea guardar las claves de prueba.Change to the folder where you want to save the test keys. Los archivos que crea al completar los pasos de esta tarea se almacenan en la misma carpeta.The files you create by completing the steps in this task are stored in the same folder.

  3. Generar la nueva clave de prueba.Generate the new test key.

    openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365
    
  4. Generar la clave privada.Generate the private key.

    openssl rsa -in key.pem -out privkeynopass.pem
    
  5. Generar la clave pública.Generate the public key.

    openssl rsa -in key.pem -pubout > pubkeyonly.pem
    
  6. En un editor de texto, Abra pubkeyonly. pem.In a text editor, open pubkeyonly.pem. Copie todo el contenido del archivo pubkeyonly. pem , excepto la primera y la última línea, en la PublicPem sección de la appsettings.jsen el archivo.Copy all of the content in the pubkeyonly.pem file, except the first and last lines, into the PublicPem section of the appsettings.json file.

  7. En un editor de texto, Abra privkeynopass. pem.In a text editor, open privkeynopass.pem. Copie todo el contenido del archivo privkeynopass. pem , excepto la primera y la última línea, en la PrivatePem sección de la appsettings.jsen el archivo.Copy all of the content in the privkeynopass.pem file, except the first and last lines, into the PrivatePem section of the appsettings.json file.

  8. Quite todos los espacios en blanco y las nuevas líneas en las PublicPem PrivatePem secciones y.Remove all blank spaces and newlines in both the PublicPem and PrivatePem sections.

    Importante

    Cuando copie este contenido, no elimine ninguno de los datos del PEM.When you copy this content, do not delete any of the PEM data.

  9. En Visual Studio Code, vaya al archivo Startup.CS .In Visual Studio Code, browse to the Startup.cs file. Este archivo se encuentra en el repositorio de DoubleKeyEncryptionService que clonó localmente en DoubleKeyEncryptionService\src\customer-key-store.This file is located in the DoubleKeyEncryptionService repo you cloned locally under DoubleKeyEncryptionService\src\customer-key-store.

  10. Busque las siguientes líneas:Locate the following lines:

         #if USE_TEST_KEYS
         #error !!!!!!!!!!!!!!!!!!!!!! Use of test keys is only supported for testing,
         DO NOT USE  FOR PRODUCTION !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
         services.AddSingleton<ippw.IKeyStore, ippw.TestKeyStore>();
         #endif
    
  11. Reemplace estas líneas con el texto siguiente:Replace these lines with the following text:

    services.AddSingleton<ippw.IKeyStore, ippw.TestKeyStore>();
    

    Los resultados finales deben ser similares a los siguientes.The end results should look similar to the following.

    archivo startup.cs para la versión preliminar pública

Ahora está listo para compilar el proyecto DKE.Now you're ready to build your DKE project.

Compile el proyecto.Build the project

Use las siguientes instrucciones para crear el proyecto DKE de forma local:Use the following instructions to build the DKE project locally:

  1. En Visual Studio Code, en el repositorio del servicio DKE, seleccione Ver > paleta de comandos y, a continuación, escriba generar en el símbolo del sistema.In Visual Studio Code, in the DKE service repository, select View > Command Palette and then type build at the prompt.

  2. En la lista, elija tareas: Ejecutar tarea de compilación.From the list, choose Tasks: Run build task.

    Si no se encuentra ninguna tarea de compilación, seleccione Configurar tarea de compilación y cree una para .net Core de la siguiente manera.If there are no build tasks found, select Configure Build Task and create one for .NET core as follows.

    Configurar la tarea de compilación que falta para .NET

    1. Elija crear tasks.jsen a partir de plantilla.Choose Create tasks.json from template.

    Crear tasks.jsen archivo de plantilla para DKE

    1. En la lista de tipos de plantilla, seleccione .net Core.From the list of template types, select .NET Core.

    Crear tasks.jsen archivo de plantilla para DKE

    1. En la sección generar, busque la ruta de acceso al archivo customerkeystore. csproj .In the build section, locate the path to the customerkeystore.csproj file. Si no está ahí, agregue la siguiente línea:If it's not there, add the following line:

      "${workspaceFolder}/src/customer-key-store/customerkeystore.csproj",
      
  3. Vuelva a ejecutar la compilación.Run the build again.

  4. Compruebe que no haya errores rojos en la ventana de salida.Verify that there are no red errors in the output window.

    Si hay errores rojos, compruebe el resultado de la consola.If there are red errors, check the console output. Asegúrese de que ha completado todos los pasos anteriores correctamente y de que las versiones de compilación correctas están presentes.Ensure that you completed all the previous steps correctly and the correct build versions are present.

  5. Seleccione Ejecutar > la depuración de inicio para depurar el proceso.Select Run > Start Debugging to debug the process. Si se le pide que seleccione un entorno, seleccione .net Core.If you're prompted to select an environment, select .NET core.

Normalmente, el depurador de .net Core se inicia en ' ' https://localhost:5001 . To view your test key, go to https://localhost:5001 ' y se anexa una barra diagonal (/) y el nombre de la clave.The .NET core debugger typically launches to ``https://localhost:5001. To view your test key, go to https://localhost:5001` and append a forward slash (/) and the name of your key. Por ejemplo:For example:

https://localhost:5001/TestKey1

La clave debe mostrarse en formato JSON.The key should display in JSON format.

La configuración se ha completado.Your setup is now complete. Antes de publicar el almacén de claves, en appsettings.jsen la configuración de JwtAudience, asegúrese de que el valor para hostname coincide exactamente con el nombre de host del servicio de la aplicación.Before you publish the keystore, in appsettings.json, for the JwtAudience setting, ensure the value for hostname exactly matches your App Service host name. Puede que lo haya cambiado a localhost para solucionar los problemas de la compilación.You may have changed it to localhost to troubleshoot the build.

Publicar el almacén de clavesPublish the key store

Para publicar el almacén de claves, debe crear una instancia de Azure App Service para hospedar la implementación de DKE.To publish the key store, you'll create an Azure App Service instance to host your DKE deployment. A continuación, publicará las claves generadas en Azure.Next, you'll publish your generated keys to Azure.

Para crear una instancia de la aplicación Web de Azure para hospedar la implementación de DKETo create an Azure Web App instance to host your DKE deployment

  1. En el explorador, inicie sesión en el portal de Microsoft Azurey vaya a App Services > Add.In your browser, sign in to the Microsoft Azure portal, and go to App Services > Add.

  2. Seleccione su suscripción y grupo de recursos y defina los detalles de la instancia.Select your subscription and resource group and define your instance details.

    • Escriba el nombre de host del equipo en el que desea instalar el servicio DKE.Enter the hostname of the computer where you want to install the DKE service. Asegúrese de que es el mismo nombre que el definido para la configuración JwtAudience en el appsettings.jsen el archivo.Make sure it's the same name as the one defined for the JwtAudience setting in the appsettings.json file. El valor que se proporciona para el nombre también es WebAppInstanceName.The value you provide for the name is also the WebAppInstanceName.

    • Para publicar, seleccionar códigoy, para pila en tiempo de ejecución, seleccione .net Core 3,1.For Publish, select code, and for Runtime stack, select .NET Core 3.1.

    Por ejemplo:For example:

    Agregar el servicio de aplicaciones

  3. En la parte inferior de la página, seleccione revisar + creary, a continuación, seleccione Agregar.At the bottom of the page, select Review + create, and then select Add.

  4. Realice una de las siguientes acciones para publicar las claves generadas en Azure:Do one of the following to publish your generated keys to Azure:

    Nota

    Puede que prefiera otros métodos para implementar las claves.You may prefer other methods to deploy your keys. Seleccione el método que mejor se adapte a su organización.Select the method that works best for your organization.

    Sugerencia

    La publicación a través de Visual Studio y a un sistema local se describe en la documentación de ASP .net.Publishing via Visual Studio and to an on-premises system is described in the ASP .NET documentation. Si usa uno de estos métodos, abra las instrucciones en una pestaña independiente para que pueda volver fácilmente cuando termine.If you use one of these methods, open the instructions in a separate tab so that you can return here easily when you're done.

Publicar a través de ZipDeployUIPublish via ZipDeployUI

  1. Vaya a https://<WebAppInstanceName>.scm.azurewebsites.net/ZipDeployUI.Go to https://<WebAppInstanceName>.scm.azurewebsites.net/ZipDeployUI.

    Por ejemplo: https://customerkeystoreforpublicpreview.scm.azurewebsites.net/ZipDeployUIFor example: https://customerkeystoreforpublicpreview.scm.azurewebsites.net/ZipDeployUI

  2. En el código base del almacén de claves, vaya a la carpeta Customer-Key-store\src\customer-Key-Store y compruebe que esta carpeta contiene el archivo customerkeystore. csproj .In the codebase for the key store, go to the customer-key-store\src\customer-key-store folder, and verify that this folder contains the customerkeystore.csproj file.

  3. Ejecutar: publicación dotnetRun: dotnet publish

    La ventana resultados muestra el directorio en el que se ha implementado la publicación.The output window displays the directory where the publish was deployed.

    Por ejemplo: customer-key-store\src\customer-key-store\bin\Debug\netcoreapp3.1\publish\For example: customer-key-store\src\customer-key-store\bin\Debug\netcoreapp3.1\publish\

  4. Enviar todos los archivos del directorio de publicación a un archivo. zip.Send all files in the publish directory to a .zip file. Al crear el archivo. zip, asegúrese de que todos los archivos del directorio se encuentran en el nivel raíz del archivo. zip.When creating the .zip file, make sure that all files in the directory are at the root level of the .zip file.

  5. Arrastre y coloque el archivo. zip que ha creado en el sitio de ZipDeployUI que ha abierto anteriormente.Drag and drop the .zip file you create to the ZipDeployUI site you opened above. Por ejemplo: https://customerkeystoreforpublicpreview.scm.azurewebsites.net/ZipDeployUIFor example: https://customerkeystoreforpublicpreview.scm.azurewebsites.net/ZipDeployUI

DKE está implementado y puede ir a las claves de prueba que ha creado.DKE is deployed and you can browse to the test keys you've created. Siga validando la implementación a continuación.Continue to Validate your deployment below.

Publicar mediante FTPPublish via FTP

  1. Conéctese al App Service que creó anteriormente.Connect to the App Service you created above.

    En el explorador, vaya a: Azure portal > App Service > Deployment Center > manual de implementaciónde > FTP > Dashboard.In your browser, go to: Azure portal > App Service > Deployment Center > Manual Deployment > FTP > Dashboard.

  2. Copie las cadenas de conexión que se muestran en un archivo local.Copy the connection strings displayed to a local file. Usaremos estas cadenas para conectar con el servicio de la aplicación web y cargar archivos a través de FTP.You'll use these strings to connect to the Web App Service and upload files via FTP.

    Por ejemplo:For example:

    Copiar cadenas de conexión del panel FTP

  3. En el código base para el almacenamiento de claves, vaya al directorio Customer-Key-store\src\customer-Key-Store.In the codebase for the key storage, go to the customer-key-store\src\customer-key-store directory.

  4. Compruebe que este directorio contiene el archivo customerkeystore. csproj .Verify that this directory contains the customerkeystore.csproj file.

  5. Ejecutar: publicación dotnetRun: dotnet publish

    El resultado contiene el directorio en el que se ha implementado la publicación.The output contains the directory where the publish was deployed.

    Por ejemplo: customer-key-store\src\customer-key-store\bin\Debug\netcoreapp3.1\publish\For example: customer-key-store\src\customer-key-store\bin\Debug\netcoreapp3.1\publish\

  6. Enviar todos los archivos del directorio de publicación a un archivo zip.Send all files in the publish directory to a zip file. Al crear el archivo. zip, asegúrese de que todos los archivos del directorio se encuentran en el nivel raíz del archivo. zip.When creating the .zip file, make sure that all files in the directory are at the root level of the .zip file.

  7. Desde el cliente FTP, use la información de conexión que copió para conectarse a su servicio de aplicaciones.From your FTP client, use the connection information you copied to connect to your App Service. Cargue el archivo. zip que creó en el paso anterior en el directorio raíz de la aplicación Web.Upload the .zip file you created in the previous step to the root directory of your Web App.

DKE está implementado y puede desplazarse a las claves de prueba que ha creado.DKE is deployed and you can browse to the test keys you'd created. A continuación, valide la implementación.Next, Validate your deployment.

Validar la implementaciónValidate your deployment

Después de implementar DKE con uno de los métodos descritos anteriormente, valide la implementación y la configuración del almacén de claves.After deploying DKE using one of the methods described above, validate the deployment and the key store settings.

RealizarRun:

src\customer-key-store\scripts\key_store_tester.ps1 mykeystoreurl/mykeysrc\customer-key-store\scripts\key_store_tester.ps1 mykeystoreurl/mykey

Por ejemplo:For example:

key_store_tester.ps1https://mycustomerkeystore.com/mykeykey_store_tester.ps1 https://mycustomerkeystore.com/mykey

Asegúrese de que no aparecen errores en el resultado.Ensure that no errors appear in the output. Cuando esté listo, Registre el almacén de claves.When you're ready, register your key store.

Registrar el almacén de clavesRegister your key store

Los siguientes pasos le permiten registrar el almacén de claves.The following steps enable you to register your key store. Registrar el almacén de claves es el último paso para implementar DKE antes de empezar a crear etiquetas.Registering your key store is the last step in deploying DKE before you can start creating labels.

Para registrar el almacén de claves:To register your key store:

  1. En el explorador, abra el portal de Microsoft Azurey vaya a todos los registros de la aplicación de > identidad de servicios > App Registrations.In your browser, open the Microsoft Azure portal, and go to All Services > Identity > App Registrations.

  2. Seleccione nuevo registroy escriba un nombre significativo.Select New registration, and enter a meaningful name.

  3. Seleccione un tipo de cuenta en las opciones que se muestran.Select an account type from the options displayed.

    Si está usando Microsoft Azure con un dominio no personalizado, como onmicrosoft.com, seleccione cuentas solo en este directorio de organización (solo para el inquilino único de Microsoft).If you're using Microsoft Azure with a non-custom domain, such as onmicrosoft.com, select Accounts in this organizational directory only (Microsoft only - Single tenant).

    Por ejemplo:For example:

    Nuevo registro de la aplicación

  4. En la parte inferior de la página, seleccione registrar para crear el nuevo registro de la aplicación.At the bottom of the page, select Register to create the new App Registration.

  5. En el registro de la nueva aplicación, en el panel izquierdo, en administrar, seleccione autenticación.In your new App Registration, in the left pane, under Manage, select Authentication.

  6. Seleccione Agregar una plataforma.Select Add a platform.

  7. En el menú emergente configurar plataformas , seleccione Web.On the Configure platforms popup, select Web.

  8. En URI de redireccionamiento, escriba el URI del servicio de cifrado de doble clave.Under Redirect URIs, enter the URI of your double key encryption service. Escriba la dirección URL del servicio de aplicaciones, incluidos el nombre de host y el dominio.Enter the App Service URL, including both the hostname and domain.

    Por ejemplo: https://mycustomerkeystoretest.comFor example: https://mycustomerkeystoretest.com

    • La dirección URL que especifique debe coincidir con el nombre de host en el que se ha implementado el almacén de claves.The URL you enter must match the hostname where your key store is deployed.
    • Si está probando localmente con Visual Studio, use https://localhost:5001 .If you're testing locally with Visual Studio, use https://localhost:5001.
    • En todos los casos, el esquema debe ser https.In all cases, the scheme must be https.

    Asegúrese de que el nombre de host coincida exactamente con el nombre de host de App Service.Ensure the hostname exactly matches your App Service host name. Puede que lo haya cambiado a localhost para solucionar los problemas de la compilación.You may have changed it to localhost to troubleshoot the build. En appsettings.jsactivado, este valor es el nombre de host que se establece para JwtAudience .In appsettings.json, this value is the hostname you set for JwtAudience.

  9. En concesión implícita, active la casilla de verificación tokens de identificador .Under Implicit grant, select the ID tokens checkbox.

  10. Seleccione Guardar para guardar los cambios.Select Save to save your changes.

  11. En el panel izquierdo, seleccione exponer una APIy, a continuación, junto a URI de identificador de aplicación, seleccione establecer.On the left pane, select Expose an API, then next to Application ID URI, select Set.

  12. Aún en la página exponer una API , en el área ámbitos definidos por esta API , seleccione Agregar un ámbito.Still on the Expose an API page, in the Scopes defined by this API area, select Add a scope. En el nuevo ámbito:In the new scope:

    1. Defina el nombre del ámbito como user_impersonation.Define the scope name as user_impersonation.

    2. Seleccione a los administradores y usuarios que pueden conceder consentimiento.Select the administrators and users who can consent.

    3. Defina los valores restantes necesarios.Define any remaining values required.

    4. Seleccione Agregar ámbito.Select Add scope.

    Seleccione Guardar en la parte superior para guardar los cambios.Select Save at the top to save your changes.

  13. Aún en la página exponer una API , en el área aplicaciones cliente autorizadas , seleccione Agregar una aplicación cliente.Still on the Expose an API page, in the Authorized client applications area, select Add a client application.

    En la nueva aplicación cliente:In the new client application:

    1. Defina el identificador de cliente como d3590ed6-52b3-4102-AEFF-aad2292ab01c.Define the Client ID as d3590ed6-52b3-4102-aeff-aad2292ab01c. Este valor es el identificador del cliente de Microsoft Office y permite a Office obtener un token de acceso para su almacén de claves.This value is the Microsoft Office client ID, and enables Office to obtain an access token for your key store.

    2. En ámbitos autorizados, seleccione el ámbito de la user_impersonation .Under Authorized scopes, select the user_impersonation scope.

    3. Seleccione Agregar aplicación.Select Add application.

    4. Seleccione Guardar en la parte superior para guardar los cambios.Select Save at the top to save your changes.

El almacén de claves de DKE está registrado.Your DKE key store is now registered. Para continuar, cree etiquetas con DKE.Continue by creating labels using DKE.

Crear etiquetas con DKECreate labels using DKE

En el centro de cumplimiento de Microsoft 365, cree una nueva etiqueta de confidencialidad y aplique el cifrado como lo haría en otro caso.In the Microsoft 365 compliance center, create a new sensitivity label and apply encryption as you would otherwise. Seleccione usar cifrado doble de clave y escriba la dirección URL del punto de conexión para la clave.Select Use Double Key Encryption and enter the endpoint URL for your key.

Por ejemplo:For example:

Seleccione usar el cifrado de doble clave en el centro de cumplimiento de Microsoft 365

Las etiquetas de DKE que agregue empezarán a aparecer para los usuarios en las versiones más recientes de las aplicaciones de Microsoft 365 para empresas.Any DKE labels you add will start appearing for users in the latest versions of Microsoft 365 Apps for enterprise.

Nota

Los clientes pueden tardar hasta 24 horas en actualizarse con las nuevas etiquetas.It may take up to 24 hours for the clients to refresh with the new labels.

Habilitar DKE en el clienteEnable DKE in your client

Para habilitar DKE para el cliente, agregue las siguientes claves del registro:Enable DKE for your client by adding the following registry keys:

    [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\MSIPC\flighting]
    "DoubleKeyProtection"=dword:00000001

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSIPC\flighting]
    "DoubleKeyProtection"=dword:00000001