Получение ошибки «Необходимо подтвердить Apple ID и заявление о конфиденциальности Apple».
Привет, мы получаем эту ошибку при использовании fastlane sigh / get_provisioning_profile. Я не думаю , что это Fastlane вопрос , как это происходило до case1 Вариант 2 и была исправлена путем принятия соглашения или другой неизвестной причине ..
Необходимо подтвердить Apple ID и заявление о конфиденциальности Apple. Пожалуйста, войдите вручную на (или ), чтобы подтвердить заявление.
Мы пошли к
но одобрять там нечего.
Любые идеи?
7 ответов
Резюме:
Случай 1:
* Вы не хотите, чтобы двухфакторная аутентификация была включена
- Обновите Gemfile с помощью fastlane 2.173.0 и запустите
bundle install
,bundle update fastlane
, илиbundle update
- Использовать
SPACESHIP_SKIP_2FA_UPGRADE=1
в вашем CI
Случай 2:
* У вас включена двухфакторная аутентификация
* Вам нужна только некорпоративная учетная запись
- Генерировать
APP_STORE_CONNECT_API_KEY
из магазина приложений подключитесь с помощью роли владельца счета .
Это выглядит как
-----BEGIN PRIVATE KEY-----\nabcdef12345abcdef12345\n-----END PRIVATE KEY-----
- Добавьте его в свой CI как переменную среды APP_STORE_CONNECT_API_KEY
lane :get_app_store_connect_api_key do
ensure_env_vars(
env_vars: [
'APP_STORE_CONNECT_API_KEY'
]
)
app_store_connect_api_key(
key_id: "12345ABCDEF",
issuer_id: "1234abcd-12ab-12ab-12ab-123456abcdef",
key_content: "#{ENV["APP_STORE_CONNECT_API_KEY"]}".gsub('\n', '\\n'),
in_house: false,
)
end
- Передайте это своим переулкам
get_provisioning_profile(api_key: get_app_store_connect_api_key)
sigh(api_key: get_app_store_connect_api_key)
pilot(api_key: get_app_store_connect_api_key)
Случай 3:
* У вас включена двухфакторная аутентификация
* Вам нужна корпоративная учетная запись и профили для получения
- Бегать
fastlane spaceauth -u user@email.com
Используйте вывод как
FASTLANE_SESSION
переменная окружения на вашем CI.Вам все равно нужно включить
FASTLANE_PASSWORD
Обратите внимание, что это длится всего 8 часов.
Случай 4:
* У вас включена двухфакторная аутентификация
* Вам нужна корпоративная или не корпоративная учетная запись
* Вам необходимо загрузить в appstore
Создайте FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD из https://appleid.apple.com/account/manage
Установите его как переменную среды в вашем ci
У меня была такая же проблема с Bitrise (еще одним инструментом CI / CD). Сообщение об ошибке вводило в заблуждение, потому что оно было связано не с принятием некоторых новых политик, а с новой системой аутентификации, используемой API App Store Connect .
Чтобы решить эту проблему, я вошел в Bitrise, и мне пришлось переключиться на новый метод аутентификации, как показано на изображении ниже.
Старый метод аутентификации был основан на учетных данных одного пользователя Apple Developer, новый метод вместо этого основан на генерации ключа API. Как видно на скриншоте ниже, мне пришлось создать ключ API в разделе « Пользователь и доступ» -> «Ключи», а затем загрузить его в Bitrise.
Надеюсь, мой случай поможет кому-то еще решить проблему. Я почти уверен, что вы должны следовать более или менее той же процедуре, даже если вы используете другой инструмент.
Я испытывал это с учетной записью Apple для аутентификации и авторизации действий на скоростной полосе.
Изменение моего CI для использования ключа Apple API, похоже, решает проблему.
Фаслтан следует использовать
app_store_connect_api_key
Вот документы: http://docs.fastlane.tools/actions/app_store_connect_api_key/#app_store_connect_api_key
Вы проверили настройки 2FA?
Apple объявила, что: «Начиная с февраля 2021 года, всем пользователям потребуется дополнительная аутентификация для входа в App Store Connect».
Для пользователей Azure DevOps временный
SPACESHIP_SKIP_2FA_UPGRADE=1
работает, пока мы ждем объединения поддержки ключей AppStoreConnect Api:
https://github.com/microsoft/app-store-vsts-extension/pull/189
Для тех, кто пользуется Pilot, есть простое решение:
Просто добавьте это в Pilot:
skip_waiting_for_build_processing: true,
apple_id: "123456789"
Вы можете найти apple_id в AppStoreConnect в разделе Общие> Информация о приложении
Ссылка: https://dev.to/dumazy/upload-to-testflight-with-fastlane-and-2fa-11k8
В моем случае для загрузки файлов ipa работало следующее решение
lane :upload_ipa do |options|
api_key = app_store_connect_api_key(
key_id: "xxxxx",
issuer_id: "xxxxxx",
key_filepath: "./fastlane/AuthKey_xxxxx.p8", #Mention the relative path
duration: 1200, # optional
in_house: false, # optional but may be required if using match/sigh
)
# The ipa and team_id are sent as options parameters to the method
pilot(api_key: api_key,
ipa: options[:ipa],
team_id: options[:team_id],
skip_waiting_for_build_processing: true,
wait_processing_interval: 120,
app_platform: options[:app_platform])
end