XenMobile® Server

凭据提供程序

凭据提供程序是您在 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 支持 MS 证书服务实体和自由裁量 CA 实体使用签名方法。

凭据提供程序使用签名颁发方法。

证书交付

XenMobile 中提供两种证书交付模式:集中式和分布式。分布式模式使用简单证书注册协议 (SCEP),并且仅在客户端支持该协议的情况下可用(仅限 iOS)。在某些情况下,分布式模式是强制性的。

为了使凭据提供程序支持分布式(SCEP 辅助)交付,需要一个特殊的配置步骤:设置注册机构 (RA) 证书。RA 证书是必需的,因为如果您使用 SCEP 协议,XenMobile 将充当实际证书颁发机构的委托(注册商)。XenMobile 必须向客户端证明它有权这样做。该权限是通过将前面提到的证书上传到 XenMobile 来建立的。

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

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

要配置凭据提供程序 RA 证书,请将证书上传到 XenMobile,然后在凭据提供程序中链接到它们。

仅当提供程序配置了证书角色的证书时,才认为凭据提供程序支持分布式交付。您可以将每个凭据提供程序配置为首选集中式模式、首选分布式模式或要求分布式模式。实际结果取决于上下文:如果上下文不支持分布式模式,但凭据提供程序需要此模式,则部署将失败。同样,如果上下文需要分布式模式,但凭据提供程序不支持分布式模式,则部署将失败。在所有其他情况下,将遵循首选设置。

下表显示了 XenMobile 中的 SCEP 分发:

上下文 支持 SCEP 需要 SCEP
iOS 配置文件服务
iOS 移动设备管理注册
iOS 配置配置文件
SHTP 注册
SHTP 配置
Windows 平板电脑注册
Windows 平板电脑配置 否,但适用于 Windows 10 和 Windows 11 的 Wi-Fi 设备策略除外

证书吊销

有三种类型的吊销。

  • 内部吊销: 内部吊销会影响 XenMobile 维护的证书状态。XenMobile 在评估所提供的证书或提供证书的 OCSP 状态信息时会考虑此状态。凭据提供程序配置决定了此状态在各种条件下如何受到影响。例如,凭据提供程序可以指定在证书从设备中删除时将其标记为已吊销。
  • 外部传播吊销: 也称为 XenMobile 吊销,此类型的吊销适用于从外部 PKI 获取的证书。当 XenMobile 在凭据提供程序配置定义的条件下内部吊销证书时,该证书会在 PKI 上被吊销。
  • 外部诱导吊销: 也称为 PKI 吊销,此类型的吊销也仅适用于从外部 PKI 获取的证书。每当 XenMobile 评估给定证书状态时,XenMobile 都会向 PKI 查询该状态。如果证书被吊销,XenMobile 会内部吊销该证书。此机制使用 OCSP 协议。

这三种类型并非相互排斥,而是共同适用。外部吊销或独立发现可能导致内部吊销。内部吊销可能会影响外部吊销。

证书续订

证书续订是现有证书的吊销和另一个证书的颁发的组合。

XenMobile 首先尝试获取新证书,然后再吊销旧证书,以避免在颁发失败时服务中断。对于分布式(支持 SCEP)交付,吊销也仅在证书成功安装到设备上之后发生。否则,吊销会在新证书发送到设备之前发生。该吊销与证书安装的成功或失败无关。

吊销配置要求您指定一个特定持续时间(以天为单位)。当设备连接时,服务器会验证证书的 NotAfter 日期是否晚于当前日期减去指定持续时间。如果证书满足该条件,XenMobile 将尝试续订证书。

创建凭据提供程序

配置凭据提供程序主要取决于您为凭据提供程序选择的颁发实体和颁发方法。您可以区分使用内部实体或外部实体的凭据提供程序:

  • 自由裁量实体是 XenMobile 内部的实体,属于内部实体。自由裁量实体的颁发方法始终是签名。签名意味着在每次颁发操作中,XenMobile 使用为该实体选择的 CA 证书签署新的密钥对。密钥对是在设备上还是在服务器上生成取决于您选择的分发方法。

  • 外部实体是您公司基础结构的一部分,包括 Microsoft CA。

  1. 在 XenMobile 控制台中,单击右上角的齿轮图标,然后单击“设置 > 凭据提供程序”。

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

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

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

    • 名称: 键入新提供程序配置的唯一名称。此名称稍后用于在 XenMobile 控制台的其他部分中标识配置。
    • 描述: 描述凭据提供程序。尽管此字段是可选的,但描述可以提供有关此凭据提供程序的有用详细信息。
    • 颁发实体: 单击证书颁发实体。
    • 颁发方法: 单击“签名”或“获取”作为系统从配置的实体获取证书的方法。对于客户端证书身份验证,请使用“签名”。
    • 如果“模板”列表可用,请选择您在凭据提供程序的 PKI 实体下添加的模板。

      当在“设置 > PKI 实体”中添加 Microsoft 证书服务实体时,这些模板将可用。

  4. 单击“下一步”。

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

  5. 在“凭据提供程序: 证书签名请求”页面上,根据您的证书配置配置以下内容:

    • 密钥算法: 为新密钥对选择密钥算法。可用值为 RSADSAECDSA

    • 密钥大小: 键入密钥对的大小(以位为单位)。此字段为必填项。

      允许的值取决于密钥类型。例如,DSA 密钥的最大大小为 1024 位。为避免因底层硬件和软件而导致的误报,XenMobile 不强制执行密钥大小。在生产环境中激活凭据提供程序配置之前,请务必在测试环境中对其进行测试。

    • 签名算法: 单击新证书的值。值取决于密钥算法。

    • 主题名称: 必填。键入新证书主题的专有名称 (DN)。例如:CN=${user.username}, OU=${user.department}, O=${user.companyname},C=${user.c}\endquotation

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

      • 密钥算法: RSA
      • 密钥大小: 2048
      • 签名算法: SHA256withRSA
      • 主题名称: cn=$user.username
    • 要向“主题备用名称”表中添加条目,请单击“添加”。选择备用名称的类型,然后在第二列中键入一个值。

      对于客户端证书身份验证,请指定:

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

        与主题名称一样,您可以在值字段中使用 XenMobile 宏。

  6. 单击“下一步”。

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

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

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

    如果您选择了“首选分布式:设备端密钥生成”或“仅分布式:设备端密钥生成”,请单击 RA 签名证书和 RA 加密证书。同一个证书可用于两者。这些证书的新字段将显示。

  8. 单击“下一步”。

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

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

    • 在“吊销已颁发证书”中,选择指示何时吊销证书的选项之一。
    • 要指示 XenMobile 在证书被吊销时发送通知:将“发送通知”的值设置为“”,然后选择一个通知模板。

    • 要在证书从 XenMobile 吊销时在 PKI 上吊销证书:将“在 PKI 上吊销证书”设置为“”,然后在“实体列表”中单击一个模板。“实体列表”显示所有具有吊销功能的可用实体。当证书从 XenMobile 吊销时,吊销调用将发送到从“实体列表”中选择的 PKI。
  10. 单击“下一步”。

    此时将显示“凭据提供程序: PKI 吊销”页面。在此页面上,您可以确定如果证书被吊销,要在 PKI 上执行哪些操作。您还可以选择创建通知消息。

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

    • 将“启用外部吊销检查”的设置更改为“”。将显示更多与 PKI 吊销相关的字段。
    • 在“OCSP 响应程序 CA 证书”列表中,单击证书主题的专有名称 (DN)。

      您可以将 XenMobile 宏用于 DN 字段值。例如:CN=${user.username}, OU=${user.department}, O=${user.companyname}, C=${user.c}\endquotation

    • 在“证书被吊销时”列表中,单击以下在证书被吊销时对 PKI 实体执行的操作之一:

      • 不执行任何操作。
      • 续订证书。
      • 吊销并擦除设备。
    • 要指示 XenMobile 在证书被吊销时发送通知:将“发送通知”的值设置为“”。

      您可以选择两种通知选项:

    • 如果您选择“选择通知模板”,则可以选择一个预先编写的通知消息,然后对其进行自定义。这些模板位于“通知模板”列表中。
    • 如果您选择“输入通知详细信息”,则可以编写自己的通知消息。除了提供收件人的电子邮件地址和消息外,您还可以设置发送通知的频率。
  12. 单击“下一步”。

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

    • 续订证书。您可以选择在续订时发送通知,并选择将已过期的证书排除在此操作之外。
    • 对即将过期的证书发出通知(续订前通知)。
  13. 在“凭据提供程序: 续订”页面上,如果要续订过期证书,请执行以下操作:

    将“在证书过期时续订证书”设置为“”。将显示更多字段。

    • 在“在证书到期前”字段中,键入在证书到期前多少天续订证书。
    • (可选)选择“不续订已过期的证书”。在这种情况下,“已过期”表示 NotAfter 日期已过,而不是证书已被吊销。XenMobile 不会在证书内部吊销后续订证书。

    要指示 XenMobile 在证书续订时发送通知:将“发送通知”的值设置为“”。要指示 XenMobile 在证书即将过期时发送通知:将“在证书即将过期时通知”设置为“”。 对于这两种选择,您可以选择两种通知选项:

    • 选择通知模板: 选择一个预先编写的通知消息,然后对其进行自定义。这些模板位于“通知模板”列表中。
    • 输入通知详细信息: 编写自己的通知消息。提供收件人的电子邮件地址、消息以及发送通知的频率。

    在“在证书到期前通知”字段中,键入在证书到期前多少天发送通知。

  14. 单击“保存”。

    凭据提供程序将显示在“凭据提供程序”表中。

凭据提供程序