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 ?
Device Management
RSS for tagAllow administrators to securely and remotely configure enrolled devices using Device Management.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
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
Why is MDM camera restriction designed not to work on the lock screen?
Topic:
Business & Education
SubTopic:
Device Management
Hi,team:
I need to distribute an mdm configuration file containing the "ServiceManagementManagedLoginItems" service to a large number of company-supervised computers, where com.apple.servicemanagement only supports macOS 13.0+. However, I cannot effectively distinguish whether the device system where the mdm configuration file needs to be installed is greater than 13. Can I directly install the mdm configuration file on all devices? Will installing the mdm configuration file on devices less than 13 have any impact on the system or other configuration items in mdm? The description link of ServiceManagementManagedLoginItems is: https://developer.apple.com/documentation/devicemanagement/servicemanagementmanagedloginitems
In the RequestRequiresNetworkTether property, the definition of “network-tethered” is unclear, and there seems to be a discrepancy between the actual behavior and the description in the documentation.
We would like to clarify the definition of the connection state that “network-tethered” means and the specific behavior requirements when the property is set to true.
Explanation of the document
The description “If true, the device must be network-tethered to run the command.
I was not sure whether it refers to “network connection” or “tethered communication” as the Japanese translation.
Actual operation verification results
The error message was “The device is not tethered. (MDMErrorDomain:12081)”.
Error occurs when only carrier communication is used
The following connection conditions work normally (as in the case of false)
Wifi communication
Combination of carrier communication and Wifi communication
Tethering communication
Combination of carrier communication and tethering communication
Tethering connection (both parent and child devices)
Inconsistencies
Although the document description could be interpreted as a simple network connection requirement, actual operation is limited only to carrier communications alone
Error message uses language regarding tethering, but actual tethering connection works fine
Topic:
Business & Education
SubTopic:
Device Management
VPP API v2 returns 9609 "Unable to find the registered user." when I disassociate assets from an existing user.
Repro step:
1. Create user
POST https://vpp.itunes.apple.com/mdm/v2/users/create
{
"users": [
{
"clientUserId": "client-1",
"managedAppleId": "valid managed apple id"
}
]
}
=> user is associated
2. Retire user
POST https://vpp.itunes.apple.com/mdm/v2/users/retire
{
"users": [
{
"clientUserId": "client-1"
}
]
}
=> user is retired
3. Recreate user with the same clientUserId
POST https://vpp.itunes.apple.com/mdm/v2/users/create
{
"users": [
{
"clientUserId": "client-1",
"managedAppleId": "valid managed apple id"
}
]
}
=> user is associated
4. Associate asset
POST https://vpp.itunes.apple.com/mdm/v2/assets/associate
{
"assets": [
{
"adamId": "408709785"
}
],
"clientUserIds": [
"client-1"
]
}
=> asset associated
5. Disassociate asset
POST https://vpp.itunes.apple.com/mdm/v2/assets/disassociate
{
"assets": [
{
"adamId": "408709785"
}
],
"clientUserIds": [
"client-1"
]
}
=> {"errorNumber":9609,"errorMessage":"Unable to find the registered user."}
Notes
associate API works fine with the same payload.
disassociate work with v1 API.
Hello,
I am currently attempting to use declarative management to install enterprise application, however I am running into errors. Initially the device was failing to unpac the initial manifest it downloaded. After pulling logs from the device it was revealed that the manifest must include the bundle-version for it to parse as valid.
Adding this has allowed for the ipa to be fetched from the server however there is a secondary issue. The application is on the device but is unable to be opened due to the device being unable to validate its integreti. Any additional information would be useful. For completion the working manifest will be pasted below.
It should be noted that the manifest below does work when requesting application installs through MDM commands.
<***>
<items type="array">
<dict>
<assets type="array">
<dict>
<kind type="string">software-package</kind>
<url type="string">https://domain/web/mdm/ios/enterpriseipa/bundle.id</url>
</dict>
</assets>
<key type="dict" name="metadata">
<bundle-identifier type="string">bundle.id</bundle-identifier>
<kind type="string">software</kind>
<subtitle type="string">app</subtitle>
<title type="string">app</title>
<bundle-version type="string">x.x.x</bundle-version>
</key>
</dict>
</items>
</***>
</plist>
Hello Developers,
We are encountering a consistent Kernel Panic issue on an iPhone device after sending a "Clear Passcode" command via our MDM solution. We're looking for insights or confirmation if others have experienced similar behavior.
Device & Environment Details:
Device: iPhone13,2 (iPhone 12 Pro)
OS Version: iPhone OS 18.3.2 (Build 22D82) (Please note this appears to be a future/beta build identifier)
Action Triggering Panic: Sending MDM ClearPasscode command.
Roots Installed: 0 (Device is not jailbroken)
Incident ID: 4B41C0AE-EE93-4051-BEE4-AB98438C10F0
Panic Log Summary:
The kernel panic log clearly indicates the issue originates from the Secure Enclave Processor (SEP).
The key panic string is:
panic(cpu 3 caller 0xfffffff02357bc1c): SEP Panic: :sks /sks : 0x1000b15fc 0x0003ad60 0x0003ad44 0x100028698 0x10002cae4 0x10002a908 0x10002bc10 0x100045330 [hgggrhlvs]
Panic app vers: 1827.80.10
Panic app UUID: 4C066E88-EB93-33C3-BCA7-C5F5474831CC
...
Root task vers: AppleSEPOS-2772.80.2
Root task UUID: A39D6C5D-D07D-33EE-85A3-9105A8D93CE2
...
sks /sks 0x329cc/0x326e0/0x1314131413141314 ert/BOOT
Use code with caution.
The SEP Panic and reference to :sks /sks strongly suggest an issue within the Secure Key Store subsystem of the SEP.
The panic occurred on CPU core 3.
The kernel backtrace points to the com.apple.driver.AppleSEPManager kernel extension as the immediate caller in the main kernel that initiated the panic process after receiving the signal from the SEP.
Analysis/Interpretation:
Based on the log, it appears that the MDM ClearPasscode command, which necessarily interacts with the SEP's Secure Key Store via the AppleSEPManager driver, triggered an internal fault or bug within the SEP firmware (AppleSEPOS). This SEP-level panic subsequently caused the main iOS kernel to panic.
Questions:
Has anyone else encountered similar SEP panics, specifically involving the SKS subsystem, particularly after issuing MDM commands like ClearPasscode on iOS 18.x builds (especially 18.3.2 / 22D82)?
Is this a known issue in this specific iOS/SEP firmware version?
Are there any suggested workarounds for clearing passcodes via MDM on affected devices/OS versions, or any further diagnostic steps recommended?
We appreciate any insights or shared experiences the community might have on this issue.
Thank you.
Topic:
Business & Education
SubTopic:
Device Management
Hello All,
I am currently attempting to get application config working with enterprise apps but it seems as though the asset config is not applying at all. While the asset and application install correctly it does not seem that the config is read at all judging from the status message returned.
"StatusItems" : {
"app" : {
"managed" : {
"list" : [
{
"name" : "apps",
"config-state" : {
"app-config-state" : {
"state" : "unknown"
}
},
"identifier" : "app.identifier",
"version" : "3.2",
"short-version" : "3.2.0",
"state" : "managed",
"declaration-identifier" : "dec-identifier"
}
]
}
}
},
"Errors" : [
]
}
The asset file being sent down is as follows:
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Config 1</key>
<string>Value 1</string>
<key>Config 2</key>
<string>Value 2</string>
<key>Config 3</key>
<string>Value 3</string>
</dict>
</plist>
This is the config report being sent back by the device after everything has been fetched:
"StatusItems" : {
"management" : {
"declarations" : {
"activations" : [
{
"active" : true,
"identifier" : "group.activation.payload",
"valid" : "valid",
"server-token" : "56792E4AE25C3286640B45E6BD265AE97545B2B87F90A6355919FD8B2E3C3AB3"
}
],
"configurations" : [
{
"active" : true,
"identifier" : "app.install",
"valid" : "valid",
"server-token" : "34D7ACECAE16EE9EEAC0630FF2FF85524FFBB5BA3CB18CFB6296FBC860368C85"
},
{
"active" : true,
"identifier" : "ios.policy.subscription.list",
"valid" : "valid",
"server-token" : "376913E11BE7D26EC745B3B68C6FA94C4FC061B1B736D143EBE0F12FF73ADFF8"
}
],
"assets" : [
{
"active" : true,
"identifier" : "app.config.reference",
"valid" : "valid",
"server-token" : "1CFBE30EB56309005F742D667B80242E6A3CDC08ED228D0BC5F87749C6BBAB77"
}
],
"management" : [
]
}
},
"app" : {
"managed" : {
"list" : [
{
"state" : "downloading",
"declaration-identifier" : "app.install",
"identifier" : "app.identifier",
"name" : "apps",
"config-state" : {
"app-config-state" : {
"state" : "unknown"
}
}
}
]
}
}
},
"Errors" : [
]
}
Additional info would be useful, though a sysdiagnosis will be submitted to feedback as well.
Config did apply correctly when sending down through Install application command
Hi.
I am writing a little MDM application.
Despite the basic task (add a password for 'remove profile' button in settings), it seems I am stuck with a problem:
When I try to enroll my device with enrollment.mobileconfig file, Apple Configurator app, I receive an error
The profile “Enrollment Profile” could not be installed because it is invalid.
Make sure the profile is valid and try installing it again.
The original architecture of my .mobileconfig contains of two payloads (com.apple.security.scep , com.apple.mdm), and it works correctly. However, when I try to add a third payload of com.apple.profileRemovalPassword , I receive the error stated above.
From logs collected on iPhone, here's what was found :
Failed to parse profile data. Error: NSError:
Desc : The profile “Enrollment Profile” is invalid.
Sugg : A profile containing an MDM payload must be removable.
US Desc: The profile “Enrollment Profile” is invalid.
US Sugg: A profile containing an MDM payload must be removable.
Domain : MCProfileErrorDomain
Code : 1000
Type : MCFatalError
Params : (
"Enrollment Profile"
)
...Underlying error:
NSError:
Desc : A profile containing an MDM payload must be removable.
US Desc: A profile containing an MDM payload must be removable.
Domain : MCProfileErrorDomain
Code : 1000
Type : MCFatalError
Extra info:
{
isPrimary = 1;
}
My main dictionary contains
HasRemovalPasscode
Also, I have tried playing around with
PayloadRemovalDisallowed
setting it to true and false, however, I keep getting the same error message.
There is also a second error produced:
Profile MCConfigurationProfile, version 1:
Display Name: “Enrollment Profile”
Description : “***”
Identifier : ***
UUID : ***
Organization: ***
Is Stub : No
Locked : Yes
Removal passcode present
Encrypted : No
Trusted : 0
Signed : No
Device Type : 0
Payloads:
Payload MCSCEPPayload, version 1
Description : “***”
Identifier : ***
UUID : ***
Type : com.apple.security.scep
Display name: ***
Organization: ***
Payload MCMDMPayload, version 1
Description : “***”
Identifier : ***
UUID : ***
Type : com.apple.mdm
Organization: ***
Payload MCRemovalPasswordPayload, version 1
Identifier : com.examp Can't parse profile: <decode: missing data>
The code for com.apple.profileRemovalPassword is taken from apple documentation (https://developer.apple.com/documentation/devicemanagement/profileremovalpassword)
I have also tried the automatic way - creating it from Apple Configurator, so it is correct in terms of syntax 100%.
Several important notes:
Creating a fresh new profile with just password removal protection single payload allows to perform a download of the profile
If I comment out the whole com.apple.mdm payload block, I will be able to download this profile on iPhone also
The com.apple.mdm block is also valid by itself, and works correctly
I have tried implementing other types of "dummy" payloads - for example com.apple.dock
<dict>
<key>PayloadType</key>
<string>com.apple.dock</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadIdentifier</key>
<string>com.example.test.dock</string>
<key>PayloadUUID</key>
<string>22222222-3333-4444-5555-666666666666</string>
<key>PersistentApps</key>
<array/>
</dict>
And everything worked out fine.
So my hypothetical conclusion out of these four notes might be in some type of interconnection between mdm and profileRemovalPassword, which isn't really listed anywhere? Or am I missing something ? Thank you in advance.
We are experiencing a lot of problems deploying an enterprise app for in-house use since late January. All our iPads are managed by an MDM solution. It can take 10 or more attempts to successfully deploy the app. The deployment usually fails with the message "ASDErrorDomain error 854" among other messages. The company providing the MDM solution has no idea what causes this message or what it means. I suspect the error message is not generated by the MDM solutiion but rather gets passed through from iOS. After many attempts the installation may succeed suddenly, though, and the apps works as expected, but this may take weeks.
I have not done any changes to my development system. 'I am running XCode 15.3 with SDK version 17.4, the iPads are on iOS 18.3
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Enterprise
iPadOS
Business and Enterprise
We are trying to develop an app that will be responsible for managing 5000+ managed iPads through Intune MDM. The user flow is to have a device locked to a single app when a user is not logged in, but to make the device available to other apps once a user is authenticated.
We already tried UIAccessibility GuidedAccess Mode and autonomous single app mode but those were not sufficient due to our need to be able to toggle this from the background. When the device may be asleep.
So another way we could achieve this functionality would be to control all app access under a launching mechanism. That way we could allow one app to be visible in our MDM configuration and try to access our business app through that using deep links.
If this were to work, we would have to be able to hide an app and still make it launchable from the manager.
Any ideas? Thanks
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
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.
私は現在Intuneを使ったAppleIntelligenceの機能制限方法を調査しております。
AppleIntelligenceの機能のうち、以下5点を制御したく、その方法について教えてほしいです。
・作文ツール
・Gen文字
・写真(クリーンアップ機能等)
・さまたげ低減モード(通知の要約・優先順位機能含む)
・ChatGPTのサインイン(同期)・使用
今回ここに聞いた経緯としては、Microsoft社に本調査の確認をとったところ、
「制御後のデバイスの動作についてはAppleのペイロードを使用した制限のため、Appleに確認をとってほしい」
と伝えられたからです。
以下サイトではIntuneのAppleIntelligence機能の制御項目(MDM)が17項目ありますが、
ところどころ実動作について文章では理解ができない部分がありました。
・https://techcommunity.microsoft.com/blog/intunecustomersuccess/microsoft-intune-support-for-apple-intelligence/4254037
AppleDeveloperサポートにも確認をとりましたが、以下サイトを紹介のみで、
特に追加の情報はありませんでした。
・https://developer.apple.com/documentation/devicemanagement/restrictions
上記5機能を制限するためにはどの制限項目を使用すればよいでしょうか。
Topic:
Business & Education
SubTopic:
Device Management
During MDM Automated Device Enrollment of Apple TV, the web view defined by configuration_web_url is not working. We are using the web view to display the usage policy for all devices. While the web view functions correctly for other devices, it is resulting in an error specifically for Apple TV. Could you please clarify whether Apple plans to implement support for this feature on Apple TV in the future or if it will not be supported?
Referring to configuration_web_url in: https://developer.apple.com/documentation/devicemanagement/profile
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Apple TV
Apple Business Manager
Device Management
May I know the checking mechanism for the ios Provisioning profile? Is my Apple app distributed by MDM inside the organisation? If the Provisioning profile is expired , what is the behaviour when user run the App and how to perform the checking mechanism , is it performed at user client side device or Apple server via online access.
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
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 have couple of devices that are registered into Platform SSO, and we have been noticing an issue when the user tried to login.
After the users enters the password and hit the return key nothing happens, they need to hit the return key probably 10-15 times in order for the login to happen, the password entered is the correct one and it's just that hitting the return key doesn't invoke the login.
On checking the log of the device one unusual thing that we noticed as compared to a different device where the login is working in a single go is that the AppSSOAgent or AppSSODaemon process were not getting invoked