mdmprotocol/

directory
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 6, 2026 License: MIT

Directories

Path Synopsis
Package cms signs and verifies the CMS (PKCS #7) signatures Apple MDM uses: the detached signature a device sends in the Mdm-Signature header when the MDM payload sets SignMessage, and the attached signature a server puts on configuration profiles.
Package cms signs and verifies the CMS (PKCS #7) signatures Apple MDM uses: the detached signature a device sends in the Mdm-Signature header when the MDM payload sets SignMessage, and the attached signature a server puts on configuration profiles.
ddm
Package ddm is the Declarative Device Management engine: declarations and their canonical form, sets and membership, per-enrollment manifests and synchronisation tokens, status reports, and the change notifier.
Package ddm is the Declarative Device Management engine: declarations and their canonical form, sets and membership, per-enrollment manifests and synchronisation tokens, status reports, and the change notifier.
predicate
Package predicate parses and evaluates the subset of Apple's NSPredicate format-string syntax that Declarative Device Management activation predicates use.
Package predicate parses and evaluates the subset of Apple's NSPredicate format-string syntax that Declarative Device Management activation predicates use.
Package dmhook is the vocabulary a service hook is written against: the Call describing one operation, and the Hook interface that observes or vetoes it.
Package dmhook is the vocabulary a service hook is written against: the Call describing one operation, and the Hook interface that observes or vetoes it.
Package enroll builds the MDM enrollment profile and serves the over-the-air profile service: the MDM payload, the identity it points at (SCEP or a pre-issued PKCS #12), optional trust anchors, and the two-phase OTA flow that issues the identity before handing over the final profile.
Package enroll builds the MDM enrollment profile and serves the over-the-air profile service: the MDM payload, the identity it points at (SCEP or a pre-issued PKCS #12), optional trust anchors, and the two-phase OTA flow that issues the identity before handing over the final profile.
accountdriven
Package accountdriven implements Apple's account-driven enrollment: the first enrollment attempt, the 401 challenge, both documented authentication flows, and the tokens that carry the authenticated identity into the enrollment profile and the check-in.
Package accountdriven implements Apple's account-driven enrollment: the first enrollment attempt, the 401 challenge, both documented authentication flows, and the tokens that carry the authenticated identity into the enrollment profile and the check-in.
ade
Package ade serves Automated Device Enrollment: it reads and verifies the CMS-signed MachineInfo a device presents, persists it per serial, applies the software update gate, and hands the personalised enrollment profile back as application/x-apple-aspen-config, on both the token-based POST lane and the configuration_web_url lane.
Package ade serves Automated Device Enrollment: it reads and verifies the CMS-signed MachineInfo a device presents, persists it per serial, applies the software update gate, and hands the personalised enrollment profile back as application/x-apple-aspen-config, on both the token-based POST lane and the configuration_web_url lane.
adetest
Package adetest builds the CMS-signed MachineInfo blobs a device sends during Automated Device Enrollment, from a test chain shaped like Apple's, and the three request forms that carry them.
Package adetest builds the CMS-signed MachineInfo blobs a device sends during Automated Device Enrollment, from a test chain shaped like Apple's, and the three request forms that carry them.
discovery
Package discovery serves the account-driven enrollment service discovery endpoint, GET /.well-known/com.apple.remotemanagement, that routes a device to the enrollment server for its model family and user identifier.
Package discovery serves the account-driven enrollment service discovery endpoint, GET /.well-known/com.apple.remotemanagement, that routes a device to the enrollment server for its model family and user identifier.
webauth
Package webauth is an OpenID Connect relying party for the enrollment web view: it starts an authorization code flow with PKCE and a nonce, verifies the returned id_token itself, and hands the authenticated claims, still bound to the device that opened the web view, to the caller's hooks.
Package webauth is an OpenID Connect relying party for the enrollment web view: it starts an authorization code flow with PKCE and a nonce, verifies the returned id_token itself, and hands the authenticated claims, still bound to the device that opened the web view, to the caller's hooks.
webauth/webauthtest
Package webauthtest is a fake OpenID Connect provider for tests of the enrollment web view: discovery, JWKS with ES256 and RS256 keys, an authorization endpoint that records what the relying party sent, a token endpoint that checks the PKCE verifier and client credentials, scripted failures, and a web-view-like client that follows the redirects the way the device does.
Package webauthtest is a fake OpenID Connect provider for tests of the enrollment web view: discovery, JWKS with ES256 and RS256 keys, an authorization endpoint that records what the relying party sent, a token endpoint that checks the PKCE verifier and client credentials, scripted failures, and a web-view-like client that follows the redirects the way the device does.
Package event is the in-process event bus every state change in the service layer publishes to: typed events with an enrollment id, an actor, and a timestamp, dispatched to subscribers by type.
Package event is the in-process event bus every state change in the service layer publishes to: typed events with an enrollment id, an actor, and a timestamp, dispatched to subscribers by type.
Package mdm is the protocol core of the Apple MDM check-in and command channels: enrollment identity, request context, check-in message decoding, command envelopes, and command response decoding.
Package mdm is the protocol core of the Apple MDM check-in and command channels: enrollment identity, request context, check-in message decoding, command envelopes, and command response decoding.
Package plist is the library's single point of contact with property list encoding: Marshal, Unmarshal, format detection, and a bounded Decoder for untrusted input.
Package plist is the library's single point of contact with property list encoding: Marshal, Unmarshal, format detection, and a bounded Decoder for untrusted input.
Package profile composes, signs, and parses Apple configuration profiles (.mobileconfig): the top-level envelope, the common payload keys, stable identifiers, and CMS signing.
Package profile composes, signs, and parses Apple configuration profiles (.mobileconfig): the top-level envelope, the common payload keys, stable identifiers, and CMS signing.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL