# 更新桌面安全启动证书
#### 操作场景
[制作用户桌面镜像](https://support.huaweicloud.com/usermanual-workspace/workspace_06_1009.html)章节制作的私有镜像完成了驱动、软件、系统环境的标准化配置，并通过API接口成功启用安全启动，然而，该镜像中的数字证书仍为2011版本，当证书吊销或失效时可能会导致发放的桌面异常，需要升级至2023版本。2023版本证书不支持直接导入至初始创建的镜像中，其更新必须基于已启用安全启动且携带2011版本证书的原始镜像进行增量刷新，需执行如下操作流程：
1. 使用[制作用户桌面镜像](https://support.huaweicloud.com/usermanual-workspace/workspace_06_1009.html)章节制作的镜像新发放一台弹性云服务器。
2. 在弹性云服务器中完成2023版本证书的更新。
3. 吊销弹性云服务器中原2011版本证书。
4. 将弹性云服务器创建为镜像。
5. 调用接口开启安全启动。
 
 #### 前提条件
**获取2023版本证书：**
- 获取平台密钥：在[获取证书](https://learn.microsoft.com/zh-cn/windows-hardware/manufacture/desktop/windows-secure-boot-key-creation-and-management-guidance?view=windows-11#15-keys-required-for-secure-boot-on-all-pcs)页面中的"PKpub"参数右侧单击下载"windows oem devices pk.cer"密钥。
- 获取密钥交换密钥： 在[获取证书](https://learn.microsoft.com/zh-cn/windows-hardware/manufacture/desktop/windows-secure-boot-key-creation-and-management-guidance?view=windows-11#15-keys-required-for-secure-boot-on-all-pcs)页面中的"Microsoft Corporation KEK 2K CA 2023"参数右侧单击下载"microsoft corporation kek 2k ca 2023.crt"密钥。
- 获取签名数据库密钥：在[获取证书](https://learn.microsoft.com/zh-cn/windows-hardware/manufacture/desktop/windows-secure-boot-key-creation-and-management-guidance?view=windows-11#15-keys-required-for-secure-boot-on-all-pcs)页面中的"Windows UEFI CA 2023"参数右侧单击下载"windows uefi ca 2023.crt"密钥。
 
#### 限制与约束
仅如下操作系统版本支持：
- Windows 11 23H2企业版
- Windows 11 24H2专业版
- Windows 11 24H2企业版
- Windows 11 企业版 LTSC 2024
 
#### 发放弹性云服务器
1. 登录管理控制台。
2. 单击管理控制台左上方"![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675125592.png)"，依次选择" 计算 \> 镜像服务"。
   
   进入"镜像服务"页面。
   
   
3. 单击"私有镜像"页签，进入对应的镜像列表页面。
4. 在[制作用户桌面镜像](https://support.huaweicloud.com/usermanual-workspace/workspace_06_1009.html)章节制作的镜像所在行的"操作"列下，单击"申请服务器"。
5. 创建云服务器的详细操作请参见"[自定义购买ECS](https://support.huaweicloud.com/usermanual-ecs/ecs_03_7002.html)"。
   
   ![](https://support.huaweicloud.com/usermanual-workspace/public_sys-resources/note_3.0-zh-cn.png)
   - 发放弹性云服务器时规格请选择S7t或Ac8。
   
   - 发放弹性云服务器过程中，请勾选可信系统下的"安全启动"和"TPM"。 ![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002704845545.png)
     
    
   
   
 
#### 在云服务器中更新2023版本证书
**更新DB证书**
将"Windows UEFI CA 2023"证书添加到 UEFI"安全启动签名数据库"(DB)。 通过将此证书添加到数据库，设备固件将会信任由此证书签名的启动应用程序。
1. 通过账号密码登录弹性云服务器。
2. 分别执行如下命令更新DB证书。 
   1. 在云服务器中单击"![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675125600.png)"，搜索"命令提示符"，右键单击"以管理员身份运行"，打开命令提示行窗口。
   
   
   执行命令：**reg add HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Secureboot /v AvailableUpdates /t REG_DWORD /d 0x40 /f**
   2. 在云服务器中单击"![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675285454.png)"，搜索"Windows PowerShell"，右键单击"以管理员身份运行"，进入Windows PowerShell运行窗口。
   
   
   执行命令：**Start-ScheduledTask -TaskName "\\Microsoft\\Windows\\PI\\Secure-Boot-Update"**
   3. 在"Windows PowerShell"运行窗口中执行如下命令查看DB证书是否更新。
   
   
   **\[System.Text.Encoding\]::ASCII.GetString((Get-SecureBootUEFI db).bytes) -match 'Windows UEFI CA 2023'**
   *结果返回为"**True**"说明数据库已成功更新。*
   4. 重启云服务器。
   
   
   
   
**更新设备上的启动管理器**
在设备上安装使用"Windows UEFI CA 2023"证书签名的启动管理器应用程序。
1. 在云服务器中单击"![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002705005373.png)"，搜索"命令提示符"，右键单击"以管理员身份运行"，打开命令提示行窗口。
   
   执行命令**：reg add HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Secureboot /v AvailableUpdates /t REG_DWORD /d 0x100 /f**
   
   
2. 在云服务器中单击"![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675285450.png)"，搜索"Windows PowerShell"，右键单击"以管理员身份运行"，进入Windows PowerShell运行窗口。
   
   执行命令**：Start-ScheduledTask -TaskName "\\Microsoft\\Windows\\PI\\Secure-Boot-Update"**
   
   

3. 重启云服务器。
**检查2023证书是否已更新**
检查bootmgfw.efi"文件是否由"Windows UEFI CA 2023"证书签名。
1. 在云服务器中单击"![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675125588.png)"，搜索"命令提示符"，单击"以管理员身份运行"，打开命令提示行窗口。
2. 以管理员身份装载 EFI 分区，以做好检查准备。 
   执行命令：**mountvol s: /s**
   
   
3. 将bootmgfw.efi配置文件拷贝至C盘，以便查看。 
   执行命令：**copy S:\\EFI\\Microsoft\\Boot\\bootmgfw.efi c:\\bootmgfw_2023.efi**
   
   
4. 进入云服务器的"C"盘，右键单击"bootmgfw_2023.efi"文件，选择"属性"，然后选择 "数字签名" 选项卡。
5. 在"嵌入式签名"下选中已有签名，单击"详细信息"，然后单击"查看证书（V）"。
6. 在弹出的证书详情页面单击"证书路径"页签，如下所示。 
   ![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675285438.png)
   ![](https://support.huaweicloud.com/usermanual-workspace/public_sys-resources/note_3.0-zh-cn.png)
   如查看的证书非2023版本，请重新执行[1]、[2]、[1]\~[5]步骤。
   
   
 
#### 吊销2011证书
![](https://support.huaweicloud.com/usermanual-workspace/public_sys-resources/note_3.0-zh-cn.png)
吊销2011证书之后，由于之前的镜像校验配置的证书为2011，重启之后云服务器会无法正常启动。
1. 将"Windows 生产 PCA 2011"证书添加到安全启动 UEFI 禁止列表 (DBX)。 
   分别执行如下命令：
   1. 在云服务器中单击"![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002704845535.png)"，搜索"命令提示符"，右键单击"以管理员身份运行"，打开命令提示行窗口。
   
   
   执行命令：**reg add HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Secureboot /v AvailableUpdates /t REG_DWORD /d 0x80 /f**
   2. 在云服务器中单击"![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002705005381.png)"，搜索"Windows PowerShell"，右键单击"以管理员身份运行"，进入Windows PowerShell运行窗口。
   
   
   执行命令：**Start-ScheduledTask -TaskName "\\Microsoft\\Windows\\PI\\Secure-Boot-Update"**
   
   
2. 在云服务器下方菜单栏，右键单击![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002705005375.png)，选择"运行"，输入"eventvwr.msc"，按回车键。
3. 在事件查看器页面依次单击"Windows日志 \> 系统"。
4. 在事件ID中查看"1037"事件，验证是否已成功应用安装和吊销列表。 
   ![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675285456.png)
   
   
**删除临时admin** **用户**
![](https://support.huaweicloud.com/usermanual-workspace/public_sys-resources/note_3.0-zh-cn.png)
- 临时用户为[16](https://support.huaweicloud.com/usermanual-workspace/workspace_06_1008.html#workspace_06_1008__zh-cn_topic_0000002313623581_zh-cn_topic_0288222992_li16714415114512)章节中创建的用户。
- Windows系统的本地用户可以登录使用该镜像创建的每台Windows虚拟机，出于安全考虑，建议根据实际需求删除Windows系统中不必要的本地用户。
 
1. 在云服务器下方菜单栏，右键单击![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675125606.png)，选择"运行"，输入"sysdm.cpl"，按回车键，
   
   弹出"系统属性"窗口。
   
   

2. 在"高级"页签，在"用户配置文件"区域，单击"设置"。 
   ![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675125586.png)
   
   
3. 在"用户配置文件"页面，选中待删除的用户名的配置文件，单击"删除"。
4. 单击"是"。
5. 在云服务器下方菜单栏，右键单击![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002705005383.png)，选择"运行"，输入"compmgmt.msc"，按回车键，
   
   弹出"计算机管理"窗口。
   
   
6. 在导航树中，选择"本地用户和组 \> 用户"。
7. 在右边窗格中，右键单击[16](https://support.huaweicloud.com/usermanual-workspace/workspace_06_1008.html#workspace_06_1008__zh-cn_topic_0000002313623581_zh-cn_topic_0288222992_li16714415114512)中创建的admin临时用户，选择"删除"，单击"是"。
8. 关闭"计算机管理"窗口。
 
 #### 制作镜像
1. 在弹性云服务器列表页面，在待创建镜像的云服务器操作列"更多 \> 镜像/备份 \> 创建镜像"。
2. 镜像创建完成后，单击左侧导航栏的"镜像服务"查看。
 
#### 为镜像配置2023版本证书和安全启动
1. 参考[前提条件]中获取2023版本证书。
2. 在本地Windows PC的开始菜单搜索"Windows PowerShell"，单击"以管理员身份运行"，进入Windows PowerShell运行窗口。
3. 执行如下命令将[1]获取的证书转换成Base64格式。
   
   - 将"windows oem devices pk.cer"证书转换成Base64格式。 **\[System.Convert\]::ToBase64String(\[System.IO.File\]::ReadAllBytes(** "*windows oem devices pk.cer证书存放路径* "**)) \| Out-File -FilePath** "*windows oem devices pk.base64* *证书生成路径* "**-NoNewline**
     
   
   - 将"microsoft corporation kek 2k ca 2023.crt"证书转换成Base64格式。 **\[System.Convert\]::ToBase64String(\[System.IO.File\]::ReadAllBytes(** "*microsoft corporation kek 2k ca 2023.crt* *证书存放路径* "**)) \| Out-File -FilePath** "*microsoft corporation kek 2k ca 2023.base64* *证书生成路径* "**-NoNewline**
     
   
   - 将"windows uefi ca 2023.crt"证书转换成Base64格式。 **\[System.Convert\]::ToBase64String(\[System.IO.File\]::ReadAllBytes(** *"windows uefi ca 2023.crt证书存放路径"* **)) \| Out-File -FilePath "** *windows uefi ca 2023.base64证书生成路径* **" -NoNewline**
     
   
   
   ![](https://support.huaweicloud.com/usermanual-workspace/public_sys-resources/note_3.0-zh-cn.png)
   **以上命令中的3个证书存放路径和3个证书的生成路径需要根据实际情况替换。**
   以"windows oem devices pk.cer"证书为例：
   - 证书存放路径示例："*C:\\* *windows oem devices pk.cer*"。
   
   - 证书生成路径示例："*C:\\* *windows oem devices pk.base64*"。
    
   
   
4. 调用接口，开启安全启动和VTPM。 
   1. 获取[制作镜像]章节中的image_id，在弹性云服务器页面左侧导航栏单击"镜像服务"。
   
   2. 在镜像服务页面，获取镜像ID，如[图1]所示。
      图1镜像ID   
      ![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002675125594.png) 
   
   3. 按照以下模板，根据说明进行编辑后备用。
      以下参数取值需要进行替换：
      - $__platform_key替换为[3]中生成的"*windows oem devices pk.base64*"证书中的内容。
      
      - $__key_exchange_key替换为[3]中生成的"*microsoft corporation kek 2k ca 2023.base64*"证书中的内容。
      
      - $__signature_database替换为[3]中生成的"*windows uefi ca 2023.base64*"证书中的内容。
       
      拷贝[3]中密钥内容时，不拷贝首行"-----BEGIN CERTIFICATE-----"和末尾"-----END CERTIFICATE-----"。
      ```
      [
          {
          "op": "add",
          "path": "/__support_tpm",
          "value": "true"
      },{
          "op": "add",
          "path": "/__support_secure_boot",  
          "value": "true"
        },
        {
          "op": "add",
          "path": "/__platform_key",         
          "value": "$__platform_key"      
        },
        {
          "op": "add",
          "path": "/__key_exchange_key",
          "value": "$__key_exchange_key"   
        },
        {
          "op": "add",
          "path": "/__signature_database",
          "value": "$__signature_database"  
        }
      ]
      ```
      
   
   
   
   4. 通过[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/IMS/doc?api=GlanceUpdateImage)调用接口。
      1. 根据实际情况下拉选择"Region"。
      
      2. 输入image_id，镜像ID为[4.b]中获取的值。
      
      3. 单击"切换为文本输入"，并输入[4.c]中的编辑好的内容。
      
      4. 单击"调试"，如[图2]所示。
         图2调用接口   
         ![](https://support.huaweicloud.com/usermanual-workspace/zh-cn_image_0000002704845543.png) 
       
   
   
   
   
 
#### 后续操作
使用镜像在云桌面管理控制台发放桌面。
![](https://support.huaweicloud.com/usermanual-workspace/public_sys-resources/note_3.0-zh-cn.png)
云桌面支持定时定点创建桌面快照，创建桌面快照主要目的是为了实现数据的快速备份和恢复，当出现个人误操作、软件不兼容、系统崩溃或故障、软件冲突等问题时，通过快照恢复功能可以让您的桌面快速恢复到之前的状态，避免数据丢失和工作中断。
- 创建桌面快照请参考[定时创建快照](https://support.huaweicloud.com/usermanual-workspace/workspace_06_1014.html)章节。
- 恢复快照请参见[快照管理](https://support.huaweicloud.com/usermanual-workspace/workspace_06_1015.html)中恢复快照章节。
 
