简单证书注册协议 (SCEP)
简单证书注册协议 (SCEP) 是用于证书管理的协议标准。SCEP 主要用于基于证书的身份验证,通过证书进行如 Wi-Fi、VPN 等服务的访问,以及通过加密保障电子邮件安全。
基于证书的身份验证的主要优势有:
- 零用户干预,用户通过证书进行身份验证。
- 安全的网络通信,数据通过证书加密和验证。
但是,手动分发证书对于大型组织的 IT 管理员来说是一项繁琐的任务。SCEP 帮助网络管理员轻松在设备上安装证书,为大型组织提供一种简化且可扩展的证书管理方法。证书与 SCEP 的区别在于,SCEP 策略用于向设备分发客户端证书,而证书策略则用于向设备分发 CA 证书。
先决条件
配置证书模板
- 点击 开始 菜单,选择 运行,输入 mmc 并点击确定。
- 点击 文件 并选择 添加/删除管理单元...。选择 证书模板,点击 添加 ,然后点击 确定.
- 右键点击 证书模板 并选择 管理.
- 点击 用户 并选择 复制模板.
- 指定一个 模板显示名称 并点击保存 确定.
- 点击 扩展,选择 应用程序策略。点击 编辑 并选择 客户端身份验证,将其添加到应用程序策略中。
- 点击 加密 并指定 最小密钥大小。推荐的密钥大小为 2048,因为它增强了安全性。该密钥大小需在 MDM 中配置 SCEP 时指定。请注意在配置 SCEP 的 MDM 服务器时需要指定的最小密钥大小。
- 点击 安全 并选择应用该策略的组。确保 注册 是所选域的允许权限。
- 点击 主体名称 并选择 在请求中提供以在证书请求中指定主体名称。







将证书模板映射到 SCEP
- 在 Microsoft 管理控制台 (MMC) 中添加证书颁发机构作为管理单元。
- 展开 证书颁发机构 并右键点击 证书模板。点击 新建 并选择 要发布的证书模板.
- 选择之前创建的证书模板,点击确定。
- 点击 开始 菜单,选择 运行,输入 regedit 并点击确定。
- 展开 HKEY_LOCAL_MACHINE -> SOFTWARE -> Microsoft -> Cryptography -> MSCEP。
- 右键点击 Encryption Template 并点击 修改.
- 指定创建的证书模板名称为 值数据。对 GeneralPurposeTemplate 和 SignatureTemplate重复相同操作。更改完成后重启服务器以生效。



若要更改 Microsoft NDES 使用的默认证书模板,需要更改 Windows 注册表值。


防止挑战密码过期
如果使用挑战密码(推荐),则需修改注册表值以防止挑战密码过期。
- 打开 regedit 并展开 HKEY_LOCAL_MACHINE -> SOFTWARE -> Microsoft -> Cryptography -> MSCEP -> UseSinglePassword。
- 右键点击 UseSinglePassword 并将 数据 的值修改为 1。

在 MDM 中配置 SCEP
- 主体值应为 LDAP DN 格式,如此处所示 这里.
- 您可以通过以下链接验证服务器详情,如注册挑战密码 https://<your-server>/CertSrv/mscep_admin 和 https://<Your-Server>/crtsrv/mscep/mscep.dll
- 允许 对运行 NDES 的账户对 HKEY_LOCAL_MACHINE\Microsoft\Cryptography\MSCEP 注册表键拥有完全控制权限。仅当您安装了 NDES 的 KB959193 热修复时,此步骤才需执行。 如果无法连接到 SCEP 服务器,请尝试在设备上访问格式为.
- https://<your-server>/CertSrv/mscep/mscep.dll 的 SCEP 服务器 URL。如果无法访问该 URL,请尝试连接本地 WiFi 后访问并分发配置文件。 配置文件描述
配置文件规范
| 描述 | SCEP 配置名称 |
|---|---|
| 用户定义的配置名称,用于在其他配置(如 Wi-Fi、VPN 等)中引用此配置。 | SCEP 设置 |
| 服务器 URL | |
| 在设备中指定用于获取证书的 URL。如果 SCEP 服务器在组织网络内且未暴露于外部网络,提供 HTTP 服务器 URL。证书通过此 URL 请求。 | 对于 NDES ,服务器 URL 格式为:主体 的 SCEP 服务器 URL。如果无法访问该 URL,请尝试连接本地 WiFi 后访问并分发配置文件。 |
| 指定用于映射设备中相应详情的参数(%username%,%email%,%domainname%,%devicename%)。 | 指纹(哈希值) |
| 如果服务器 URL 指定为 HTTPS,则指纹用于验证 CA 身份,保障设备与 CA 之间的通信安全。指纹值通常可在 | https:// /CertSrv/mscep_admin |
| 密钥用途 | 指定密钥是用于数字签名、密钥加密还是两者皆用于。 |
| 主体备选名称类型 | >指定备选细节(RFC 822 名称、DNS 名称、URI 和 UPN)。 >RFC 822 名称:电子邮件地址的正式定义。 示例:user_name@domain.com >域名系统(DNS) 名称:指系统、服务及其它资源使用的通用名称法。 示例:server-name.domain.com >统一资源标识符(URI):用于标识资源的命名系统,包含 URL 和 URN。 示例:ftp://domain.com/user.txt >用户主体名称(UPN):Active Directory 中的系统用户名,格式类似电子邮件。 示例:user_name@domain.com |
| 主体备选名称值 (仅当配置了主体备选名称时可配置) | 指定备选名称类型的值。 |
| 最大失败尝试次数 | 从 CA 获取证书的最大尝试次数。 |
| 尝试间隔时间 | 后续尝试获取证书前的等待时间。 |
| 挑战类型 | 由 CA 提供的预共享密钥,增加额外安全层。 |
| 注册挑战密码 (仅当挑战类型配置为静态时可指定) | 提供要使用的挑战密码。挑战密码的识别方法如上所述 这里. |
| 密钥大小 | 指定密钥是1024位还是2048位。 |
跳转到