gpt4 book ai didi

ios - 身份证书-IOS MDM

转载 作者:可可西里 更新时间:2023-11-01 03:32:55 27 4
gpt4 key购买 nike

我对 Profile Payload 中的身份证书有几个疑问。

原谅我的无知,如果有些问题是基本的。

1.)我发现,我们可以直接使用SCEP标准或PKCS12证书来识别设备。建议使用 SCEP,因为只有设备知道私钥。因此,如果我要实现 SCEP 服务器,我是否需要维护映射到设备的身份证书的公钥列表,以便以后可以使用它进行加密?

2.) 实现 SCEP 服务器的最佳方式是什么?是否有任何可靠的健壮方法可以采用它而不是我们自己编写所有内容?

3.) 如果身份证书过期了怎么办?

作为基本版本,我尝试在不使用 SCEP 的情况下将自己的 p12 证书添加到 Payload。

我尝试在身份有效负载内容 key 中添加 base64 编码的 p12 证书,如某些链接引用中所述。我得到一个错误

The identity certificate for “Test MDM Profile” could not be found

在安装配置文件时。

  identity_payload['PayloadType'] = 'com.apple.security.pkcs12'
identity_payload['PayloadUUID'] = "RANDOM-UUID-STRING"
identity_payload['PayloadVersion'] = 1
identity_payload['PayloadContent'] = Base64.encode64(File.read "identity.p12")
identity_payload['Password'] = 'p12Secret'

当我检查 'Configuration Profile key reference' 时,有人提到我应该在数据中发送有效载荷的二进制表示。所以我尝试了,

  identity_payload['PayloadContent'] = ConvertToBinary(File.read "identity.p12")

我明白了,

The password for the certificate “IdentityCertificate” is incorrect

我正在提供用于导出 p12 证书的有效密码。

我做错了什么?

最佳答案

回答你的问题:

1) 我是否需要维护映射到设备的身份证书的公钥列表,以便以后使用它进行加密?

是的。你需要某种映射。您可以采用以下几种方式:

  • 只需在数据库中存储证书通用名称和设备 UDID 之间的映射即可。
  • 使 CN 包含 UDID(我喜欢这种方法,因为它简化了初始检查)

正如您所指出的,您将需要公钥来加密此设备的有效载荷。

2) 实现 SCEP 服务器的最佳方式是什么?是否有任何可靠的健壮方法可以采用它而不是我们自己编写所有内容?

有 SCEP 的开源实现。例如 jSCEP有它(我用过)和EJBCA有它(我也用过)。我看到了其他实现(在 Ruby 等中)。因此,您可以找到适合您的堆栈的选择。

3) 您需要在身份证书过期之前更新身份证书(与任何其他证书的方式相同)。

4) 如果您的配置文件不起作用,我建议您在 iPhone 配置实用程序中创建相同的配置文件并与您的进行比较。大多数时候,您只错过了一个标签或类似的东西(如果不与工作标签进行比较,则需要花费很多时间才能弄清楚)。

关于ios - 身份证书-IOS MDM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29814955/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com