"Untrusted App Developer" message when installing enterprise iOS Application
Asked Answered
N

11

92

I'm developing an enterprise application. When I was testing it in iOS8 beta I saw the following alert view:

Untrusted App Developer
Do you trust the developer "iPhone Distribution: ---" to run apps on you iPad?

It only appears the first time. Can I avoid it somehow? And what is it related to?

Screenshot

Ned answered 8/9, 2014 at 7:59 Comment(2)
Think about it: If you can suppress this message, then every evil hacker in the universe can suppress it as well.Maebashi
@Maebashi yes, easy to imagine the situation where I've downloaded an app from a developer I don't trust, then tapped on the icon of that app from a developer I don't trust. But oh! I see this alert! I don't trust this developer! Whew: cancel. Dodged a bullet there...Motile
S
51

You cannot avoid this unless you distribute an application via the App Store.

You get this message because the application is signed via an enterprise certificate that has not yet been trusted by the user. Apple force this prompt to appear because the application that is being installed hasn't gone through the App Store review process so is technically untrusted.

Once the user has accepted the prompt, the certificate will be marked as trusted and the application can be installed (along with any other future applications that you wish to install that have been signed with the same certificate)

Note: As pointed out in the comments, as of iOS 8, uninstalling all applications from a specific certificate will cause the prompt to be shown again once an application from said certificate is re-installed.

Here is the link to Apple website that confirms this info: https://support.apple.com/en-us/HT204460

Subhead answered 8/9, 2014 at 8:5 Comment(11)
This is not true. If i install the certificate on the device, it is still untrusted, whether i accepted the app or not. The app will be trusted, though, except for iOS8 - you have to tap 'Trust' for each app by the same publisher.Fike
@Fike that doesn't sound right... I've only ever had to trust an organisation once per device. We distribute our testing build via an enterprise account internally and this has always been the case (even on iOS 8)Subhead
is this an enterprise distro set up? how do you actually install the app - testflight or ipcu or?Fike
Yes it is an enterprise setup, we have a custom jenkins build server hooked up internally to dish out builds via itms-services download links so don't need to worry about external access and things like testflight.Subhead
so when your jenkins server builds, does it sign with a Developer Profile with device UUID's hardcoded, or is it a Distribution Profile (Provision all devices)?Fike
An Enterprise Distribution Certificate. We deal with too many devices to be able to maintain them all under a single developer account.Subhead
I tried this, and I still get my results - if I install the app this way and then DELETE it, if I install it again, the user is prompted again. If I upgrade, that doesn't happen, but that doesn't depend on the deployment method. This is iOS8 only.Fike
@Fike You are correct. In iOS 8 (unlike earlier versions), iOS will now "untrust" the application signer if the user deletes the last app by that signer from the device. So, if you delete your last enterprise app from the device, reinstall it and then the user taps to run the app, you will see this alert.Reproach
Yeah, i've looked at this since and realised that i was wrong.. Our test devices are managed under MDM and have a preinstalled app that we never delete signed under the same cert.. thats why i didn't notice this prompt.. Same also applies for ad-hoc builds/certs.. will update my answerSubhead
I found that with iOS 8 this is true for any developer profile you create yourself. Since I need to test first launch, I'm leaving a dummy app on my device to make it work.Ashmore
Once I delete my app from settings->profile->delete app and reinstall it, app doesn't prompt user for Location service permission. Does iOS saves setting for app and certificate.!Backed
O
236

Today, I was testing this with iOS 9 Beta and found the solution.

To solve it, go to:

  1. Settings -> General -> Profiles [Device Management on iOS 10]
  2. Under ENTERPRISE APP, choose your current developer account name.
  3. Tap Trust "Your developer account name"
  4. Tap "Trust" in pop up.
  5. Done
Omega answered 10/6, 2015 at 16:38 Comment(7)
This should be marked as the correct answer. The other answers are worth reading in their own right, however.Confidant
I already have an existing MDM profile from my company's email system, and when I go to Settings / General, there is only "Profile" which has this one profile. How can I get the developer certificate to show up here?Shagbark
I have two profiles and enterprise MDM one and my Apple Profile for testing iOS9 betas. I manually added my Developer profile and it didn't give me the option to hit trust.. it only shows untrusted. Can anyone help?Mendelson
@MichaelRowe I think you need to install app(with your dev profile) into device, instead manually add developer profile.Omega
There's a separate question now: #30723383Lunna
@Joni, I am able to trust custom enterprise apps by the way you mentioned. But everytime I reinstall the app, it is asking me to trust. Is there any way to trust it permanently?Berfield
Plus to the question above - I'm using WebDriverAgentRunner which I need to reinstall all the time and it is not possible to run tests, because I need to trust an app every time manually in settings. It is blocking my work every time.Asymptomatic
S
51

You cannot avoid this unless you distribute an application via the App Store.

You get this message because the application is signed via an enterprise certificate that has not yet been trusted by the user. Apple force this prompt to appear because the application that is being installed hasn't gone through the App Store review process so is technically untrusted.

Once the user has accepted the prompt, the certificate will be marked as trusted and the application can be installed (along with any other future applications that you wish to install that have been signed with the same certificate)

Note: As pointed out in the comments, as of iOS 8, uninstalling all applications from a specific certificate will cause the prompt to be shown again once an application from said certificate is re-installed.

Here is the link to Apple website that confirms this info: https://support.apple.com/en-us/HT204460

Subhead answered 8/9, 2014 at 8:5 Comment(11)
This is not true. If i install the certificate on the device, it is still untrusted, whether i accepted the app or not. The app will be trusted, though, except for iOS8 - you have to tap 'Trust' for each app by the same publisher.Fike
@Fike that doesn't sound right... I've only ever had to trust an organisation once per device. We distribute our testing build via an enterprise account internally and this has always been the case (even on iOS 8)Subhead
is this an enterprise distro set up? how do you actually install the app - testflight or ipcu or?Fike
Yes it is an enterprise setup, we have a custom jenkins build server hooked up internally to dish out builds via itms-services download links so don't need to worry about external access and things like testflight.Subhead
so when your jenkins server builds, does it sign with a Developer Profile with device UUID's hardcoded, or is it a Distribution Profile (Provision all devices)?Fike
An Enterprise Distribution Certificate. We deal with too many devices to be able to maintain them all under a single developer account.Subhead
I tried this, and I still get my results - if I install the app this way and then DELETE it, if I install it again, the user is prompted again. If I upgrade, that doesn't happen, but that doesn't depend on the deployment method. This is iOS8 only.Fike
@Fike You are correct. In iOS 8 (unlike earlier versions), iOS will now "untrust" the application signer if the user deletes the last app by that signer from the device. So, if you delete your last enterprise app from the device, reinstall it and then the user taps to run the app, you will see this alert.Reproach
Yeah, i've looked at this since and realised that i was wrong.. Our test devices are managed under MDM and have a preinstalled app that we never delete signed under the same cert.. thats why i didn't notice this prompt.. Same also applies for ad-hoc builds/certs.. will update my answerSubhead
I found that with iOS 8 this is true for any developer profile you create yourself. Since I need to test first launch, I'm leaving a dummy app on my device to make it work.Ashmore
Once I delete my app from settings->profile->delete app and reinstall it, app doesn't prompt user for Location service permission. Does iOS saves setting for app and certificate.!Backed
E
28

On iOS 9:

Settings -> General -> Device Management -> Developer app / your Apple ID -> Add/remove trust there

Eraste answered 31/12, 2015 at 9:38 Comment(1)
Previous answers seem to reflect iOS 9 betas. Current iOS 9.2 users need to use the settings mentioned in this answer.Phenol
A
7

This issue comes when trust verification of app fails.

Screenshot 1

You can trust app from Settings shown in below images.

Screenshot 2

Screenshot 3

Screenshot 4

If this dosen't work then delete app and re-install it.

Accoutre answered 9/5, 2016 at 9:19 Comment(3)
is there a way to allow this by default? Every time I reinstall the app I have to re-allow this. Which is pretty annoying. btw. I like the reddish scribble on your screenshots ;) xDHemichordate
I think this alert will prompt every time you install app.Accoutre
Is there an option to trust developer certificate permanently? I'm using WebDriverAgentRunner which I need to reinstall all the time and it is not possible to run tests, because I need to trust an app every time manually in settings. It is blocking my work every time.Asymptomatic
I
4

In my case, i just change some step below with iOS 9.3 To solve this problem:

Settings -> General -> Device Management -> Developer app Choose your current developer account name. Taps Trust "Your developer account name" Taps "Trust" in pop up. Done

Inhere answered 12/7, 2016 at 4:36 Comment(0)
T
3

For iOS 13.6

Go to settings -> General -> Device Management -> Click on Trust « Apple Development » -> Click on the red trust button and you’re all set! 😁 Enjoy

Twitty answered 1/9, 2020 at 10:59 Comment(0)
K
2

You absolutely can avoid this issue if you manage the device with MDM or have access to Apple Configurator.

The solution is to push either the Developer or iOS Distribution certificate to the device via MDM or Apple Configurator. Once you do that, any application signed by that cert will be trusted.

When you click on "Do you trust this developer", you're essentially adding that certificate manually on a per-app basis.

Kelseykelsi answered 21/10, 2014 at 16:15 Comment(4)
i'm sorry mate but i did try this and this advice is wrong - i got MDM delivered cert on the device and it still says 'untrusted developer'.Fike
I get the same result as zaitsman - delivering the iPhone Distribution certificate via MDM does not prevent the "Do you trust this developer" alert (iOS 8.1.3). I have verified that the certificate is present in the Remote Configuration profile. If you have gotten this to work, can you detail the steps?Engler
Can you be bit more explanatory on MDM? What is MDM & how can i use this MDM to avoid it?Womanhater
Mr Friendly: Have u checked on iOS9 now? Whats the result? I want to go for MDM, so verifying whether still issue is there with iOS9.Hhd
B
2

If you push it out through MDM it should auto-trust the application (https://support.apple.com/en-gb/HT204460), but it still has to verify the certs etc with Apple to ensure they've not been revoked etc i presume. I had this message preventing the application from launching and it was only when the proxy information was configured so it i could use the internet that it went away after a couple more launch attempts.

Bierce answered 21/12, 2015 at 9:41 Comment(0)
H
2

In iOS 9.1 and lower, go to Settings - General - Profiles - tap on your Profile - tap on Trust button.

Hopeh answered 8/2, 2016 at 7:42 Comment(0)
A
2

In iOS 9.3.1 and up: Settings > General > Device Management

Adrieneadrienne answered 29/5, 2016 at 16:52 Comment(1)
Please explain why and how will this help address the problem. You have outlined the steps to open up the Decide Management window, but what should happen once he opens Device Management?Inclinometer
B
0

I got this error with a Meraki MDM enrolled device and a managed app - it was happening only on some devices, and an iOS update seemed to fix the issue.

Bucktooth answered 8/3 at 5:23 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.