Evento
Construír aplicacións e axentes de IA
Mar 17, 9 PM - Mar 21, 10 AM
Únete á serie de encontros para construír solucións de IA escalables baseadas en casos de uso do mundo real con compañeiros desenvolvedores e expertos.
Rexistrar agoraEste explorador xa non é compatible.
Actualice a Microsoft Edge para dispoñer das funcionalidades máis recentes, as actualizacións de seguranza e a asistencia técnica.
Un chip módulo de plataforma segura (TPM) es un procesador criptográfico seguro diseñado para llevar a cabo operaciones criptográficas. Esta tecnología está diseñada para proporcionar funciones relacionadas con la seguridad basadas en el hardware. Puede habilitar o deshabilitar la característica de acceso directo de TPM que permite que la máquina virtual de AKS Edge Essentials use el TPM del sistema operativo host de Windows. La característica de acceso directo de TPM proporciona acceso de solo lectura a las claves criptográficas almacenadas dentro del TPM.
En este artículo se describe cómo desarrollar código de ejemplo en C# para leer las claves criptográficas almacenadas dentro del TPM discreto del dispositivo.
Nota
El acceso a las claves de TPM está limitado a solo lectura. Si desea escribir claves en el TPM, debe hacerlo desde el sistema operativo host de Windows.
machines
sección , establezca el Machine.LinuxNode.TpmPassthrough
valor True
en . Solo puede habilitar o deshabilitar el acceso de TPM al crear una nueva implementación. Una vez establecida la marca, no se puede cambiar a menos que quite la implementación o el nodo.Advertencia
La habilitación del acceso directo de TPM a la máquina virtual puede aumentar los riesgos de seguridad.
En los pasos siguientes se muestra cómo crear un archivo ejecutable de ejemplo para acceder a un índice discreto de TPM (dTPM) desde la máquina virtual CBL-Mariner.
Apertura de Visual Studio 2019 o 2022 Seleccione Crear un nuevo proyecto. Seleccione Aplicación de consola en la lista de plantillas y, a continuación, seleccione Siguiente:
Escriba los campos Nombre del proyecto, Ubicación y Nombre de la solución y, a continuación, seleccione Siguiente.
Elija una plataforma de destino Se prefiere la versión más reciente de compatibilidad a largo plazo (LTS) de .NET 6.0. Después de elegir una plataforma de destino, seleccione Crear. Visual Studio crea una nueva solución de aplicación de consola.
En el Explorador de soluciones, haga clic con el botón derecho en el nombre del proyecto y seleccione Administrar paquetes NuGet….
Seleccione Examinar y busque Microsoft.TSS. Para obtener más información sobre este paquete, consulte Microsoft.TSS. Elija el paquete Microsoft.TSS de la lista y, a continuación, seleccione Instalar.
Edite el archivo Program.cs y reemplace el contenido por el código de ejemplo tpm-read-nv: Program.cs.
Seleccione Compilar solución de > compilación para compilar el proyecto. Compruebe que la compilación se ha realizado correctamente.
En el Explorador de soluciones, haga clic con el botón derecho en el proyecto y seleccione Publicar.
En el Asistente para publicación, elija Carpeta de carpetas>. Seleccione Examinar y, a continuación, elija una ubicación de salida para que se genere el archivo ejecutable. Seleccione Finalizar. Una vez creado el perfil de publicación, seleccione Cerrar.
En la pestaña Publicar , seleccione Mostrar toda la configuración. Cambie la siguiente configuración y, a continuación, seleccione Guardar:
Seleccione Publicar y espere a que se cree el archivo ejecutable.
Si la publicación se realiza correctamente, debería ver los nuevos archivos creados en la carpeta de salida.
Una vez creado el archivo ejecutable y los archivos de dependencia, copie la carpeta en la máquina virtual CBL-Mariner. Los pasos siguientes muestran cómo copiar todos los archivos necesarios y cómo ejecutar el ejecutable dentro de la máquina virtual CBL-Mariner.
Abra una sesión de PowerShell con privilegios elevados.
Cambie el directorio a la carpeta primaria que contiene los archivos publicados.
Por ejemplo, si los archivos publicados están en la carpeta TPM del directorio C:\Users<User>, puede usar el siguiente comando para cambiar a la carpeta primaria:
cd "C:\Users\<User>"
Modifique el archivo TPMRead.runtimeconfig.json para evitar un problema de globalización de ICU dentro de la máquina virtual Linux:
Abra TPMRead.runtimeconfig.json.
Agregue la siguiente línea dentro de la configProperties
sección:
"System.Globalization.Invariant": true
Cree un archivo tar con todos los archivos creados en los pasos anteriores.
Por ejemplo, si tiene todos los archivos en la carpeta TPM, puede usar el siguiente comando para crear el archivo TPM.tar :
tar -cvzf TPM.tar ".\TPM"
Una vez creado correctamente el archivo TPM.tar , use el Copy-AksEdgeNodeFile
cmdlet para copiar el archivo tar en la máquina virtual CBL-Mariner. Por ejemplo, si tiene el nombre de archivo tar TPM.tar en el directorio C:\Users<User>, puede usar el siguiente comando para copiar en la máquina virtual CBL-Mariner:
Copy-AksEdgeNodeFile -fromFile "C:\Users\<User>\TPM.tar" -toFile "/home/aksedge-user/" -pushFile
Ejecute el siguiente comando para extraer todo el contenido del archivo tar :
Invoke-AksEdgeNodeCommand -NodeType "Linux" -command "tar -xvzf /home/aksedge-user/TPM.tar"
Después de la extracción, agregue el permiso ejecutable al archivo ejecutable principal. Por ejemplo, si el nombre del proyecto era TPMRead, el archivo ejecutable principal se denomina TPMRead. Ejecute el siguiente comando para que sea ejecutable:
Invoke-AksEdgeNodeCommand -NodeType "Linux" -command "chmod +x /home/aksedge-user/TPM/TPMRead"
El último paso es ejecutar el archivo ejecutable. Por ejemplo, si el nombre del proyecto es TPMRead, ejecute el siguiente comando:
Invoke-AksEdgeNodeCommand -NodeType "Linux" -command "/home/aksedge-user/TPM/TPMRead"
Debería ver un resultado similar al siguiente:
Evento
Construír aplicacións e axentes de IA
Mar 17, 9 PM - Mar 21, 10 AM
Únete á serie de encontros para construír solucións de IA escalables baseadas en casos de uso do mundo real con compañeiros desenvolvedores e expertos.
Rexistrar agoraFormación
Certificación
Microsoft Certified: Identity and Access Administrator Associate - Certifications
Muestre las características de Microsoft Entra ID para modernizar las soluciones de identidad, implementar soluciones híbridas e implementar la gobernanza de identidades.