ClientCertificateInstall 云解决方案提供商

Windows 预览体验成员的徽标。

重要提示

此云解决方案提供商包含一些正在开发中的设置,仅适用于 Windows Insider Preview 版本。 这些设置可能会发生更改,并且可能依赖于预览版中的其他功能或服务。

ClientCertificateInstall 配置服务提供程序使企业能够安装客户端证书。 客户端证书具有唯一 ID,即此配置的 [UniqueID]。 对于 SCEP 注册请求,每个客户端证书必须具有不同的 UniqueID。

注意

对于 PFX 证书安装和 SCEP 安装,SyncML 命令必须包装在原子命令中,以确保在配置所有设置之前不会触发注册执行。 “注册”命令必须是原子块中的最后一项。

以下列表显示了 ClientCertificateInstall 配置服务提供程序节点:

Device/PFXCertInstall

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall

PFX 证书安装是必需的。 对 PFX 证书相关设置进行分组的父节点。

描述框架属性:

属性名 属性值
格式 node
访问类型 “获取”

Device/PFXCertInstall/{UniqueID}

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}

PFX 证书安装是必需的。 用于区分不同证书安装请求的唯一 ID。

格式为 node。

在此节点上调用 Delete 应删除由相应 PFX Blob 安装的证书和密钥。

描述框架属性:

属性名 属性值
格式 node
访问类型 添加、删除、获取、替换
需要原子 True
动态节点命名 ServerGeneratedUniqueIdentifier

Device/PFXCertInstall/{UniqueID}/ContainerName

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/ContainerName

可选。

如果为上述节点) 选择了 NGC KSP, (指定 NGC 容器名称。 如果选择 NGC KSP 时未指定此节点,注册将失败。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、获取、替换

Device/PFXCertInstall/{UniqueID}/KeyLocation

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/KeyLocation

PFX 证书安装是必需的。 指示将私钥安装目标为的 KeyStorage 提供程序。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、获取、替换

允许的值:

描述
1 安装到 TPM(如果存在),如果不存在,则失败。
2 安装到 TPM(如果存在)。 如果不存在,则回退到软件。
3 安装到软件。
4 安装到Windows Hello 企业版 (以前称为 Microsoft Passport for Work) ,其名称已指定。

Device/PFXCertInstall/{UniqueID}/PFXCertBlob

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXCertBlob

必需。

CRYPT_DATA_BLOB 结构,其中包含具有导出和加密的证书和密钥的 PFX 数据包。 在此节点上添加将触发对 PFX 证书的添加。 这要求 UniqueID 下是 PFX 安装参数 (容器名称、KeyLocation、CertPassword、fKeyExportable) 的所有其他节点在调用之前都存在。 这还会将“状态”节点设置为操作的当前状态。

如果在此节点上调用了 Add,并且 Blob 已存在,则它将失败。 如果在此节点上调用 Replace,则会覆盖证书。

如果在此节点上为新的 PFX 调用 Add,则会添加证书。 如果在不存在时在此节点上调用 Replace,则此操作将失败。

换句话说,使用 Replace 或 Add 将导致覆盖旧证书或添加新证书的效果

描述框架属性:

属性名 属性值
格式 bin
访问类型 添加、获取、替换

Device/PFXCertInstall/{UniqueID}/PFXCertPassword

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXCertPassword

保护 PFX Blob 的密码。 如果 PFX 受密码保护,则这是必需的。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、获取、替换

Device/PFXCertInstall/{UniqueID}/PFXCertPasswordEncryptionStore

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXCertPasswordEncryptionStore

可选。

如果 PFXCertPasswordEncryptionType 中包含值“2”,请指定存储用于解密 PFXCertPassword 的证书的存储名称。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、获取、替换
依赖项 [EncryptionTypeDependency] 依赖项类型: DependsOn
依赖项 URI: Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/[UniqueID]/PFXCertPasswordEncryptionType
依赖项允许值: [2]
依赖项允许值类型: Range

Device/PFXCertInstall/{UniqueID}/PFXCertPasswordEncryptionType

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXCertPasswordEncryptionType

可选。 用于指定是否使用证书加密 PFX 证书密码。

如果值为 0 - 密码未加密 1 - 密码由 MDM 服务器使用 MDM 证书进行加密 2 - 密码由 MDM 服务器通过自定义证书加密。 在此处使用此值时,还要在 PFXCertPasswordEncryptionStore 节点中指定自定义存储名称。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、获取、替换
默认值 0

允许的值:

说明
0(默认值) 密码未加密。
1 使用 MDM 证书加密密码。
2 使用自定义证书加密密码。

Device/PFXCertInstall/{UniqueID}/PFXKeyExportable

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXKeyExportable

可选。 用于指定安装的私钥是否可导出 (以后) 导出。

PFX 在安装到 TPM 时不可导出。

注意

如果 KeyLocation=3,则只能将 PFXKeyExportable 设置为 true。 对于任何其他 KeyLocation 值,CSP 将失败。

描述框架属性:

属性名 属性值
格式 bool
访问类型 添加、获取、替换
默认值 true
依赖项 [KeyLocationDependency] 依赖项类型: DependsOn
依赖项 URI: Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/[UniqueID]/KeyLocation
依赖项允许值: [3]
依赖项允许值类型: Range

允许的值:

描述
false 假。
true (默认) 真。

Device/PFXCertInstall/{UniqueID}/Status

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/Status

从 PfxImportCertStore 之后调用的 GetLastError 命令返回 PFX 安装的错误代码。

描述框架属性:

属性名 属性值
格式 int
访问类型 “获取”

Device/PFXCertInstall/{UniqueID}/Thumbprint

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/Thumbprint

返回已安装的 PFX 证书的指纹。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 “获取”

Device/SCEP

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP

SCEP 的节点。 安装 SCEP 证书后,将发送警报。

描述框架属性:

属性名 属性值
格式 node
访问类型 “获取”

Device/SCEP/{UniqueID}

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}

SCEP 证书安装是必需的。 用于区分不同证书安装请求的唯一 ID。

在此节点上调用 Delete 应删除相应的 SCEP 证书。

描述框架属性:

属性名 属性值
格式 node
访问类型 添加、删除、获取、替换
需要原子 True
动态节点命名 ServerGeneratedUniqueIdentifier

Device/SCEP/{UniqueID}/CertThumbprint

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/CertThumbprint

可选。 如果证书注册成功,请指定当前证书的指纹。 它是指定为十六进制字符串值的 SHA1 证书哈希的 20 字节值。

注意

如果设备上的证书无效 (证书过期、证书链无效、私钥已删除等 ) 则返回空字符串。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 “获取”

Device/SCEP/{UniqueID}/ErrorCode

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/ErrorCode

可选。 指示上次注册错误代码的 HRESULT 的整数值。

描述框架属性:

属性名 属性值
格式 int
访问类型 “获取”

Device/SCEP/{UniqueID}/Install

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install

SCEP 证书注册是必需的。 用于对 SCEP 证书安装相关请求进行分组的父节点。 注意:虽然“安装”下的子节点支持“替换”命令,但一旦将 Exec 命令发送到设备,设备将采用接受 Exec 命令时设置的值。 服务器不应预期在接受 Exec 命令后节点值更改会影响当前正在进行的注册。 服务器应检查“状态”节点值,并确保设备在更改子节点值之前未处于未知阶段。

描述框架属性:

属性名 属性值
格式 node
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/AADKeyIdentifierList
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1703 [10.0.15063] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/AADKeyIdentifierList

可选。 将Microsoft Entra ID项标识符列表指定为分号分隔值。 在“注册”中,根据设备上存在的Microsoft Entra ID密钥验证此列表中的值。 如果未找到匹配项,注册将失败。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/AttestPrivateKey
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows Insider Preview
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/AttestPrivateKey

定义证明 SCEP 私钥行为 0 - 正常,1 - 尽最大努力,2 - 错误时,安装失败。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、获取
Device/SCEP/{UniqueID}/Install/CAThumbprint
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/CAThumbprint

必需。 指定根 CA 指纹。 它是指定为十六进制字符串值的 SHA1 证书哈希的 20 字节值。 客户端对 SCEP 服务器进行身份验证时,它会检查 SCEP 服务器的 CA 证书是否与此证书匹配。如果未找到匹配项,身份验证将失败。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/Challenge
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/Challenge

SCEP 证书注册是必需的。 B64 编码的 SCEP 注册质询。 接受 Exec 命令后不久将删除质询。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/ContainerName
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/ContainerName

可选。

如果为上述节点) 选择了 NGC KSP, (指定 NGC 容器名称。 如果选择 NGC KSP 时未指定此节点,注册将失败。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/CustomTextToShowInPrompt
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/CustomTextToShowInPrompt

可选。 指定要在证书注册期间在 NGC PIN 提示符上显示的自定义文本。 管理员可以选择提供更多上下文信息,了解用户需要输入 PIN 的原因以及证书将用于此用途。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/EKUMapping
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/EKUMapping

必需。 指定扩展密钥用法。 受 SCEP 服务器配置的约束。 OID 列表由加“+”分隔。 示例格式:OID1+OID2+OID3。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/Enroll
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/Enroll

必需。 触发设备以启动证书注册。 证书注册完成后,设备不会通知 MDM 服务器。 MDM 服务器稍后可以查询设备,以确定是否添加新的证书。

描述框架属性:

属性名 属性值
格式 null
访问类型 Exec
Device/SCEP/{UniqueID}/Install/HashAlgorithm
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/HashAlgorithm

注册时需要。 由 MDM 服务器指定的哈希算法系列 (SHA-1、SHA-2、SHA-3) 。 如果指定了多个哈希算法系列,则必须通过 +分隔它们。

对于 NGC,仅支持 SHA256 作为支持的算法。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/KeyLength
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/KeyLength

注册时需要。 (RSA) 指定私钥长度。

有效值:1024、2048、4096。 对于 NGC,只有 2048 是支持的密钥长度。

注意

对于以前称为 Microsoft Passport for Work) 的Windows Hello 企业版 (,2048 是唯一支持的密钥长度。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换

允许的值:

描述
1024 1024.
2048 2048.
4096 4096.
Device/SCEP/{UniqueID}/Install/KeyProtection
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/KeyProtection

可选。 指定私钥的保留位置。 请注意,即使它受 TPM 保护,也不会受到 TPM PIN 的保护。

SCEP 注册的证书不支持 TPM PIN 保护。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
默认值 3

允许的值:

描述
1 受 TPM 保护的私钥。
2 如果设备支持 TPM,则受电话 TPM 保护的私钥。 所有Windows Phone 8.1 设备都支持 TPM,并将值 2 视为 1。
3 (默认) (默认) 私钥保存在软件 KSP 中。
4 受Windows Hello 企业版 (以前称为 Microsoft Passport for Work) 保护的私钥。 如果指定了此选项,则必须指定 ContainerName,否则注册将失败。
Device/SCEP/{UniqueID}/Install/KeyUsage
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/KeyUsage

注册时需要。 以十进制格式指定证书的密钥用法位 (0x80、0x20、0xA0等 ) 。 该值至少应设置第二个 (0x20) 或第四个 (0x80) 或两个位。 如果值未设置这些位,配置将失败。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/RetryCount
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/RetryCount

可选。 特别用于 SCEP。 指定 SCEP 服务器发送挂起状态时的设备重试时间。 格式为 int。默认值为 3。 最大值:该值不能大于 30。 如果大于 30,则设备将使用 30。

最小值为 0,表示不重试。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
允许的值 范围: [0-30]
默认值 3
Device/SCEP/{UniqueID}/Install/RetryDelay
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/RetryDelay

可选。 当 SCEP 服务器发送挂起状态时,请指定设备重试等待时间(分钟)。

默认值为:5 最小值为 1。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
允许的值 范围: [0-4294967295]
默认值 5
Device/SCEP/{UniqueID}/Install/ServerURL
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/ServerURL

SCEP 证书注册是必需的。 指定证书注册服务器。 服务器可以指定用分号分隔的多个服务器 URL。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/SubjectAlternativeNames
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/SubjectAlternativeNames

可选。 指定使用者可选名称。 此节点可以指定多个可选名称。 每个名称是名称格式+实际名称的组合。 请参阅 MSDN 中的名称类型定义。 每对用分号分隔。 例如,多个 SAN 的格式为 [nameformat1]+[actual name1];[name format 2]+[actual name2]。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/SubjectName
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/SubjectName

必需。 指定使用者名称。 如果 SubjectName 值包含前导空格或尾随空格或以下字符之一,则会用引号括起来: (“、”“=”“+”“;”) 。

有关详细信息,请参阅 CertNameToStrA 函数

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/TemplateName
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/TemplateName

可选。 证书模板名称的 OID。 请注意,SCEP 服务器通常忽略此名称,因此 MDM 服务器通常不需要提供它。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
Device/SCEP/{UniqueID}/Install/ValidPeriod
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/ValidPeriod

可选。 指定有效时间段的单位。 有效值为:天 (默认) 、Month、Years。

MDM 服务器预期的证书验证期 (ValidPeriodUnits + ValidPeriod) SCEP 服务器作为证书注册请求的一部分。 这是服务器决定如何使用此有效期限创建证书。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
默认值

允许的值:

描述
天 (默认) 天。
月。
年。
Device/SCEP/{UniqueID}/Install/ValidPeriodUnits
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/ValidPeriodUnits

可选。 指定有效期中使用的所需单位数。 受 SCEP 服务器配置的约束。 默认值为 0。 这些单位在 ValidPeriod 节点中定义。 请注意,MDM 指定的有效期限将覆盖证书模板中指定的有效期限。 例如,如果 ValidPeriod 为天,ValidPeriodUnits 为 30,则表示总有效持续时间为 30 天。

注意

作为证书注册请求的一部分,设备仅将 MDM 服务器的预期证书验证期 (ValidPeriodUnits + ValidPeriod) SCEP 服务器发送。 这是服务器决定如何使用此有效期限创建证书。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
默认值 0

Device/SCEP/{UniqueID}/RespondentServerUrl

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/RespondentServerUrl

必需。 返回响应注册请求的 SCEP 服务器的 URL。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 “获取”

Device/SCEP/{UniqueID}/Status

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Status

必需。 指定证书因注册请求而的最新状态。

有效值包括:

1 - 成功完成 2 - 挂起 (设备尚未完成操作,但已收到 SCEP 服务器等待响应) 32 - 未知 16 - 操作失败。

描述框架属性:

属性名 属性值
格式 int
访问类型 “获取”

User/PFXCertInstall

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall

PFX 证书安装是必需的。 对 PFX 证书相关设置进行分组的父节点。

描述框架属性:

属性名 属性值
格式 node
访问类型 “获取”

User/PFXCertInstall/{UniqueID}

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}

PFX 证书安装是必需的。 用于区分不同证书安装请求的唯一 ID。

格式为 node。

在此节点上调用 Delete 应删除由相应 PFX Blob 安装的证书和密钥。

描述框架属性:

属性名 属性值
格式 node
访问类型 添加、删除、获取、替换
需要原子 True
动态节点命名 ServerGeneratedUniqueIdentifier

User/PFXCertInstall/{UniqueID}/ContainerName

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/ContainerName

可选。

如果为上述节点) 选择了 NGC KSP, (指定 NGC 容器名称。 如果选择 NGC KSP 时未指定此节点,注册将失败。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、获取、替换

User/PFXCertInstall/{UniqueID}/KeyLocation

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/KeyLocation

PFX 证书安装是必需的。 指示将私钥安装目标为的 KeyStorage 提供程序。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、获取、替换

允许的值:

描述
1 安装到 TPM(如果存在),如果不存在,则失败。
2 安装到 TPM(如果存在)。 如果不存在,则回退到软件。
3 安装到软件。
4 安装到Windows Hello 企业版 (以前称为 Microsoft Passport for Work) ,其名称已指定。

User/PFXCertInstall/{UniqueID}/PFXCertBlob

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXCertBlob

必需。

CRYPT_DATA_BLOB 结构,其中包含具有导出和加密的证书和密钥的 PFX 数据包。 在此节点上添加将触发对 PFX 证书的添加。 这要求 UniqueID 下是 PFX 安装参数 (容器名称、KeyLocation、CertPassword、fKeyExportable) 的所有其他节点在调用之前都存在。 这还会将“状态”节点设置为操作的当前状态。

如果在此节点上调用了 Add,并且 Blob 已存在,则它将失败。 如果在此节点上调用 Replace,则会覆盖证书。

如果在此节点上为新的 PFX 调用 Add,则会添加证书。 如果在不存在时在此节点上调用 Replace,则此操作将失败。

换句话说,使用 Replace 或 Add 将导致覆盖旧证书或添加新证书的效果

描述框架属性:

属性名 属性值
格式 bin
访问类型 添加、获取、替换

User/PFXCertInstall/{UniqueID}/PFXCertPassword

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXCertPassword

保护 PFX Blob 的密码。 如果 PFX 受密码保护,则这是必需的。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、获取、替换

User/PFXCertInstall/{UniqueID}/PFXCertPasswordEncryptionStore

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXCertPasswordEncryptionStore

可选。

如果 PFXCertPasswordEncryptionType 中包含值“2”,请指定存储用于解密 PFXCertPassword 的证书的存储名称。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、获取、替换
依赖项 [EncryptionTypeDependency] 依赖项类型: DependsOn
依赖项 URI: User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/[UniqueID]/PFXCertPasswordEncryptionType
依赖项允许值: [2]
依赖项允许值类型: Range

User/PFXCertInstall/{UniqueID}/PFXCertPasswordEncryptionType

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXCertPasswordEncryptionType

可选。 用于指定是否使用证书加密 PFX 证书密码。

如果值为 0 - 密码未加密 1 - 密码由 MDM 服务器使用 MDM 证书进行加密 2 - 密码由 MDM 服务器通过自定义证书加密。 在此处使用此值时,还要在 PFXCertPasswordEncryptionStore 节点中指定自定义存储名称。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、获取、替换
默认值 0

允许的值:

说明
0(默认值) 密码未加密。
1 使用 MDM 证书加密密码。
2 使用自定义证书加密密码。

User/PFXCertInstall/{UniqueID}/PFXKeyExportable

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/PFXKeyExportable

可选。 用于指定安装的私钥是否可导出 (以后) 导出。

注意

如果 KeyLocation=3,则只能将 PFXKeyExportable 设置为 true。 对于任何其他 KeyLocation 值,CSP 将失败。

描述框架属性:

属性名 属性值
格式 bool
访问类型 添加、获取、替换
默认值 true
依赖项 [KeyLocationDependency] 依赖项类型: DependsOn
依赖项 URI: User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/[UniqueID]/KeyLocation
依赖项允许值: [3]
依赖项允许值类型: Range

允许的值:

描述
false 假。
true (默认) 真。

User/PFXCertInstall/{UniqueID}/Status

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/Status

从 PfxImportCertStore 之后调用的 GetLastError 命令返回 PFX 安装的错误代码。

描述框架属性:

属性名 属性值
格式 int
访问类型 “获取”

User/PFXCertInstall/{UniqueID}/Thumbprint

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/{UniqueID}/Thumbprint

返回已安装的 PFX 证书的指纹。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 “获取”

用户/SCEP

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP

SCEP 的节点。 安装 SCEP 证书后,将发送警报。

描述框架属性:

属性名 属性值
格式 node
访问类型 “获取”

User/SCEP/{UniqueID}

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}

SCEP 证书安装是必需的。 用于区分不同证书安装请求的唯一 ID。

在此节点上调用 Delete 应删除相应的 SCEP 证书。

描述框架属性:

属性名 属性值
格式 node
访问类型 添加、删除、获取、替换
需要原子 True
动态节点命名 ServerGeneratedUniqueIdentifier

User/SCEP/{UniqueID}/CertThumbprint

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/CertThumbprint

可选。 如果证书注册成功,请指定当前证书的指纹。 它是指定为十六进制字符串值的 SHA1 证书哈希的 20 字节值。

注意

如果设备上的证书无效 (证书过期、证书链无效、私钥已删除等 ) 则返回空字符串。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 “获取”

User/SCEP/{UniqueID}/ErrorCode

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/ErrorCode

可选。 指示上次注册错误代码的 HRESULT 的整数值。

描述框架属性:

属性名 属性值
格式 int
访问类型 “获取”

User/SCEP/{UniqueID}/Install

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install

SCEP 证书注册是必需的。 用于对 SCEP 证书安装相关请求进行分组的父节点。 注意:虽然“安装”下的子节点支持“替换”命令,但一旦将 Exec 命令发送到设备,设备将采用接受 Exec 命令时设置的值。 服务器不应预期在接受 Exec 命令后节点值更改会影响当前正在进行的注册。 服务器应检查“状态”节点值,并确保设备在更改子节点值之前未处于未知阶段。

描述框架属性:

属性名 属性值
格式 node
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/AADKeyIdentifierList
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1703 [10.0.15063] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/AADKeyIdentifierList

可选。 将Microsoft Entra ID项标识符列表指定为分号分隔值。 在“注册”中,根据设备上存在的Microsoft Entra ID密钥验证此列表中的值。 如果未找到匹配项,注册将失败。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/AttestPrivateKey
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows Insider Preview
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/AttestPrivateKey

定义证明 SCEP 私钥行为 0 - 正常,1 - 尽最大努力,2 - 错误时,安装失败。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、获取

允许的值:

描述
0 不要证明私钥。
1 证明密钥,但在证明失败的情况下,尽最大努力将 CSR 发送到服务器。
2 证明密钥,但如果证明失败,请快速失败 (即释放密钥,而不是向服务器发出 CSR) 。
User/SCEP/{UniqueID}/Install/CAThumbprint
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/CAThumbprint

必需。 指定根 CA 指纹。 它是指定为十六进制字符串值的 SHA1 证书哈希的 20 字节值。 客户端对 SCEP 服务器进行身份验证时,它会检查 SCEP 服务器的 CA 证书是否与此证书匹配。如果未找到匹配项,身份验证将失败。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/Challenge
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/Challenge

SCEP 证书注册是必需的。 B64 编码的 SCEP 注册质询。 接受 Exec 命令后不久将删除质询。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/ContainerName
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/ContainerName

可选。

如果为上述节点) 选择了 NGC KSP, (指定 NGC 容器名称。 如果选择 NGC KSP 时未指定此节点,注册将失败。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/CustomTextToShowInPrompt
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/CustomTextToShowInPrompt

可选。 指定要在证书注册期间在 NGC PIN 提示符上显示的自定义文本。 管理员可以选择提供更多上下文信息,了解用户需要输入 PIN 的原因以及证书将用于此用途。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/EKUMapping
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/EKUMapping

必需。 指定扩展密钥用法。 受 SCEP 服务器配置的约束。 OID 列表由加“+”分隔。 示例格式:OID1+OID2+OID3。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/Enroll
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/Enroll

必需。 触发设备以启动证书注册。 证书注册完成后,设备不会通知 MDM 服务器。 MDM 服务器稍后可以查询设备,以确定是否添加新的证书。

描述框架属性:

属性名 属性值
格式 null
访问类型 Exec
User/SCEP/{UniqueID}/Install/HashAlgorithm
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/HashAlgorithm

注册时需要。 由 MDM 服务器指定的哈希算法系列 (SHA-1、SHA-2、SHA-3) 。 如果指定了多个哈希算法系列,则必须通过 +分隔它们。

对于 NGC,仅支持 SHA256 作为支持的算法。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/KeyLength
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/KeyLength

注册时需要。 (RSA) 指定私钥长度。

有效值:1024、2048、4096。 对于 NGC,只有 2048 是支持的密钥长度。

注意

对于以前称为 Microsoft Passport for Work) 的Windows Hello 企业版 (,2048 是唯一支持的密钥长度。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换

允许的值:

描述
1024 1024.
2048 2048.
4096 4096.
User/SCEP/{UniqueID}/Install/KeyProtection
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/KeyProtection

可选。 指定私钥的保留位置。 请注意,即使它受 TPM 保护,也不会受到 TPM PIN 的保护。

SCEP 注册的证书不支持 TPM PIN 保护。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
默认值 3

允许的值:

描述
1 受 TPM 保护的私钥。
2 如果设备支持 TPM,则受电话 TPM 保护的私钥。 所有Windows Phone 8.1 设备都支持 TPM,并将值 2 视为 1。
3 (默认) (默认) 私钥保存在软件 KSP 中。
4 受Windows Hello 企业版 (以前称为 Microsoft Passport for Work) 保护的私钥。 如果指定了此选项,则必须指定 ContainerName,否则注册将失败。
User/SCEP/{UniqueID}/Install/KeyUsage
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/KeyUsage

注册时需要。 以十进制格式指定证书的密钥用法位 (0x80、0x20、0xA0等 ) 。 该值至少应设置第二个 (0x20) 或第四个 (0x80) 或两个位。 如果值未设置这些位,配置将失败。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/RetryCount
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/RetryCount

可选。 特别用于 SCEP。 指定 SCEP 服务器发送挂起状态时的设备重试时间。 格式为 int。默认值为 3。 最大值:该值不能大于 30。 如果大于 30,则设备将使用 30。

最小值为 0,表示不重试。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
允许的值 范围: [0-30]
默认值 3
User/SCEP/{UniqueID}/Install/RetryDelay
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/RetryDelay

可选。 当 SCEP 服务器发送挂起状态时,请指定设备重试等待时间(分钟)。

默认值为:5 最小值为 1。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
允许的值 范围: [0-4294967295]
默认值 5
User/SCEP/{UniqueID}/Install/ServerURL
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/ServerURL

SCEP 证书注册是必需的。 指定证书注册服务器。 服务器可以指定用分号分隔的多个服务器 URL。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/SubjectAlternativeNames
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/SubjectAlternativeNames

可选。 指定使用者可选名称。 此节点可以指定多个可选名称。 每个名称是名称格式+实际名称的组合。 请参阅 MSDN 中的名称类型定义。 每对用分号分隔。 例如,多个 SAN 的格式为 [nameformat1]+[actual name1];[name format 2]+[actual name2]。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/SubjectName
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/SubjectName

必需。 指定使用者名称。 如果 SubjectName 值包含前导空格或尾随空格或以下字符之一,则会用引号括起来: (“、”“=”“+”“;”) 。

有关详细信息,请参阅 CertNameToStrA 函数

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/TemplateName
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/TemplateName

可选。 证书模板名称的 OID。 请注意,SCEP 服务器通常忽略此名称,因此 MDM 服务器通常不需要提供它。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
User/SCEP/{UniqueID}/Install/ValidPeriod
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/ValidPeriod

可选。 指定有效时间段的单位。 有效值为:天 (默认) 、Month、Years。

MDM 服务器预期的证书验证期 (ValidPeriodUnits + ValidPeriod) SCEP 服务器作为证书注册请求的一部分。 这是服务器决定如何使用此有效期限创建证书。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 添加、删除、获取、替换
默认值

允许的值:

描述
天 (默认) 天。
月。
年。
User/SCEP/{UniqueID}/Install/ValidPeriodUnits
范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Install/ValidPeriodUnits

可选。 指定有效期中使用的所需单位数。 受 SCEP 服务器配置的约束。 默认值为 0。 这些单位在 ValidPeriod 节点中定义。 请注意,MDM 指定的有效期限将覆盖证书模板中指定的有效期限。 例如,如果 ValidPeriod 为天,ValidPeriodUnits 为 30,则表示总有效持续时间为 30 天。

注意

作为证书注册请求的一部分,设备仅将 MDM 服务器的预期证书验证期 (ValidPeriodUnits + ValidPeriod) SCEP 服务器发送。 这是服务器决定如何使用此有效期限创建证书。

描述框架属性:

属性名 属性值
格式 int
访问类型 添加、删除、获取、替换
默认值 0

User/SCEP/{UniqueID}/RespondentServerUrl

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/RespondentServerUrl

必需。 返回响应注册请求的 SCEP 服务器的 URL。

描述框架属性:

属性名 属性值
格式 chr (字符串)
访问类型 “获取”

User/SCEP/{UniqueID}/Status

范围 版本 适用的操作系统
✅ 设备
✅ 用户
✅ 专业版
✅ 企业版
✅ 教育版
✅ Windows SE
✅ IoT 企业版/IoT 企业版 LTSC
✅Windows 10版本 1511 [10.0.10586] 及更高版本
./User/Vendor/MSFT/ClientCertificateInstall/SCEP/{UniqueID}/Status

必需。 指定证书因注册请求而的最新状态。

有效值包括:

1 - 成功完成 2 - 挂起 (设备尚未完成操作,但已收到 SCEP 服务器等待响应) 32 - 未知 16 - 操作失败。

描述框架属性:

属性名 属性值
格式 int
访问类型 “获取”

示例

  • 通过 SCEP 注册客户端证书。

    <SyncML xmlns="SYNCML:SYNCML1.2">
        <SyncBody>
            <Atomic>
            <Add>
                <CmdID>301</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere></LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">node</Format>
                    </Meta>
                </Item>
            </Add>
            <Add>
                <CmdID>302</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/RetryCount</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">int</Format>
                    </Meta>
                    <Data>1</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>303</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/RetryDelay</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">int</Format>
                    </Meta>
                    <Data>1</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>304</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/KeyUsage</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">int</Format>
                    </Meta>
                    <Data>160</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>305</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/KeyLength</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">int</Format>
                    </Meta>
                    <Data>1024</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>306</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/HashAlgorithm</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>SHA-1</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>307</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/SubjectName</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>CN=ContosoCSP</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>308</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/SubjectAlternativeNames</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data></Data>
                </Item>
            </Add>
            <Add>
                <CmdID>309</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/ValidPeriod</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>Years</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>310</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/ValidPeriodUnits</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">int</Format>
                    </Meta>
                    <Data>1</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>311</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/EKUMapping</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>1.3.6.1.4.1.311.10.3.12+1.3.6.1.4.1.311.10.3.4+1.3.6.1.4.1.311.20.2.2+1.3.6.1.5.5.7.3.2</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>312</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/KeyProtection</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">int</Format>
                    </Meta>
                    <Data>3</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>313$</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/ServerURL</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>http://constoso.com/certsrv/mscep/mscep.dll</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>314</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/Challenge</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>1234CB055B7EBF384A9486A22B7559A5</Data>
                </Item>
            </Add>
            <Add>
                <CmdID>315</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/CAThumbprint</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>12345087E648875D1DF5D9F9FF89DD10</Data>
                </Item>
            </Add>
            <Exec>
                <CmdID>316</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/ClientCertificateInstall/SCEP/<InsertUniqueIDHere>/Install/Enroll</LocURI>
                    </Target>
                </Item>
            </Exec>
            </Atomic>
            <Final/>
        </SyncBody>
    </SyncML>
    
  • 添加 PFX 证书。 PFX 证书密码使用“我的”存储中的自定义证书进行加密。

    <SyncML>
        <SyncBody>
                <Delete>
                    <CmdID>$CmdID$</CmdID>
                    <Item>
                        <Target>
                            <LocURI>./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/813A171D7341E1DA90D4A01878DD5328D351900C</LocURI>
                        </Target>
                    </Item>
                </Delete>
            <Atomic>
                <CmdID>$CmdID$</CmdID>
                <Add>
                    <CmdID>$CmdID$</CmdID>
                    <Item>
                        <Target>
                            <LocURI>./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/813A171D7341E1DA90D4A01878DD5328D351900C/KeyLocation</LocURI>
                        </Target>
                        <Meta>
                            <Format xmlns="syncml:metinf">int</Format>
                        </Meta>
                        <Data>2</Data>
                    </Item>
                </Add>
                <Add>
                    <CmdID>$CmdID$</CmdID>
                    <Item>
                        <Target>
                            <LocURI>./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/813A171D7341E1DA90D4A01878DD5328D351900C/PFXCertBlob</LocURI>
                        </Target>
                         <Meta>
                            <Format xmlns="syncml:metinf">chr</Format>
                        </Meta>
                        <Data>Base64_Encode_Cert_Blob</Data>
                    </Item>
                </Add>
                <Add>
                    <CmdID>$CmdID$</CmdID>
                    <Item>
                        <Target>
                            <LocURI>./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/813A171D7341E1DA90D4A01878DD5328D351900C/PFXCertPassword</LocURI>
                        </Target>
                         <Meta>
                            <Format xmlns="syncml:metinf">chr</Format>
                        </Meta>
                        <Data>Base64Encoded_Encrypted_Password_Blog</Data>
                    </Item>
                </Add>
                <Add>
                    <CmdID>$CmdID$</CmdID>
                    <Item>
                        <Target>
                            <LocURI>./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/813A171D7341E1DA90D4A01878DD5328D351900C/PFXCertPasswordEncryptionType</LocURI>
                        </Target>
                        <Meta>
                            <Format xmlns="syncml:metinf">int</Format>
                        </Meta>
                        <Data>2</Data>
                    </Item>
                </Add>
                <Add>
                    <CmdID>$CmdID$</CmdID>
                    <Item>
                        <Target>
                            <LocURI>./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/813A171D7341E1DA90D4A01878DD5328D351900C/PFXCertPasswordEncryptionStore</LocURI>
                        </Target>
                        <Meta>
                            <Format xmlns="syncml:metinf">chr</Format>
                        </Meta>
                        <Data>My</Data>
                    </Item>
                </Add>
                <Add>
                    <CmdID>$CmdID$</CmdID>
                    <Item>
                        <Target>
                            <LocURI>./User/Vendor/MSFT/ClientCertificateInstall/PFXCertInstall/813A171D7341E1DA90D4A01878DD5328D351900C/PFXKeyExportable</LocURI>
                        </Target>
                        <Meta>
                            <Format xmlns="syncml:metinf">bool</Format>
                        </Meta>
                        <Data>true</Data>
                    </Item>
                </Add>
            </Atomic>
        <Final/>
        </SyncBody>
    </SyncML>
    

配置服务提供程序参考