Product Documentation

凭据提供程序

Nov 29, 2016

凭据提供程序是在 XenMobile 系统的各个部分中使用的实际证书配置。 它们定义证书的来源、参数和生命周期,无论这些证书是设备配置的一部分还是独立的配置,都将按原样推送到设备。 

设备注册约束证书生命周期。 也就是说,XenMobile 在注册前不颁发证书,尽管 XenMobile 可能会在注册的过程中颁发某些证书。 此外,在某个注册环境下从内部 PKI 颁发的证书会在注册被吊销时吊销。 管理关系终止后,不保留任何有效证书。

一个凭据提供程序配置可用于多个位置,从而达到通过一个配置同时控制任意多个证书的效果。 这时,其唯一性在于部署资源和部署。 例如,如果凭据提供程序 P 在配置 C 中部署到设备 D,则 P 的颁发设置决定着部署到 D 的证书。 同样,更新 C 时将应用 D 的续订设置,删除 C 或吊销 D 时将应用 D 的吊销设置。

基于此,XenMobile 中的凭据提供程序配置执行以下操作:

  • 确定证书的来源。
  • 确定获取证书的方法:签发新证书还是提取(恢复)现有证书和密钥对。
  • 确定用于颁发或恢复的参数。 例如,密钥大小、密钥算法、标识名、证书扩展名等证书签名请求 (CSR) 参数。
  • 确定将证书交付给设备的方式。
  • 决定吊销条件。 尽管在管理关系终止后 XenMobile 中的所有证书都将被吊销,但该配置可以指定在更早时间吊销,例如在删除关联设备配置时吊销。 此外,在某些情况下,XenMobile 中关联证书的吊销可能会发送给后端公钥基础结构 (PKI);也就是说,XenMobile 中关联证书的吊销可能导致其在 PKI 上也随之吊销。
  • 决定续订设置。 通过指定凭据提供程序获取的证书可以在即将过期时自动续订,或者采用与之不同的方式,在接近过期时由系统发送通知。

各种配置选项的可用程度主要取决于为凭据提供程序选择的 PKI 实体的类型和颁发方法。

证书颁发方法

可以采用两种途径获取证书(称为颁发方法):

  • 签名。 利用此方法,颁发包括创建新私钥、创建 CSR 和将 CSR 提交给证书颁发机构 (CA) 进行签名。 XenMobile 支持对三种 PKI 实体(Microsoft 证书服务实体、通用 PKI 和任意 CA)使用此签名方法。
  • 提取。 利用此方法,用于 XenMobile 的颁发是指对现有密钥对的恢复。 XenMobile 仅支持对通用 PKI 使用提取方法。

凭据提供程序使用签名或提取颁发方法。 所选方法会影响可用配置选项。 具体而言,仅当颁发方法为签名时,才可以使用 CSR 配置和分散交付。 提取的证书始终作为 PKCS#12 发送给设备,相当于签名方法的集中交付模式。

证书交付

XenMobile 中可用的证书交付模式共有两种:集中和分散。 分布式模式使用简单证书注册协议 (SCEP),并且只有在客户端支持该协议时方可使用(仅限 iOS)。 在某些情况下,必须采用分布式模式。

对于支持分散式(SCEP 辅助)交付的凭据提供程序,需要特殊的配置步骤:设置注册机构 (RA) 证书。 需要 RA 证书是因为,使用 SCEP 协议时,XenMobile 充当实际 CA 的委派者(注册者),并且必须向客户端证明其拥有充当此类角色的机构。 通过向 XenMobile 提供上述证书,可以建立该机构。

需要两种不同的证书角色(尽管同一证书即可满足这两项要求):RA 签名和 RA 加密。 这些角色的限制如下:

  • RA 签名证书必须拥有 X.509 密钥用法数字签名。
  • RA 加密证书必须拥有 X.509 密钥用法密钥加密。

要配置凭据提供程序的 RA 证书,必须首先将证书上载到 XenMobile,然后在凭据提供程序中链接到这些证书。

仅当凭据提供程序为证书角色配置了证书时,才可将凭据提供程序视为支持分散式交付。 每个凭据提供程序均可配置为首选集中式模式、首选分布式模式或要求分布式模式。 实际结果取决于具体环境:如果环境不支持分布式模式,但是凭据提供程序要求使用该模式,部署将失败。 同样地,如果环境要求使用分布式模式,但凭据提供程序不支持该模式,部署也将失败。 在所有其他情况下,将会应用首选设置。

下面显示了 SCEP 在整个 XenMobile 的分布:

上下文支持 SCEP需要 SCEP
iOS 配置文件服务
iOS 移动设备管理注册
iOS 配置文件
SHTP 注册
SHTP 配置
Windows Phone 和 Tablet 注册
Windows Phone 和 Tablet 配置否,WiFi 设备策略除外
(这在 Windows Phone 8.1
和最新的 Windows 10 版本上支持)

证书吊销

有三种类型的吊销。

  • 内部吊销。 内部吊销影响由 XenMobile 维护的证书状态。 在 XenMobile 评估收到的证书时,或者 XenMobile 必须提供某些证书的 OCSP 状态信息时,将考虑此状态。 凭据提供程序配置决定在各种条件下此状态受到的影响。 例如,凭据提供程序可以指定:将通过证书提供商获取的证书从设备中删除后,将这些证书标记为已吊销。
  • 外部传播的吊销。 又称“吊销 XenMobile”,这种类型的吊销适用于从外部 PKI 获取的证书。 在凭据提供程序配置定义的条件下,当证书由 XenMobile 在内部吊销时也会同时在 PKI 上吊销。 用于执行吊销的调用需要使用支持吊销的通用 PKI (GPKI) 实体。
  • 外部引起的吊销。 又称“吊销 PKI”,这种类型的吊销适用于从外部 PKI 获取的证书。 每次 XenMobile 评估指定证书的状态时,XenMobile 都将向 PKI 查询该状态。 如果证书已吊销,XenMobile 将在内部吊销该证书。 此机制使用 OCSP 协议。

这三种类型并不互斥,而是可以一起应用:外部吊销或独立查询结果导致内部吊销,内部吊销进而潜在影响外部吊销。

证书续订

证书续订由吊销现有证书和颁发另一个证书两个过程组成。

请注意,XenMobile 将首先尝试获取新证书,然后再吊销之前的证书,以避免在颁发失败时造成服务中断。 如果采用分散式(支持 SCEP)交付,仅当证书成功安装到设备后再进行吊销,否则,将在新证书发送给设备之前进行吊销,无论新证书是否安装成功。

配置吊销时,需要指定特定的持续时间(天)。 如果设备已连接,服务器将验证证书的“不晚于”日期是否晚于当前日期减去指定的持续时间。 如果晚于两者之差,则尝试续订。

创建凭据提供程序

凭据提供程序的配置方式有多种,主要取决于为其选择的颁发实体和颁发方法。 可以将使用内部实体(如任意实体)和使用外部实体(如 Microsoft CA 或 GPKI)的凭据提供程序区分开。 任意实体的颁发方法始终为签名。这意味着,在执行每个颁发操作时,XenMobile 都将使用为该实体选择的 CA 证书给新密钥对签名。 该密钥对是在设备上生成还是在服务器上生成取决于所选的分发方法。

1. 在 XenMobile Web 控制台中,单击控制台右上角的齿轮图标,然后单击更多 > 凭据提供程序

2. 在凭据提供程序页面上,单击添加

此时将显示凭据提供程序: 常规信息页面。

3. 在凭据提供程序: 常规信息页面上,执行以下操作:

  • 名称:键入新提供程序配置的唯一名称。 此名称之后将用于在 XenMobile 控制台的其他部分引用该配置。
  • 说明:凭据提供程序的说明。 尽管此字段为可选字段,但说明在以后可帮助您记住此凭据提供程序的详细信息。
  • 颁发实体:单击凭据颁发实体。
  • 颁发方法:单击 Sign(签名)或 Fetch(提取)以选择系统用于从已配置的实体获取证书的方法。 对于客户端证书身份验证,请使用签名
  • 如果模板列表可用,请为凭据提供程序选择模板。

4. 单击下一步

注意:在设置 > 更多 > PKI 实体中添加 Microsoft 证书服务实体后,这些模板将变为可用。

此时将显示凭据提供程序: 证书签名请求页面。

5. 在凭据提供程序: 证书签名请求页面上,执行以下操作:

  • 密钥算法:单击用于获取新密钥对的密钥算法。 可用值为 RSADSAECDSA
  • 密钥大小:键入密钥对的大小,以位为单位。 此字段为必填字段。

    注意:允许的值取决于密钥类型;例如,DSA 密钥的最大大小为 1024 位。 为避免错误的负值(取决于基础硬件或软件),XenMobile 不强制实施密钥大小。 您应始终先在测试环境中测试凭据提供程序配置,然后在生产环境中激活这些配置。

  • 签名算法:单击用于新证书的值。 值取决于密钥算法。
  • 使用者名称:键入新证书使用者的标识名 (DN)。 例如:CN=${user.username}, OU=${user.department}, O=${user.companyname}, C=${user.c}\endquotation。 此字段为必填字段。

例如,对于客户端证书身份验证,请好似用以下设置:

密钥算法:RSA
密钥大小:2048
签名算法:SHA1withRSA
使用者名称:cn=$user.username

6. 要向使用者备用名称表格中添加新条目,请单击添加。 选择备用名称的类型,然后在第二列中键入一个值。

          对于客户端证书身份验证,请指定以下设置:

类型:用户主体名称
:$user.userprincipalname 

注意:与使用者名称相同,可以在值字段中使用 XenMobile 宏。

7. 单击下一步

此时将显示凭据提供程序: 分发页面。

8. 在凭据提供程序: 分发页面上,执行以下操作:

  • 颁发 CA 证书列表中,单击提供的 CA 证书。 由于凭据提供程序使用任意 CA 实体,因此该凭据提供程序的 CA 证书将始终为在该实体上配置的 CA 证书;该证书在此显示是为了与使用外部实体的配置保持一致。
  • 选择分发模式中,单击以下生成和分发密钥方式中的一种:
    • 首选集中式: 服务器端密钥生成。 Citrix 建议采用此集中模式选项。 它支持 XenMobile 支持的所有平台,并且在使用 NetScaler Gateway 身份验证时也需要使用此模式。 在服务器上生成并存储私钥,然后分发到用户设备。
    • 首选分布式: 设备端密钥生成。 在用户设备上生成并存储私钥。 分布式模式使用 SCEP 并需要采用 keyUsage keyEncryption 的 RA 加密证书和采用 KeyUsage digitalSignature 的 RA 签名证书。 同一个证书可以同时用于加密和签名。
    • 仅限分布式: 设备端密钥生成。 此选项与“首选分布式: 设备端密钥生成”的工作方式相同,但是此选项是“仅限”而非“首选”,当设备端生成密钥失败或不可用时,没有其他选项可用。

如果选择首选分布式: 设备端密钥生成仅限分布式: 设备端密钥生成,请单击 RA 签名证书和 RA 加密证书。 同一个证书可用于这两个目的。 此时将显示有关这些证书的新字段。

9. 单击下一步

此时将显示凭据提供程序: 吊销 XenMobile 页面。 在此页面上,配置 XenMobile 在内部将通过此提供程序配置颁发的证书标记为吊销的条件。

12. 在凭据提供程序: 吊销 XenMobile 页面上,执行以下操作:

  • 吊销已颁发的证书中,选择一个表明何时应吊销证书的选项。
  • 如果希望 XenMobile 在吊销证书时发送通知,请将发送通知设置为并选择通知模板。
  • 如果要在从 XenMobile 吊销证书后也在 PKI 上吊销此证书,请将吊销 PKI 上的证书设置为,并在实体列表中,单击某个模板。 “实体”列表将显示具有吊销功能的所有可用 GPKI 实体。 从 XenMobile 吊销证书后,吊销调用将发送给在“实体”列表中选择的 PKI。

13. 单击下一步

此时将显示凭据提供程序: 吊销 PKI 页面。 请在此页面上指出吊销证书时应对 PKI 执行的操作。 您还可以选择创建通知消息。

14. 在凭据提供程序: 吊销 PKI 页面上,如果要从 PKI 吊销证书,请执行以下操作:

  • 启用外部吊销检查设置更改为。 此时将显示其他与吊销 PKI 相关的字段。
  • OCSP 响应者 CA 证书列表中,单击证书使用者的标识名 (DN)。 注意:可以为 DN 字段值使用 XenMobile 宏。 例如:CN=${user.username}, OU=${user.department}, O=${user.companyname}, C=${user.c}\endquotation
  • 吊销证书时列表中,单击吊销证书时对 PKI 实体执行的以下操作之一:

不执行任何操作。

续订证书。

吊销和擦除设备。

  • 如果希望 XenMobile 在吊销证书时发送通知,请将发送通知的值设置为

可以从两个通知选项中选择:

  • 如果选择选择通知模板,则可以选择预先写好的通知消息,且之后可以进行自定义。 这些模板位于“通知模板”列表中。
  • 如果选择输入通知详细信息,则可以自行编写通知消息。 除了提供收件人的电子邮件地址和消息,还可以设置发送通知的频率。

15. 单击下一步

此时将显示凭据提供程序: 续订页面。 在此页面上,您可以配置 XenMobile 以使其执行以下操作:

  • 续订证书、在证书完成续订时发送通知(续订时通知)并从操作中排除已过期的证书(后两项操作为可选操作)。
  • 为即将过期的证书发送通知(续订前通知)。

16. 在凭据提供程序: 续订页面上,如果要在证书过期时进行续订,请执行以下操作:将续订证书设置为

此时将显示其他字段。

  • Renew when the certificate comes within(当证书在此范围内时续订)字段中,键入应在过期前多少天续订证书。
  • (可选)选择不续订已过期的证书。 注意:在此情况下,“已过期”表示证书的“不晚于”日期在过去,不是指证书已经被吊销。 内部吊销后,XenMobile 将不会续订证书。

17. 如果希望 XenMobile 在续订证书后发送通知,请将发送通知设置为。 可以从两个通知选项中选择:

  • 如果选择选择通知模板,则可以选择预先写好的通知消息,且之后可以进行自定义。 这些模板位于通知模板列表中。
  • 如果选择输入通知详细信息,则可以自行编写通知消息。 除了提供收件人的电子邮件地址和消息,还可以设置发送通知的频率。

18. 如果希望 XenMobile 在证书接近过期时发送通知,请将证书即将过期时发送通知设置为。 可以从两个通知选项中选择:

  • 如果选择选择通知模板,则可以选择预先写好的通知消息,且之后可以进行自定义。 这些模板位于通知模板列表中。
  • 如果选择输入通知详细信息,则可以自行编写通知消息。 除了提供收件人的电子邮件地址和消息,还可以设置发送通知的频率。

19. 在证书在此时间内提供时通知字段中,键入应在证书过期前多少天发送通知。

20. 单击保存

凭据提供程序将添加到凭据提供程序表格中。