We are facing an issue with Platform SSO registration on macOS devices for AD-bound user accounts with Microsoft EntraID configuration.
We are using the Platform SSO payload on macOS devices integrated with Entra ID, and it works as expected — registration completes successfully, and the password syncs with the Entra ID password.
However, when we try the same on macOS devices with AD-bound (mobile) user accounts, the registration does not complete. To elaborate, the process successfully completes the initial WebView authentication but fails at the stage where Apple prompts for the password to sync the local macOS user’s password with the Entra ID password.
It does not display any error, and even after entering a valid password, the process does not proceed further. However, when we try the same on a non-AD user account, it works fine.
We have checked with Microsoft, and they confirmed that there are no restrictions on their side for AD-bound accounts. Since the issue appears to occur at the Apple system level, they advised us to reach Apple teams on this.
Could you please check and let us know how we can proceed with this?
Payload used:
<?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>PayloadContent</key>
<array>
<dict>
<key>AuthenticationMethod</key>
<string>Password</string>
<key>ExtensionIdentifier</key>
<string>com.microsoft.CompanyPortalMac.ssoextension</string>
<key>PayloadDisplayName</key>
<string>Extensible Single Sign-On Payload</string>
<key>PayloadIdentifier</key>
<string>com.apple.extensiblesso.B408A658-3DAF-41FF-8A5D-AE77B380CB7B</string>
<key>PayloadType</key>
<string>com.apple.extensiblesso</string>
<key>PayloadUUID</key>
<string>D506CAFD-C802-41F2-9C3E-DF5289C315FF</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PlatformSSO</key>
<dict>
<key>AccountDisplayName</key>
<string>EntraID</string>
<key>AuthenticationMethod</key>
<string>Password</string>
<key>EnableCreateUserAtLogin</key>
<true/>
<key>LoginFrequency</key>
<integer>3700</integer>
<key>LoginPolicy</key>
<array>
<string>AttemptAuthentication</string>
</array>
<key>NewUserAuthorizationMode</key>
<string>Admin</string>
<key>UseSharedDeviceKeys</key>
<true/>
<key>UserAuthorizationMode</key>
<string>Admin</string>
</dict>
<key>ScreenLockedBehavior</key>
<string>DoNotHandle</string>
<key>TeamIdentifier</key>
<string>UBF8T346G9</string>
<key>Type</key>
<string>Redirect</string>
<key>URLs</key>
<array>
<string>https://login.microsoftonline.com</string>
<string>https://sts.windows.net</string>
<string>https://login.partner.microsoftonline.cn</string>
<string>https://login.chinacloudapi.cn</string>
<string>https://login.microsoftonline.us</string>
<string>https://login.microsoft.com</string>
<string>https://login-us.microsoftonline.com</string>
</array>
</dict>
</array>
<key>PayloadDisplayName</key>
<string>Platform SSO</string>
<key>PayloadIdentifier</key>
<string>42GBHOLAP04621.1BD5B6D9-640B-4DC3-9275-56DDD191A5FB</string>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>58548FC6-38D9-4B28-9EDF-BEEAB03BAB23</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
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
I am trying to find clarification on something. We are seeing strange cases where customer devices seem to unenroll themselves after a period of MDM inactivity. This seems to tie into roughly when their identity certificate has expired. We can't confirm this because the device has since unenrolled.
Is there any case where an Apple device will automatically unenroll if it's identity certificate has expired?
This doesn't always seem to happen - I had a device respond immediately after being switched off for a year - but could this be down to some devices being DEP enrolled and others manually enrolled?
Topic:
Business & Education
SubTopic:
Device Management
I'm using Apple's MDM protocol InstalledApplicationListCommand to get information about installed apps.
From iOS/iPadOS 26, the app information obtained by InstalledApplicationListCommand includes information on all apps including system apps (apps that come standard with iOS/iPadOS).
https://developer.apple.com/documentation/devicemanagement/installed-application-list-command
I want iOS/iPadOS26 to get the same information as the app information I get from the previous iOS/iPadOS, and I want to exclude system apps from the app information I get with the InstalledApplicationListCommand.
As a way to exclude system apps, you can use the app ID
I'm thinking of a way to exclude anything that starts with "com.apple" (the Identifier key value of the InstalledApplicationListResponse.InstalledApplicationListItem object).
As a way to exclude system apps, please tell us whether the above method is appropriate and whether there will be any problems in the future.
Topic:
Business & Education
SubTopic:
Device Management
Hi,
We developed a Platform SSO extension for our IdP, Keycloak. It would be great to get some feedback on it:
https://francisaugusto.com/2025/Platform_single_sign_on_diy/
We are expering frequent delays recently when associating a device serial with the adamid of an app in our business manager account. I get an event id back when calling the /associate api but when i check the status of that event id is can be sat in a pending state for sometimes several hours. Need to understand why and if its a configuration issue
Topic:
Business & Education
SubTopic:
Device Management
Hello guys,
I wanted to reach out to see if any of you have experienced or come across an issue we are facing in our organization. We are encountering a campus-wide problem where Macs are take an unusually long time to delete files on external drives formatted with ExFAT.
We manage these Macs through Jamf Pro, and numerous policies are applied when the devices are enrolled. We have tested the issue in both scenarios—when the Macs are connected to the domain and when they are not—and the slow deletion persists in both cases.
At this point, we are unsure whether the issue lies on our end or if it is related to the operating system itself. If anyone has found a fix or workaround for this problem, we would appreciate your input.
Why don't obtain equipment list (https://mdmenrollment.apple.com/server/devices) interface returns "device_family" contour information. This interface only returns some fields, and many field values are not returned
Environment
Devices: e.g., iPhone 12 mini, iPhone 16 (multiple units)
OS: iOS 26 beta 2 and beta 4 (23A5297m)
Distribution: Apple Enterprise Program (In-House), deployed via MDM InstallApplication
Tooling: Xcode (latest available for iOS 26 betas)
Summary
Apps signed for Enterprise (In-House) distribution install successfully on iOS 26 betas via MDM, but terminate immediately on launch. The same builds run if installed from Xcode on the same devices. This is a regression from pre-iOS 26 versions where Enterprise builds installed via MDM launched normally.
Steps to Reproduce
Archive an iOS app and export for Enterprise (In-House) distribution.
Deploy the .ipa via MDM using InstallApplication to a device on iOS 26 beta (e.g., 23A5297m).
Tap the app icon to launch.
Actual Result
The app quits instantly on launch. System logs show launchd/runningboard errors, including NSPOSIXErrorDomain Code=85 (“Bad executable (or shared library)”):
runningboardd(RunningBoard)[34]: Process start failed with Error Domain=NSPOSIXErrorDomain Code=85 "Bad executable (or shared library)" UserInfo={NSLocalizedDescription=Launchd job spawn failed}
runningboardd(RunningBoard)[34]: Launch failed with Error Domain=NSPOSIXErrorDomain Code=85 "Bad executable (or shared library)"
SpringBoard(FrontBoard)[35]: Bootstrapping failed ... NSUnderlyingError = { NSLocalizedDescription = Launchd job spawn failed; }
Expected Result
Enterprise-signed builds installed via MDM should launch as they did on iOS 25.x and earlier.
Regression?
Works on iOS versions prior to 26.
Works on iOS 26 betas when installed from Xcode (developer-signed run).
Fails only for Enterprise (In-House) builds delivered via MDM.
Additional Notes / Possibly Related
We also reproduced a similar failure mode with a minimal Safari Web Extension project: it installs and appears under Settings → Safari → Extensions, but enabling it and opening Safari produces: “ is no longer available.”
Building a fresh project with a new bundle ID shows the same behavior on iOS 26 beta (23A5297m).
Logs contain: Error occurred during transaction: The provided identifier "" is invalid.
Running from Xcode (debug build) works.
Workarounds
None identified for Enterprise/MDM distribution. Only Xcode-installed builds run.
Impact
Blocks Enterprise deployment to our fleet on iOS 26 betas.
Feedback / Attachments
Included: sysdiagnose from an affected device, minimal Xcode project demonstrating the issue, Enterprise-exported app, and reproduction notes.
Happy to share additional logs or perform targeted tests if needed.
Request
Can Apple confirm whether this is a known regression vs. a policy/validation change in iOS 26 for Enterprise/MDM installs? Any guidance on a short-term mitigation or build/signing change we can apply would be appreciated.
Topic:
Business & Education
SubTopic:
Device Management
I am having an issue with duplicated SCEP client certificates on an iOS device.
We deployed an SCEP profile via MDM, then deleted and redeployed it via MDM. In Settings > General > VPN & Device Management, only one SCEP profile is visible. However, Safari shows duplicated certificates when a server requests a client certificate.
We have tried removing the cert profile on MDM and unenrolling the device from MDM, but only the latest certificate got removed, leaving previous ones stuck on the device or in the Safari app.
We have found no way to remove these duplicated certificates other than factory reset the devices.
This appears to be a potential iOS bug affecting certificate cleanup. We need assistance to resolve this issue. Also, the issue is difficult to reproduce but has happened to a number of our managed devices.
Topic:
Business & Education
SubTopic:
Device Management
Hi,
I have a couple of questions about how to proceed and prepare the implementation for the DeviceLock MDM command for macOS in a secure and proper manner.
https://developer.apple.com/documentation/devicemanagement/device-lock-command
In documentation "PIN" is "(string) The six-character PIN for Find My. This value is available in macOS 10.8 and later." - is this the PIN that is used to unlock the device?
Is there any video online that I can see how the process would look like for the end user with locking and unlocking a device?
What should be done before sending a DeviceLock command? What should be done to safely test the command without bricking a device.
How to unlock a device that was locked with a DeviceLock command? Is there any Unlock command or can the user unlock device with the provided PIN earlier?
Thank you for any help!
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Security
Business and Enterprise
Device Management
Find My
In Device management profile,
VPN.VPN.OnDemandRulesElement
Action->Disconnect
Example payload:
OnDemandEnabled1OnDemandRules
ActionDisconnectInterfaceMatchCellular
When install my vpn payload with above configuration, I was unable to connect vpn manually when i try with wifi interface
Based on the doc, VPN should tear down when i connect with specific type interface(here cellular) i was unable to connec the vpn when i'm in cellular network good but when i connect to wifi still the same is happening. Is this a bug? tried in ios 18
Topic:
Business & Education
SubTopic:
Device Management
We are managing VPP license switching operations using Apple's VPP Manage Licenses API.
License information is managed by matching the “clientUserIdStr” data with the VPP account ID information managed on the server side.
We received an inquiry stating that a VPP license did not activate despite the activation process being performed.
Upon checking the API results, the update API returned a success status during execution.
However, the “clientUserIdStr” information was missing from the license information field in the response of the information retrieval API.
We kindly request your guidance on the reason why the “clientUserIdStr” information is missing when retrieving license information, and the steps to ensure this information is reliably returned.
VPPAccoountId:0123456789abcdef0123456789abcdef
adamIdStr:521974902
*Some details have been altered from the actual data to protect personal information.
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Apple Business Manager
Device Management
Can I upload custom app onto the ABM? if yes then how can we install it into the user's devices?
Topic:
Business & Education
SubTopic:
General
Hello,
I would like to ask a question regarding documentation related to app sales.
Currently, I’m researching the sales process for an app and realized that I lack sufficient understanding when it comes to creating official documents such as estimates, invoices, and receipts — especially when dealing with corporate clients.
In our company’s case, we can issue documents based on the net revenue (after platform fees are deducted). However, when issuing these documents to a client, would it be more appropriate to include a breakdown showing both the platform fee and the app usage fee?
I would greatly appreciate any insights or examples of how others have handled similar situations.
Thank you in advance.
I am using system_profiler command to check on the installed application list from mac device.
**Terminal command to check installed java version - **
But while running /usr/sbin/system_profiler SPApplicationsDataType -xml , I cant able to find Java as an installed application.
Is this a known issue or do we have any alternative workaround to fetch the same?
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Enterprise
Application Services
Command Line Tools
Hello,
I’m facing an issue while trying to add iOS devices to Apple Business Manager (ABM) using Apple Configurator during enrollment. When going through the setup process, the device fails to complete enrollment and times out.
I’ve tried it multiple times. The device does appear in ABM during the process and I am able to assign it to different MDM servers but since the setup times out and fails, the device is automatically released. I have tried this with multiple iOS devices and it times out on every single one of them.
Steps attempted:
Factory reset and re-enrollment of the device
Ensured network connectivity is stable and tested on multiple Wi-Fi networks
Tried the following process using Apple Configurator on Mac (wired):
Created a Wi-Fi profile in Configurator
Connected the iPhone via cable and used Prepare (manual configuration)
Used the “MDM server” placeholder and trusted anchors (as recommended)
Linked the device to the ABM organization
Skipped Setup Assistant steps
Attached the Wi-Fi profile, then prepared and wiped the device
Verified that the device should appear in ABM
Attempted to assign the device to my MDM in ABM
Despite these checks, the enrollment process times out.
I’m attaching a screenshot of the error for reference.
Could someone advise what might be causing this timeout or how I can further troubleshoot this? Any guidance would be greatly appreciated.
Thanks in advance.
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Enterprise
iOS
Apple Business Manager
Device Management
Steps to Reproduce
Step 1: Fetch Initial Device List
Called the device list endpoint to retrieve all devices and saved the cursor:
GET https://mdmenrollment.apple.com/server/devices
Step 2: Modify Devices
Added and deleted several devices via https://business.apple.com/
Step 3: Sync Without Pagination
Called the sync endpoint using the cursor from Step 1 (no limit):
GET https://mdmenrollment.apple.com/devices/sync?cursor={step1_cursor}
Result: Returned 3 device records as expected:
{
"devices": [
{
"serial_number": "F70JJ4C16L",
"op_type": "added",
"op_date": "2025-12-11T07:05:05Z"
},
{
"serial_number": "F70JJ4C16L",
"op_type": "deleted",
"op_date": "2025-12-11T07:04:36Z"
},
{
"serial_number": "C8RWGXZXJWF5",
"op_type": "deleted",
"op_date": "2025-12-11T07:04:52Z"
}
],
"more_to_follow": false
}
Step 4: Sync With Pagination (First Page)
Called the sync endpoint using the same cursor from Step 1 with limit=1:
GET https://mdmenrollment.apple.com/devices/sync?cursor={step1_cursor}&limit=1
Result: Returned 1 record with more_to_follow: true — indicating more data exists:
{
"devices": [
{
"serial_number": "F70JJ4C16L",
"op_type": "added",
"op_date": "2025-12-11T07:05:05Z"
}
],
"more_to_follow": true,
"cursor": "MTowOjE3NjU0MzgyNDI5ODc6..."
}
Step 5: Sync With Pagination (Second Page)
Called the sync endpoint using the cursor from Step 4 with limit=1:
{
"devices": [],
"more_to_follow": false
}
Expected Behavior
When paginating with limit=1, the API should return all 3 records across 3 sequential requests.
Actual Behavior
Without pagination: Returns 3 records ✓
With pagination (limit=1): Returns only 1 record, then empty array ✗
2 records are missing when using pagination.
Impact
This inconsistency makes the sync API unreliable for incremental device synchronization workflows.
Topic:
Business & Education
SubTopic:
Device Management
Why is MDM camera restriction designed not to work on the lock screen?
Topic:
Business & Education
SubTopic:
Device Management
Issue -
Safari application not fetched from system_profile command
Use case -
We are trying to get list of installed applications in the mac. For this we use System_profiler command to fetch the details list. It is working good, but the thing is , It doesnt fetch Safari app as an installed Application.
Command used -
**/usr/sbin/system_profiler SPApplicationsDataType**
Can anyone suggest any other way to fetch the installed applications list from the mac , which includes all the apps (including safari app) and remains effective ?
Hello,
I am an iOS developer managing an MDM app.
In this app, we are only using the camera restriction feature.
Can the MDM status (specifically, the camera state) be changed while the user's screen is locked?
We want to communicate with our server in the background and apply changes, but there is no known information about this.
I would appreciate your help!
Topic:
Business & Education
SubTopic:
Device Management