Importing an existing self- signed trusted root certificate no longer triggers option to trust cert in Settings / About / Certificate Trust Settings In iOS 18.
Cert installed manually from internal website, as email attachment, and using profile in Configurator all produce same result.
Same cert and processes work on iOS 16.7.10, iOS 17.6.1 and iPadOS 18.0
But not on iOS 18.0 nor beta iOS 18.1 beta5 on iPhone 16
Also tried regening a new test root on macOS Sonoma and installing using Configurator. No difference.
It’s broken - I’ve reported it by Feedback - it’s a vital security flaw.
Anyone else see this or have a workaround?
Explore the intersection of business and app development. Discuss topics like device management, education, and resources for aspiring app developers.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
We have an office application used internally within our enterprise. The Provisioning Profiles (PP) for the app were about to expire, so we updated the PP and released a new version. However, we've encountered an issue where some users did not update their phones in time. After the app expired, they found it unusable and downloaded the new version, but the newly downloaded app also crashes on launch. Restarting the phone does not resolve the issue, and this primarily occurs on iOS 18.3.2. What could be the cause of this problem, and how should we address it?
Topic:
Business & Education
SubTopic:
General
Hello,
I have a system, which is able to execute bash/zsh scripts on a set of machines.
The default behaviour is that the signature of the script is checked on the machine, which is executing it, and in case if it is not signed properly, the system rejects the execution.
An own certificate has to be created for signing the scripts, which means that the certificate has to be installed and marked as trusted on the target machines (which are executing the script).
I've been using :
"/usr/bin/security add-trusted-cert ..."
command to install the certificate on the machines as trusted.
Since macOS Big Sur, the above command was prompting the local user for admin credentials. To avoid this, Apple suggested to use the following command to temporarily disable and re-enable the confirmation dialog :
1.:
/usr/bin/security authorizationdb write com.apple.trust-settings.admin allow
2.:
/usr/bin/security authorizationdb write com.apple.trust-settings.admin admin
Now with the release of macOS Sequoia, the above command :
"/usr/bin/security authorizationdb write com.apple.trust-settings.admin allow"
does not work any more.
It gives the following output :
NO (-60005)
I have the following questions :
1.: Could you please suggest an alternative way for IT administrators to install certificates on their machines, without any user confirmation?
2.: Could you please suggest how the same could be achieved using a bash/zsh script? In which context could the above commands :
"/usr/bin/security authorizationdb write com.apple.trust-settings.admin allow"
and
"/usr/bin/security authorizationdb write com.apple.trust-settings.admin admin"
still work?
Thank you for your help in advance!
On a supervised device running iOS 18 without any AirDrop restrictions applied, when a profile with allowListedAppBundleIDs restriction key is installed, the AirDrop sound plays. But still the accept prompt does not appear, making it impossible to accept files.
The prompt works as expected on iOS 18 devices to which the allowListedAppBundleIDs restriction is not installed.
This issue occurs only on supervised iOS 18 devices to which the allowListedAppBundleIDs restriction is being applied.
Device must be in iOS 18 version > Install the (allowListedAppBundleIDs restriction) profile with the device > Try to AirDrop files to the managed device.
The expected result is that the accept prompt must pop up but it does not appear.
This issue is occurring irrespective of any Whitelisted bundle ID being added to the allowListedAppBundleIDs restriction profile.
Have attached a few Whitelisted bundle ID here com.talentlms.talentlms.ios.beta, com.maxaccel.safetrack, com.manageengine.mdm.iosagent, com.apple.weather, com.apple.mobilenotes, gov.dot.phmsa.erg2, com.apple.calculator, com.manageengine.mdm.iosagent, com.apple.webapp, com.apple.CoreCDPUI.localSecretPrompt etc.
Have raised a Feedback request (FB15709399) with sysdiagnose logs and a short video on the issue.
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Enterprise
Device Management
Managed Settings
It seems like there are some "mixed messages" out there about what should be in OID 1.2.840.113635.100.8.11.1 in the attestation cert.
Is it just a SHA256 hash of the nonce issued by the ACME server?
The MDM profile yaml says:
"In the attestation certificate the value of the freshness code OID matches the nonce specified by the ACME server via the ACME protocol."
I'm hoping the difficulty we're seeing is down to the certificate being created once (and not again for 7 days). Otherwise, we're not decoding/understanding the OID's contents properly.
Thanks.
I found a new Payload attribute LegacyAppConfigAssetReference in AppManaged introduced in iOs 18.4 beta.
So I tried it, however no configuration is discoverted in the installed app.
--
configuration
{
"Identifier": "8c2af0b6-5ae0-5927-a1cd-bab5e4148bb8",
"Type": "com.apple.configuration.app.managed",
"Payload": {
"InstallBehavior": {
"Install": "Required",
"License": {
"Assignment": "Device",
"VPPType": "Device"
}
},
"AppStoreID": "535886823",
"LegacyAppConfigAssetReference": "ac35558f-aefc-5faf-8f64-1faaff993b96"
},
"ServerToken": "2abdc89492d89ca1a213ca61318ae0651c2b8de660c2847a44a3fb8ad9d9a8ad"
}
--
declaration/asset/ac35558f-aefc-5faf-8f64-1faaff993b96
{
"Identifier": "ac35558f-aefc-5faf-8f64-1faaff993b96",
"Type": "com.apple.asset.data",
"Payload": {
"Reference": {
"DataURL": "https://i3-oreore-ios-mdm.azurewebsites.net/asset_files/eyJpZCI6IjNkOTg2YWVjNzQ1MWJiYWZlZjJmZGU1NmZmYmJlYjdkLnBsaXN0Iiwic3RvcmFnZSI6InN0b3JlIiwibWV0YWRhdGEiOnsiZmlsZW5hbWUiOiJFbmNvZGVkQ2hyb21lUG9saWN5RXhhbXBsZS5wbGlzdCIsInNpemUiOjMyMjUsIm1pbWVfdHlwZSI6ImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSJ9fQ",
"ContentType": "application/plist"
}
},
"ServerToken": "7433f7c0c991a1943636ff7bd8949e88738c684ecbde347ac8a9c5b5c19dda14"
}
--
And the data type of the managed app configuration is application/plist
http https://i3-oreore-ios-mdm.azurewebsites.net/asset_files/eyJpZCI6IjNkOTg2YWVjNzQ1MWJiYWZlZjJmZGU1NmZmYmJlYjdkLnBsaXN0Iiwic3RvcmFnZSI6InN0b3JlIiwibWV0YWRhdGEiOnsiZmlsZW5hbWUiOiJFbmNvZGVkQ2hyb21lUG9saWN5RXhhbXBsZS5wbGlzdCIsInNpemUiOjMyMjUsIm1pbWVfdHlwZSI6ImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSJ9fQ
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: max-age=31536000
Content-Length: 3225
Content-Type: application/plist
Date: Tue, 18 Mar 2025 22:59:40 GMT
X-Content-Type-Options: nosniff
<?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>EncodedChromePolicy</key>
<string>PD94bWwgdmVyc2lvbj0iMS4wIiA/PjwhRE9DVFlQRSBwbGlzdCAgUFVCTElDICctLy9BcHBsZS8vRFREIFBMSVNUIDEuMC8vRU4nICAnaHR0cDovL3d3dy5hcHBsZS5jb20vRFREcy9Qcm9wZXJ0eUxpc3QtMS4wLmR0ZCc+PHBsaXN0IHZlcnNpb249IjEuMCI+PGRpY3Q+PGtleT5BdXRvRmlsbEVuYWJsZWQ8L2tleT48ZmFsc2UvPjxrZXk+Q29va2llc0FsbG93ZWRGb3JVcmxzPC9rZXk+PGFycmF5PjxzdHJpbmc+aHR0cDovL3d3dy5leGFtcGxlLmNvbTwvc3RyaW5nPjxzdHJpbmc+WyouXWV4YW1wbGUuZWR1PC9zdHJpbmc+PC9hcnJheT48a2V5PkNvb2tpZXNCbG9ja2VkRm9yVXJsczwva2V5PjxhcnJheT48c3RyaW5nPmh0dHA6Ly93d3cuZXhhbXBsZS5jb208L3N0cmluZz48c3RyaW5nPlsqLl1leGFtcGxlLmVkdTwvc3RyaW5nPjwvYXJyYXk+PGtleT5Db29raWVzU2Vzc2lvbk9ubHlGb3JVcmxzPC9rZXk+PGFycmF5PjxzdHJpbmc+aHR0cDovL3d3dy5leGFtcGxlLmNvbTwvc3RyaW5nPjxzdHJpbmc+WyouXWV4YW1wbGUuZWR1PC9zdHJpbmc+PC9hcnJheT48a2V5PkRlZmF1bHRDb29raWVzU2V0dGluZzwva2V5PjxpbnRlZ2VyPjE8L2ludGVnZXI+PGtleT5EZWZhdWx0UG9wdXBzU2V0dGluZzwva2V5PjxpbnRlZ2VyPjE8L2ludGVnZXI+PGtleT5EZWZhdWx0U2VhcmNoUHJvdmlkZXJFbmFibGVkPC9rZXk+PHRydWUvPjxrZXk+RGVmYXVsdFNlYXJjaFByb3ZpZGVyS2V5d29yZDwva2V5PjxzdHJpbmc+bWlzPC9zdHJpbmc+PGtleT5EZWZhdWx0U2VhcmNoUHJvdmlkZXJOYW1lPC9rZXk+PHN0cmluZz5NeSBJbnRyYW5ldCBTZWFyY2g8L3N0cmluZz48a2V5PkRlZmF1bHRTZWFyY2hQcm92aWRlclNlYXJjaFVSTDwva2V5PjxzdHJpbmc+aHR0cDovL3NlYXJjaC5teS5jb21wYW55L3NlYXJjaD9xPXtzZWFyY2hUZXJtc308L3N0cmluZz48a2V5Pk1hbmFnZWRCb29rbWFya3M8L2tleT48YXJyYXk+PGRpY3Q+PGtleT5uYW1lPC9rZXk+PHN0cmluZz5Hb29nbGU8L3N0cmluZz48a2V5PnVybDwva2V5PjxzdHJpbmc+Z29vZ2xlLmNvbTwvc3RyaW5nPjwvZGljdD48ZGljdD48a2V5Pm5hbWU8L2tleT48c3RyaW5nPllvdXR1YmU8L3N0cmluZz48a2V5PnVybDwva2V5PjxzdHJpbmc+eW91dHViZS5jb208L3N0cmluZz48L2RpY3Q+PC9hcnJheT48a2V5PlBhc3N3b3JkTWFuYWdlckVuYWJsZWQ8L2tleT48dHJ1ZS8+PGtleT5Qb3B1cHNBbGxvd2VkRm9yVXJsczwva2V5PjxhcnJheT48c3RyaW5nPmh0dHA6Ly93d3cuZXhhbXBsZS5jb208L3N0cmluZz48c3RyaW5nPlsqLl1leGFtcGxlLmVkdTwvc3RyaW5nPjwvYXJyYXk+PGtleT5Qb3B1cHNCbG9ja2VkRm9yVXJsczwva2V5PjxhcnJheT48c3RyaW5nPmh0dHA6Ly93d3cuZXhhbXBsZS5jb208L3N0cmluZz48c3RyaW5nPlsqLl1leGFtcGxlLmVkdTwvc3RyaW5nPjwvYXJyYXk+PGtleT5Qcm94eUJ5cGFzc0xpc3Q8L2tleT48c3RyaW5nPmh0dHA6Ly93d3cuZXhhbXBsZTEuY29tLGh0dHA6Ly93d3cuZXhhbXBsZTIuY29tLGh0dHA6Ly9pbnRlcm5hbHNpdGUvPC9zdHJpbmc+PGtleT5Qcm94eU1vZGU8L2tleT48c3RyaW5nPmRpcmVjdDwvc3RyaW5nPjxrZXk+UHJveHlQYWNVcmw8L2tleT48c3RyaW5nPmh0dHA6Ly9pbnRlcm5hbC5zaXRlL2V4YW1wbGUucGFjPC9zdHJpbmc+PGtleT5Qcm94eVNlcnZlcjwva2V5PjxzdHJpbmc+MTIzLjEyMy4xMjMuMTIzOjgwODA8L3N0cmluZz48a2V5PlNlYXJjaFN1Z2dlc3RFbmFibGVkPC9rZXk+PHRydWUvPjxrZXk+VHJhbnNsYXRlRW5hYmxlZDwva2V5Pjx0cnVlLz48a2V5PlVSTEJsYWNrbGlzdDwva2V5PjxhcnJheT48c3RyaW5nPmV4YW1wbGUuY29tPC9zdHJpbmc+PHN0cmluZz5odHRwczovL3NzbC5zZXJ2ZXIuY29tPC9zdHJpbmc+PHN0cmluZz5ob3N0aW5nLmNvbS9iYWRfcGF0aDwvc3RyaW5nPjxzdHJpbmc+aHR0cDovL3NlcnZlcjo4MDgwL3BhdGg8L3N0cmluZz48c3RyaW5nPi5leGFjdC5ob3N0bmFtZS5jb208L3N0cmluZz48L2FycmF5PjxrZXk+VVJMV2hpdGVsaXN0PC9rZXk+PGFycmF5PjxzdHJpbmc+ZXhhbXBsZS5jb208L3N0cmluZz48c3RyaW5nPmh0dHBzOi8vc3NsLnNlcnZlci5jb208L3N0cmluZz48c3RyaW5nPmhvc3RpbmcuY29tL2JhZF9wYXRoPC9zdHJpbmc+PHN0cmluZz5odHRwOi8vc2VydmVyOjgwODAvcGF0aDwvc3RyaW5nPjxzdHJpbmc+LmV4YWN0Lmhvc3RuYW1lLmNvbTwvc3RyaW5nPjwvYXJyYXk+PC9kaWN0PjwvcGxpc3Q+</string>
</dict>
</plist>
Please note that this example plist is the same content as is described here: https://www.chromium.org/administrators/ios-mdm-policy-format/
After applying the declaration, the app GoogleChrome is successfully installed but no managed app configuration seems applied.
MDMAppManagement.plist in the sysdiagnose is like below:
plutil -p logs/MCState/Shared/MDMAppManagement.plist
{
"metadataByBundleID" => {
"com.google.chrome.ios" => {
"Attributes" => {
"Removable" => 0
}
"flags" => 1
"source" => "Declarative Device Management"
"state" => 7
}
"com.microsoft.skype.teams" => {
"Attributes" => {
"Removable" => 0
}
"flags" => 1
"source" => "Declarative Device Management"
"state" => 7
}
}
}
I also tried with our private apps and not applied...
How can we use this feature or check the configuration is applied?
Thank you,
We are encountering a critical issue where an enterprise-signed iOS app crashes immediately after installation on devices running iOS 18.3.2 (22D82). The same app runs fine on other iOS versions (including iOS 18.3.1 and earlier).
Issue Summary:
After upgrading to iOS 18.3.2, users are unable to launch our enterprise app (Bundle ID: com.kt.MobileDRM).
The app installs successfully but crashes immediately upon launch.
This issue occurs only on iOS 18.3.2, not on earlier versions or other iPadOS/iOS devices.
System Log Snippet:
SecKeyVerifySignature failed: Error Domain=NSOSStatusErrorDomain Code=-50
"rsa_pub_crypt failed, ccerr=-7"
UserInfo={numberOfErrorsDeep=0, NSDescription=rsa_pub_crypt failed, ccerr=-7}
Additional Info:
The app is signed with a valid enterprise certificate.
No changes were made to the app binary or signing configuration before this issue started.
We are not using an IPS file.
A similar app (different bundle ID) shows the same behavior on iPadOS 18.3.2 but runs fine on other versions.
Questions:
Has there been a change in iOS 18.3.2 that affects enterprise certificate validation?
Does ccerr=-7 indicate a cryptographic change or stricter signature verification?
Are there updated requirements or provisioning profile constraints we should be aware of for iOS 18.3.2?
We would greatly appreciate any insights or official guidance regarding this issue. Thank you!
Topic:
Business & Education
SubTopic:
General
Hi,
I run a midsize business. Apple recommends for company owned devices and for other reasons to use Apple Business managed Apple IDs for the employees. After that, you have to use a MDM System for e.g. deploying apps and licenses.
Testflight is an app that can be deployed too. But....Testflight can not more than to say "Hello" on a managed device. The use of Testflight and to test our developed apps is not possible with a managed ID.
Can anyone explain to me this thinking or what is recommended than. Setting up a private Apple ID for that purpose...which on the other hand, Apple do not want or does not recommend.
Topic:
Business & Education
SubTopic:
General
Tags:
Sign in with Apple
TestFlight
Business and Enterprise
Managed Settings
I am a developer working on iOS apps.
I would like to report an issue occurring in iOS 26 beta 2.
Our company has Enterprise account, and we are developing apps.
When we distribute these apps, and install them on a device running iOS 26 beta2, apps install successfully, but apps crashed immediately after being launched.
MDM Install Application
When I install the app via Xcode and trust it, apps will run.
Launchd job spawn failed
This issue does not occur on versions prior to iOS 26. I would like to know if this is a problem that will be resolved in future updates, or if it is a policy change.
I work at a school in NYC and have a software idea that could better support the new NYC phone ban law than current market options (i.e. Yondr pouches).
Right now at my school, students and staff scan a QR code upon entering the building to indicate that they are in the building. They scan again on the way out to indicate they've left the building. This is super helpful for attendance, particularly in emergency situations (fire drills, etc).
Imagine if when students scanned their QR code, it also activated an app similar to Opal or ScreenZen, but with an admin preset whitelisted apps. The idea is that this app would default deny access to all apps on students' phones except the admin preset whitelisted ones such as Phone, Calculator, etc. Depending on the age/needs of the student, other apps like Spotify, or medical apps could also be whitelisted.
My question is -- is this idea possible to create?
We would need admin preset controls to create the preset whitelist. We can't have students picking their own restrictions, as we know most would opt to not restrict at all.
We would need an admin dashboard so teachers/admin can see which students have activated the app in the building, and which may be trying to sneakily avoid it.
We would ideally need to be able to whitelist both system apps like Phone and Calculator, as well as non-system apps such as Spotify (and medical apps -- we have some students who manage/monitor their Diabetes with an app).
I don't have a background in software. I'm a math and health teacher. I've experimented with trying to have friends who majored in CS to create this app for me, but they've all either struggled/lost interest. So I'm also looking for a business partner in this venture.
If anyone has any guidance here, it would be so helpful! My boss (Head of School) is super interested in this idea and significantly prefers it to every other alternative that he has encountered. The problem is this idea does not exist yet!
Note: I know this is a super similar idea to the app and product "Brick". Notably, though, Brick does not have the ability for admin preset controls, or the admin dashboard. We reached out to the company to see if they're create this for us and they said it's a back burner idea that they're aware of, but it's not a priority for them right now.
Thank you for any guidance!
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Community Management
Bundle ID
Device Management
Family Controls
We have noticed that if we apply forceDelayedSoftwareUpdates in Restrictions profile, it causes ScheduleOSUpdates to fail or go into an invalid state.
For example:
On my iOS device, we have set the forceDelayedSoftwareUpdates to 90 days which removed the latest iOS update iOS 18.2 from the Software Updates section on the device.
Post this, if I schedule an update for iOS 18.2 using ScheduleOSUpdateCommand, it fails to download.
If I schedule the same without forceDelayedSoftwareUpdates, the update works as expected.
Please help what could be the reason for this behavior as forceDelayedSoftwareUpdates should not block ScheduleOSUpdates.
Hello, I am Sergio Sánchez, administrator of NumbuX.
We are developing our own MDM. We are already granted as a MDM Vendor.
We need to issue the APNs certificate for our MDM for the first time in the Push Certificate portal (identity.apple.com).
We are having the error: “invalid signing request” when we upload the signed CSR to identity.apple.com. That is because we do not have the External UUID.
Could you please let us know what is our External UUID? Without that, we cannot upload it successfully.
We have already compared different signed CSR from other MDM Vendors and all have included the External UUID in the CSR.
Please, do not send links, there is not way for us to know our External UUID because it is the first time that we try to issue this APNs. After the first time, we do not need your assitance.
Please, let us know our External UUID.
Thank you.
Kind regards.
Topic:
Business & Education
SubTopic:
General
I'm working on the companion iOS app for my purpose-built MDM system. when I use the following in a .swift file:
import DeviceManagement
I get the build issue:
No such module 'DeviceManagement'
When I attempt to add the framework in the Frameworks, Libraries, and Embedded Content settings, DeviceManagement doesn't even show up in the available frameworks.
Alll the documentation I can find suggests that is the correct framework to import, but I'm new to this and not sure if I'm just missing something.
Some AI help is suggesting that the culprit might be v16.x of Xcode, but I don't know enough to prove that correct or not.
Any ideas on why Xcode believes there is no such module? Is there documentation that might help me learn how to make that framework available for my project?
Is there a way to check if DDM(Declarative Device Management) is enabled on a device?
Hi,
I’m an enterprise developer, and we distribute our internal iOS app through a direct download link on our company website (not via App Store or TestFlight). The app is properly signed and works fine on most devices including iPhones and regular iPads.
However, on iPad Pro 11-inch (4th generation), the app crashes immediately upon launch when installed via the website. Interestingly, if we install the exact same app via Xcode, it runs without issue on the same device.
We also tested a third-party enterprise app called "Taipei On", and it showed the same crash behavior when installed via direct web download on the same iPad model. This leads us to believe the issue may be more widespread or specific to this iPad Pro model or recent iOS versions.
Furthermore, some of our users with iPhone 15 devices have started experiencing similar crashes recently, even though they had no issues before.
Is this a known issue related to enterprise app distribution or IPA installation behavior on certain devices?
Any advice or insight from the Apple team or other developers would be appreciated. Thanks!
Topic:
Business & Education
SubTopic:
General
Hi Apple Development forums,
I am having trouble getting a Wireguard VPN config setup to automatically disconnect on all domain requests other than one specific domain.
I have my .mobileconfig designed as so:
<dict>
<key>Action</key>
<string>EvaluateConnection</string>
<key>ActionParameters</key>
<array>
<dict>
<key>Domains</key>
<array>
<string>service.domainname.com</string>
</array>
<key>DomainAction</key>
<string>ConnectIfNeeded</string>
<key>ProbeURL</key>
<string>https://service.domainname.com/</string>
</dict>
</array>
</dict>
<dict>
<key>Action</key>
<string>Disconnect</string>
<key>DNSDomainMatch</key>
<array>
<string>*.com</string>
<string>*.org</string>
<string>*.net</string>
</array>
</dict>
<dict>
<key>Action</key>
<string>Disconnect</string>
</dict>
</array>
The issue I'm having is regardless of whether I note a *.com or simply have the action Disconnect noted - the VPN stays connected after navigating to https://service.domainname.com.
would anyone have any thoughts on this? Or am I missing something here?
We install two in-house apps.
The first app is installed using the standard in-house method, while the second app is installed via MDM commands.
Both apps share the same Team ID and use Keychain sharing to exchange data.
However, when the MDM profile is deleted and the second app is removed, the first app intermittently encounters issues and does not function properly.
However, when the MDM mobileconfig is reinstalled and the second app is installed again, the first app that was not functioning starts working properly.
We have thoroughly reviewed the logs but have not been able to find a solution.
Your assistance would be greatly appreciated.
We have extracted and attached the device logs that were generated during the error occurrence.
log.log
10:17:34.335397+0900 Process SpringBoard Bootstrapping failed for <FBApplicationProcess: 0x4d8eca700; app<com.a.b.c>:> with error: <NSError: 0x300a3d1d0; domain: RBSRequestErrorDomain; code: 5; "Launch failed."> {
NSUnderlyingError = <NSError: 0x300a54090; domain: NSPOSIXErrorDomain; code: 85> {
NSLocalizedDescription = Launchd job spawn failed;
};
}
Topic:
Business & Education
SubTopic:
General
Hi Apple Team & Community,
The new Introduction of Platform SSO during ADE Enrollment is Great And we tried implementing this. As a Rule mentioned in the Documentation Initially MDM Server should send 403 response with Response Body adhering to ErrorCodePlatformSSORequired when HTTP Header for MachineInfo request contains MDM_CAN_REQUEST_PSSO_CONFIG and set to true
There are contradictory claims mentioned in Document,
In Process Platform SSO Required Response it is mentioned that MDM Server should send body as JSON Object for ErrorCodePlatformSSORequired Example below
>>>>> Response
HTTP/1.1 403 Forbidden
Content-Type: application/json
Content-Length: 558
{
"code": "com.apple.psso.required",
"description": "MDM Server requires the user to authenticate with Identity Provider - BY MEMDM",
"message": "The MDM server requires you to authenticate with your Identity Provider. Please follow the instructions provided by your organization to complete the authentication process - BY MEMDM",
"details": {
"Package": {
"ManifestURL": "https://platform-sso-node-server.vercel.app:443/manifest"
},
"ProfileURL": "https://platform-sso-node-server.vercel.app:443/profile",
"AuthURL": "https://platform-sso-node-server.vercel.app:443/auth"
}
}
But in the same Document a Sample HTTP Response was Provided but seems to be XML format as below
>>>>> Response
HTTP/1.1 403 Forbidden
Content-Type: application/xml
Content-Length: 601
<?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>Code</key>
<string>com.apple.psso.required</string>
<key>Details</key>
<dict>
<key>ProfileURL</key>
<string>https://mdmserver.example.com/psso.mobileconfig</string>
<key>Package</key>
<dict>
<key>ManifestURL</key>
<string>https://mdmserver.example.com/psso-app.plist</string>
</dict>
<key>AuthURL</key>
<string>https://idp.example.com/authenticate</string>
</dict>
</dict>
</plist>
From Github I assume that both Response Types are welcomed hence I tried with Both
Followed in JSON Mode, I redirected the HTTP request if MachineInfo contains MDM_CAN_REQUEST_PSSO_CONFIG and set to true to https://platform-sso-node-server.vercel.app/redirectedDEPJSON
Followed in XML Mode, I redirected the HTTP request if MachineInfo contains MDM_CAN_REQUEST_PSSO_CONFIG and set to true to https://platform-sso-node-server.vercel.app/redirectedDEPXML
In both Response Modes OS is not proceeding after and a error Stating Enrollment with Management Server Failed , Forbidden request (403) appears
Can someone kindly guide on where I missed, or is this any OS Bug in Tahoe 26?
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Apple Business Manager
Device Management
Platform SSO
Hello everybody,
We are trying to configure Device APN settings by sending IOS device configuration profiles through OTA. Please refer below url for details which we are following :
https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/iPhoneOTAConfiguration/Introduction/Introduction.html#//apple_ref/doc/uid/TP40009505
We’ve encountered an issue where the APN (Access Point Name) settings are not populating correctly on iOS devices, even though we are sending the configuration via our Device Management Center (DMC) and the configuration message is being pushed correctly over the air (OTA).
Path to the APN fields:
Settings > Mobile > Mobile Data Network > APN
Tested iOS version: 17.3, 17.5, 18.2, 18.3
Configuration message received:
Configuration message installed:
APN fields are empty:
Could you give us any suggestions ?
Thank you very much.