#ios #xcode #xcode10.2
#iOS #xcode #enterprise-дистрибутив
Вопрос:
У меня есть роль «участника» в команде «Apple Developer Enterprise Program». Когда я пытаюсь экспортировать для развертывания, появляется сообщение — вам не разрешено выполнять эту операцию, пожалуйста, обратитесь к одному из администраторов вашей команды. Исходя из ограниченных знаний, я понимаю, что для экспорта для развертывания мне нужна роль администратора. Я прав? Есть ли что-то вроде того, что администратор моей команды отправляет мне какой-либо сертификат / ключ, и тогда я мог бы его использовать? Если да, то как?
ОБНОВЛЕНИЕ (на основе ответов)
Упрощение вопроса:
Может ли «участник» команды отправить запрос на получение сертификата подписи дистрибутива? Да или нет. Если да, то как?
Если ответ на вышеуказанный вопрос положительный, как только участник получит сертификат от администратора — как он должен его использовать? Способ экспорта для развертывания от имени администратора — Продукт> Архив> Экспорт, и я получаю IPA. Причина, по которой я задал этот вопрос, заключается в том, что я не могу сделать то же самое в команде, членом которой я просто являюсь. Возможно ли вообще, что я могу это сделать, или это может сделать только администратор?
P.S. Ответ в одну или две строки очень поможет вместо другой ссылки на веб-сайт.
Ответ №1:
Член команды не может запрашивать сертификаты подписи распространения, только сертификаты подписи разработки. Вам нужно попросить администратора (или другого человека, который получил доступ к сертификату дистрибутива от администратора) передать вам сертификат подписи дистрибутива. Они могут экспортировать свой сертификат из своей цепочки ключей или Xcode (Настройки-> Учетные записи-> Удостоверения подписи) в формате .p12 и отправить его вам.
Член команды, вероятно, предназначен для лиц, которым не доверено подписывать код от имени компании. Именно так Apple предполагала, что роли будут работать:
Агент команды Агент команды несет юридическую ответственность за команду и выступает в качестве основного контакта с Apple. Агент команды может приглашать членов команды и изменять уровень доступа любого другого члена команды. Существует только один агент команды.
Администратор команды Администратор команды может устанавливать уровни привилегий других членов команды, кроме агента команды. Администраторы команды управляют всеми ресурсами, используемыми для подписи ваших приложений, либо во время разработки, либо когда ваша команда готова распространять приложение. Администраторы команды — единственные люди в команде, которые могут подписывать приложения для распространения на устройствах без разработки. Администраторы команды также одобряют запросы на подписание сертификатов, сделанные членами команды.
Участник команды Участник команды может подписывать приложения во время разработки, но только после того, как он или она отправит запрос на сертификат подписи для разработки и этот запрос будет одобрен администратором команды.
Комментарии:
1. Таким образом, член команды может сделать запрос на сертификат подписи разработки, но может ли он / она сделать то же самое для сертификата подписи дистрибутива? Или это может сделать только администратор? Если участник может это сделать, то что он должен делать после получения сертификата? Как использовать это при экспорте для развертывания в органайзере?
2. Участник не может запрашивать сертификаты подписи дистрибутива или загружать существующие с портала. Я думаю, что суть участников в том, что им не должно быть разрешено публиковать приложения от имени компании. Но я думаю, что ничто не мешает администраторам экспортировать свои сертификаты из Xcode или связки ключей и передать их вам, чтобы вы все равно могли подписаться на распространение.
3. Спасибо за разъяснения. Допустим, администратор переходит к доступу к связке ключей для экспорта сертификата распространения. Какой формат выбрать — .cer или .p12. Нужен ли какой-либо другой файл? Как только администратор отправит (может быть, по электронной почте?) я полагаю, что этот файл для участника необходимо будет установить в своем доступе к связке ключей? Что после этого? Я, как администратор, захожу в «Организация»> «Архив»> «Экспорт» — затем выбираю «моя команда» — затем он проверяет мою команду на наличие всех прав и генерирует IPA. Я не думаю, что простое включение этого в keychain access будет работать таким образом. Или мне нужно изменить способ экспорта для развертывания?
4. .p12, безусловно, будет работать, но я думаю, что .cer тоже работает. .p12 — это то, что использует Xcode, если вы экспортируете изнутри Xcode (Настройки-> Учетные записи-> Удостоверения подписи) Администратор может отправить вам файл любым способом (по почте и т. Д.), Он защищен парольной фразой при экспорте. Просто дважды щелкните файл .p12, введите кодовую фразу и импортируйте ее в свою связку ключей. Вам также нужен профиль подготовки, но к которому у вас есть доступ как у участника. Xcode даже автоматически загружает его для вас, если вам повезет.
5. Привет @Prasoon, я столкнулся с такой же ситуацией. Так что, по сути, просто импортируйте файл .p12 в keychain, а затем заархивируйте и загрузите двоичный файл в Xcode, как обычно? Нужно ли мне сначала установить флажок «Автоматически управлять подписью» в моем проекте? Спасибо
Ответ №2:
Да, можно подписывать приложения для распространения в качестве члена команды. Вам не нужно быть администратором команды, чтобы подписывать приложения для распространения. Однако для этого вам необходимо иметь соответствующий сертификат распространения (и закрытый ключ) в вашей связке ключей. (Также — ваш идентификатор пакета, сертификат распространения и профиль подготовки должны быть согласованы.)
Вы не сможете создать свой собственный сертификат распространения, это могут сделать только администраторы или выше. Таким образом, вам нужно будет получить сертификат распространения. от кого-то, у кого это уже есть. Попросите их экспортировать его из своей цепочки ключей в виде файла p12. Когда вы получите этот файл, дважды щелкните его, введите пароль и сертификат распространения. и закрытый ключ будет установлен на вашей связке ключей.
Ответ №3:
Я считаю, что только администратор команды (и, конечно, Team Agent) могут создавать сертификаты распространения, однако им разрешено запрашивать несколько сертификатов распространения, поэтому вам нужно создать один для вас.
В руководстве по распространению приложения говорится следующее
Администратор команды может устанавливать уровни привилегий для других членов команды, кроме агента команды. Администраторы команды управляют всеми ресурсами, используемыми для подписи ваших приложений, либо во время разработки, либо когда ваша команда готова распространять приложение. Администраторы группы могут редактировать идентификатор приложения, чтобы включить службы приложений и создавать технологические идентификаторы, используемые во всей системе. Администраторы группы могут подписывать приложения для распространения на устройствах без разработки.
Комментарии:
1. Итак, администратор команды сгенерирует для меня сертификат распространения? Csr-файл? Требуется какой-либо другой файл? Как я должен использовать этот сертификат при экспорте из organizer?
2. Посмотрите в руководстве по распространению приложений в разделе -> Распространение приложений Apple Developer Enterprise Program. Я уверен, что он достаточно хорошо ответит на все эти вопросы. Но в основном вам нужен идентификатор приложения, профиль подготовки и сертификат распространения. В нем упоминается: «При необходимости Xcode создает для вас сертификат распространения, профиль подготовки и явный идентификатор приложения». Но именно поэтому вам нужно, чтобы team admin сгенерировал их для установки в вашей собственной цепочке ключей и т. Д. Еще раз, однако, я рекомендую ознакомиться с этим руководством App Dist, чтобы помочь вам лучше понять.
3. Эта цитата, особенно выделенная жирным шрифтом, больше не является точной
4. Я внес правку, чтобы цитата теперь соответствовала тексту по ссылке, на которую ссылается ссылка. Следует отметить, что участники команды также могут подписывать приложения для распространения при условии, что им предоставлен общий сертификат распространения и установлен на их связке ключей.