Как да управлявате изтичането на сертификата на Enterprise Distribution?

Нашият клиент току-що се присъедини към iOS Developer Enterprise Program. Те са подписали приложението (разработено от нас) с тяхната Enterprise Distribution и са го инсталирали успешно на някои устройства чрез MDM.

Доколкото знам, когато сертификатът ми за разпространение, който не е предприятие, изтече, трябва да го подновя. Това изтичане деактивира всички приложения, подписани с изтеклия сертификат, веднага щом устройствата проверят валидността на сертификата спрямо OCSP сървъра на Apple.

Като алтернатива мога да оттегля дистрибуцията си, която не е корпоративна, преди датата на изтичане и да поискам нова от Apple. Приложенията, подписани с оттегления сертификат, например Ad Hoc бета приложения, ще бъдат деактивирани по същия механизъм.

Така че с моята програма за разработчици не мога да имам два валидни сертификата за разпространение едновременно. Добре, като разработчици можем да живеем с това.

Може ли клиентът ни да има два валидни сертификата за корпоративно разпространение едновременно с корпоративната програма за разработчици на iOS?

Според Apple:

Валидиране на сертификат

При първото отваряне на приложение на устройство сертификатът за разпространение се потвърждава чрез свързване с OCSP сървъра на Apple. Освен ако сертификатът не е отменен, приложението може да работи. Невъзможността да се свържете или да получите отговор от OCSP сървъра не се тълкува като отмяна. За да провери състоянието, устройството трябва да може да достигне до ocsp.apple.com. Вижте „Изисквания за мрежова конфигурация“ (страница 9).

OCSP отговорът се кешира на устройството за периода от време, посочен от OCSP сървъра — в момента между 3 и 7 дни. Валидността на сертификата няма да бъде проверена отново, докато устройството не се рестартира и кешираният отговор не изтече. Ако по това време бъде получено оттегляне, приложението ще бъде възпрепятствано да работи. Отмяната на сертификат за разпространение ще направи невалидни всички приложения, които сте разпространили.

Приложението няма да работи, ако сертификатът за разпространение е изтекъл. В момента сертификатите за разпространение са валидни за една година. Няколко седмици преди сертификатът ви да изтече, поискайте нов сертификат за разпространение от iOS DevCenter, използвайте го, за да създадете нови профили за предоставяне на разпространение и след това прекомпилирайте и разпространете актуализираните приложения на вашите потребители. Вижте „Предоставяне на актуализирани приложения“ (страница 10)

Пропускам ли нещо или е възможно служителите, с потенциално стотици устройства с iOS с няколко вътрешни приложения, да не могат да отворят приложенията си, докато чакат приложенията, напуснали оставката?


person zapador    schedule 09.02.2012    source източник
comment
Можете ли да предоставите връзка към този цитат?   -  person Lou Franco    schedule 10.02.2012
comment
За съжаление не мога. Прочетох го преди месеци и изглежда, че Apple премахна това съдържание, но можете да го намерите тук: http://es.scribd.com/doc/72810321/FA-Wireless-Enterprise-App-Distribution   -  person zapador    schedule 10.02.2012
comment
Всеки, който търси горния цитат: apple.com/hk/en /ipad/business/docs/   -  person mattyohe    schedule 15.07.2014


Отговори (5)


Това е проблем, с който се занимаваме от последните 2 години. Вътрешните приложения спират да работят след 1 година. За организация като нашата е огромно упражнение да възстановява стотици приложения и да ги преразпределя на хиляди устройства всяка година.

За нас това е едномесечно упражнение, при което възстановяваме всички наши приложения и информираме всички потребители да получат нови чрез канала за разпространение. Все още всяка година някои потребители остават с нефункционални приложения.

Подадох заявка за подобрение в Apple (Bug ID#9848075) за това и все още чакам отговор.

РЕДАКТИРАНЕ: Гореспоменатата грешка вече е затворена. Ето официалния отговор:

Сертификатите за разпространение за предприятия вече са с продължителност 3 години.

person Vin    schedule 10.02.2012
comment
Здравей Вин, моят клиент ми каза, че може да има два валидни сертификата. Затова смятам, че процесът на подаване на оставка на всички IPA може да бъде доста бърз с помощта на скриптове и тъй като не е необходимо да чакате датата на изтичане... Предполагам, че всичко може да бъде готово за този ден и всички служители могат да получат подадените приложения чрез MDM инструмент . - person zapador; 16.02.2012
comment
Корпоративните сертификати вече продължават 3 години. Профилът за осигуряване обаче изтича след 1 година. Това означава, че за да продължите да работите на дадено приложение, просто трябва да пуснете нов профил за осигуряване за приложими идентификатори на приложения. Това може да е просто вашият профил със заместващ знак (*). Можете да използвате MDM система, за да изтласкате тези профили автоматично. - person Mike Weller; 18.06.2013
comment
здравей Вин, защо не използваш MDM за инсталиране на новите версии на всички устройства? - person Jordi Corominas; 09.07.2013
comment
Съмнявам се, че приложението трябва да бъде преустроено, само преподписано. Имам профил за осигуряване, който ще трябва да бъде преподписан скоро, така че ще опитам просто да подпиша отново съществуващите архиви на приложения, преди да се върна и да се опитам да ги създам отново всички. - person Richard Venable; 13.01.2014
comment
@RichardVenable повторното подписване на приложенията би свършило работа, но все пак ще трябва да получите това ново приложение на устройствата на потребителите - person Vin; 13.01.2014
comment
И така, какво се случва, ако сертификатът ми не е изтекъл, но профилът ми за осигуряване е изтекъл. Това ще спре ли потребителите да стартират приложението? - person Jonas Stawski; 24.09.2015
comment
да, аз също се чудя как ще бъде, ако профилът ми за осигуряване е изтекъл, но не и сертификатът ми. В момента имам приложения, чийто профил е изтекъл и все още мога да стартирам приложението. Би било хубаво, ако Apple има ясно обяснение за предоставяне на профил като Сертификати - person Min Soe; 15.12.2015
comment
Чудех се каква е разликата между приложенията на AppStore, че не се сблъскват с този проблем? Защо ги виждаме само в корпоративни или Ad-Hod приложения - person Husein Behboudi Rad; 21.08.2018
comment
@JonasStawski, моите сертификати за разпространение са готови и работят. Но профилът за осигуряване ще изтече, редактирах профила и сега този профил за осигуряване е добре. Ще спре ли да работи приложението с предишен профил? Трябва ли да актуализирам приложението, да подпиша код с този профил за осигуряване и да помоля потребителите да актуализират приложението? - person Jen Jose; 24.09.2018
comment
@ JonasStawski @ MinSoe Дори сертификатът ви да е валиден, приложението ви ще спре да работи веднага щом профилът ви за осигуряване изтече. Това е моят опит - приложението ще спре да се стартира на устройствата на потребителите. (Може би вече сте го разбрали - публикувам главно за видимост, така че другите хора, които случайно попаднат на тази тема, да знаят какво да очакват.) - person Ilya Vinogradov; 12.07.2019

Липсващата връзка сега е http://help.apple.com/iosdeployment-apps/?lang=en#app43ad74a3

Няколко седмици преди сертификатът ви да изтече, поискайте нов сертификат за разпространение от iOS Dev Center, използвайте го, за да създадете нови профили за осигуряване на разпространение и след това прекомпилирайте и разпространете актуализираните приложения на вашите потребители.

Документът описва също как да актуализирате приложения. Има рамки, които включват лесно механизма за актуализиране във вашето приложение. Напр. Хокей, https://github.com/therealkerni/HockeyKit

Цитирам цялата статия:

Проверка на сертификат

Първият път, когато потребител отвори приложение, сертификатът за разпространение се потвърждава чрез свързване с OCSP сървъра на Apple. Освен ако сертификатът не е отменен, приложението може да работи. Невъзможността да се свържете или да получите отговор от OCSP сървъра не се тълкува като отмяна. За да провери състоянието, устройството трябва да може да достигне до ocsp.apple.com. Вижте Изисквания за мрежова конфигурация.

OCSP отговорът се кешира на устройството за периода от време, посочен от OCSP сървъра - в момента между 3 и 7 дни. Валидността на сертификата не се проверява отново, докато устройството не се рестартира и кешираният отговор не изтече. Ако по това време бъде получено оттегляне, приложението се възпрепятства да работи. Отмяната на сертификат за разпространение прави невалидни всички приложения, които сте разпространили.

Приложението няма да работи, ако сертификатът за разпространение е изтекъл. В момента сертификатите за разпространение са валидни за една година. Няколко седмици преди сертификатът ви да изтече, поискайте нов сертификат за разпространение от iOS Dev Center, използвайте го, за да създадете нови профили за осигуряване на разпространение и след това прекомпилирайте и разпространете актуализираните приложения на вашите потребители. Вижте Предоставяне на актуализирани приложения.

person Anton    schedule 21.02.2012

Apple преработи документацията...

Приложението няма да работи, ако сертификатът му за разпространение е изтекъл. Понастоящем сертификатите за разпространение са валидни за една година и можете да имате два активни сертификата едновременно. Вторият сертификат има за цел да осигури припокриващ се период, през който можете да актуализирате приложенията си, преди първият сертификат да изтече.

Например, шест месеца преди изтичането на вашия сертификат за разпространение, създайте нов сертификат и го използвайте, за да актуализирате приложенията си за следващата година. За да направите това, вие заявявате нов сертификат за разпространение от iOS Dev Center (не отменяйте първия си сертификат), използвате го, за да създадете нови профили за осигуряване на разпространение за всяко от вашите приложения и след това прекомпилирате и разпространявате актуализираните приложения на вашите потребители . Вижте Предоставяне на актуализирани приложения.

person tdios    schedule 11.07.2012

Забележка: Йерархичният текст по-долу показва пътя до информацията, която обяснява решението. Трябва да отидете до (разгънете стрелките до) елементите в страничната лента, за да видите решението (Мани, моля, не изтривайте тази информация - тя е там, за да насочи зрителя към решението.)

Актуална документация от Apple:

Distributing Enterprise Apps for iOS Devices
    In-house apps
      Certificate validation
      Providing updated apps

http://developer.apple.com/library/ios/#featuredarticles/FA_Wireless_Enterprise_App_Distribution/Introduction/Introduction.html

От предоставяне на актуализирани приложения:

Можете да имате два активни сертификата за разпространение едновременно; всеки е независим от другия. Вторият сертификат има за цел да осигури припокриващ се период, през който можете да актуализирате приложенията си, преди първият сертификат да изтече. Когато поискате своя втори сертификат за разпространение от iOS Dev Center, уверете се, че не отменяте първия си сертификат.

Това, че няма безпроблемен начин да направим това, така че всички наши вътрешни клиенти да не трябва да виждат това, е доста ужасна липса на функционалност.

person Alex Zavatone    schedule 14.11.2012
comment
Линкът е повреден :( - person cleverbit; 04.10.2016

Само малко проследяване.

оригинал:

Доколкото знам, когато изтече сертификатът ми за разпространение, който не е предприятие, трябва да го подновя. Това изтичане деактивира всички приложения, подписани с изтеклия сертификат, веднага щом устройствата проверят валидността на сертификата спрямо OCSP сървъра на Apple.

Това не е съвсем вярно, ако го разбирам правилно. Тази информация от Apple и както е обяснено тук казва обратното.

Какво се случва, ако сертификатът ми изтече или бъде отменен?

...

Сертификат за разпространение на iOS (App Store)

  • Ако вашето членство в програмата за разработчици на iOS е валидно, вашите съществуващи приложения в App Store няма да бъдат засегнати. Вече обаче няма да можете да изпращате нови приложения или актуализации в App Store.
person Kost    schedule 19.09.2013
comment
Здравей Кост, ти си прав за App Store. Работата е там, че се изразих зле, говорех за ad hoc дистрибуция, при която Apple не оставя приложението ви. (или направи нещо) - person zapador; 20.09.2013
comment
Важно е да се отбележи, че правилата са различни за корпоративни и некорпоративни приложения. - person Alex Zavatone; 11.02.2014
comment
Въпросът е свързан с програмата Apple Developer Enterprise, а не с програмата за разработчици на Apple. Вашият отговор е правилен за програмата Apple Developer, която е извън контекста на този въпрос. - person Sunny Drall; 09.12.2020