2012-06-22 12 views
4

Я работаю над откатом моей собственной службы MDM, и я пытаюсь объединить полезные данные SCEP и MDM, поскольку документ протокола MDM от Apple предлагает , Я создал свою собственную веб-службу SCEP в C# .Net, и я знаю, что устройство может получить действительный сертификат, когда я просто отправлю полезную нагрузку SCEP. Однако, когда я также включаю полезную нагрузку MDM, которая указывает на UUID полезной нагрузки SCEP с помощью ключа IdentityCertificateUUID, я получаю следующую ошибку: «Сервер регистрации не предоставил действительный сертификат идентификации.« Эта конфигурация является той, которая отправляется после пользователь выбирает установку начальной конфигурации регистрации (этап 1 фазы 2 в диаграмме this).Ошибка при объединении полезных данных scep и mdm - сервер регистрации не предоставил действительный сертификат удостоверения

Устройство, похоже, даже не пытается подключиться к моему серверу, и благодаря регистрации на стороне сервера я знаю, что он никогда не достигает моей страницы веб-сервиса SCEP. Это, по-видимому, указывает на то, что что-то не так с сертификатом, который я использую для подписи полезной нагрузки. Я отдельно попытался подписать его с моим SSL-сертификатом (от доверенного корневого центра), моим клиентом MDM push-сертификатом (прикованным из нашего сертификата поставщика) и моим самозаверяющим сертификатом центра сертификации (созданным через makecert.exe), который служба SCEP использует для выдачи новых сертификатов (то есть сертификатов идентификации устройства).

Я просмотрел выходные данные iPCU (утилита конфигурирования iPhone), когда создаю профиль с полезными нагрузками MDM и SCEP, и это не действительный профиль (я даже попытался скопировать его почти по оптовой). Однако, когда я устанавливаю профиль через iPCU, ошибка не возникает, и она начинает процесс регистрации SCEP без проблем.

Сторона примечания - использование существующего поставщика MDM здесь не вариант.

Ниже профиля я использую:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
    <plist version="1.0"> 
    <dict> 
     <key>PayloadContent</key> 
     <array> 
     <dict> 
      <key>PayloadContent</key> 
      <dict> 
      <key>Challenge</key> 
      <string>this is a challenge</string> 
      <key>Key Type</key> 
      <string>RSA</string> 
      <key>Key Usage</key> 
      <integer>5</integer> 
      <key>Keysize</key> 
      <integer>1024</integer> 
      <key>Name</key> 
      <string>mycompany</string> 
      <key>Retries</key> 
      <integer>3</integer> 
      <key>RetryDelay</key> 
      <integer>0</integer> 
      <key>Subject</key> 
      <array><array><array> 
       <string>CN</string> 
       <string>mycompany</string> 
      </array></array></array> 
      <key>URL</key> 
      <string>https://mysite.com/scep.aspx</string> 
      </dict> 
      <key>PayloadDescription</key> 
      <string>Configures SCEP</string> 
      <key>PayloadDisplayName</key> 
      <string>SCEP (mycompany)</string> 
      <key>PayloadIdentifier</key> 
      <string>com.mycompany.mdm.scep1</string> 
      <key>PayloadOrganization</key> 
      <string></string> 
      <key>PayloadType</key> 
      <string>com.apple.security.scep</string> 
      <key>PayloadUUID</key> 
      <string>57225d3d-0758-4d23-8093-e4d8c9bbd47c</string> 
      <key>PayloadVersion</key> 
      <integer>1</integer> 
     </dict> 
     <dict> 
      <key>AccessRights</key> 
      <integer>3</integer> 
      <key>CheckInURL</key> 
      <string>mysite.com/checkin.aspx</string> 
      <key>CheckOutWhenRemoved</key> 
      <false/> 
      <key>IdentityCertificateUUID</key> 
      <string>57225d3d-0758-4d23-8093-e4d8c9bbd47c</string> 
      <key>PayloadDescription</key> 
      <string>Configures MobileDeviceManagement.</string> 
      <key>PayloadIdentifier</key> 
      <string>com.mycompany.mdm.mdm2</string> 
      <key>PayloadOrganization</key> 
      <string></string> 
      <key>PayloadType</key> 
      <string>com.apple.mdm</string> 
      <key>PayloadUUID</key> 
      <string>ed0ae41d-1aa7-4721-9fe9-139c1072132c</string> 
      <key>PayloadVersion</key> 
      <integer>1</integer> 
      <key>ServerURL</key> 
      <string>https://mysite.com/checkin.aspx</string> 
      <key>SignMessage</key> 
      <false/> 
      <key>Topic</key> 
      <string>com.apple.mgmt.mypushsubject</string> 
      <key>UseDevelopmentAPNS</key> 
      <true/> 
     </dict> 
     </array> 
     <key>PayloadDescription</key> 
     <string>Profile description.</string> 
     <key>PayloadDisplayName</key> 
     <string>Test Profile</string> 
     <key>PayloadIdentifier</key> 
     <string>com.mycompany.mdm</string> 
     <key>PayloadOrganization</key> 
     <string>mycompany</string> 
     <key>PayloadRemovalDisallowed</key> 
     <false/> 
     <key>PayloadType</key> 
     <string>Configuration</string> 
     <key>PayloadUUID</key> 
     <string>58-4037-478c-9b1e-ef6f810065cb</string> 
     <key>PayloadVersion</key> 
     <integer>1</integer> 
    </dict> 
    </plist> 
+0

Успешно ли реализован сервер mdm. Если да, то можете ли вы, пожалуйста, помочь мне настроить мой собственный. Скажите, пожалуйста, о том, как работает сервер. – Imran

+0

расскажите, как создать профиль регистрации MDM, – Saurabh

ответ

2

Я связался с Apple, об этом.

Очевидно, что вы хотите отправить объединенную полезную нагрузку SCM & SCEP на шаге 2 фазы 3 диаграммы, которую я связал в своем вопросе, который является профилем, который отправляется после регистрации OTA. По словам Apple, вам нужны два отдельных сертификата (что означает две заявки SCEP) - один для регистрации OTA и один для регистрации в MDM.

+1

Невозможно понять, почему устройство требует регистрации SCEP в течение двух раз. Apple могла бы лучше объяснить рациональность этого требования. Не имеет смысла выдавать сертификат удостоверения два раза на одно и то же устройство. – vetti

+0

Сочетание полезной нагрузки MDM с дополнительной полезной нагрузкой SCEP тоже сработало для меня. Из-за того, что для регистрации в MDM требуется другой сертификат SCEP, я думаю, что это может быть из-за того, что MDM может управляться другим сервером из того, который выдает профили конфигурации, поэтому для работы с ним может потребоваться отдельный сертификат. На самом деле один и тот же сертификат может использоваться как для полезной нагрузки SCEP. –

+1

Это потому, что настройка OTA и регистрация MDM - это два разных процесса и ничего не знают друг о друге. Конфигурация OTA не должна использоваться для развертывания MDM (вместо этого он мог бы развертывать другие профили OTA, такие как настройки электронной почты), а MDM не нужно развертывать через OTA (например, он может быть развернут прямо на телефон через Apple Configurator) , Оба процесса нуждаются в регистрации SCEP, но поскольку они полностью развязаны, у них нет возможности использовать один и тот же. –

 Смежные вопросы

  • Нет связанных вопросов^_^