I just read about Mobile Device Management Server for iOS devices, but all documentations refers to "third party MDM Server".
My problem is how can I develop one "third party MDM Server" myself ? I failed to find any doc about this.
I just read about Mobile Device Management Server for iOS devices, but all documentations refers to "third party MDM Server".
My problem is how can I develop one "third party MDM Server" myself ? I failed to find any doc about this.
You have the easy way and the hard way.
Easy way: OSX Lion Server ships with a "Profile Manager" section which offers the whole MDM process (with the SCEP stack). This service is made up of ruby scripts so you can peek to see how it's done.
Hard way: implement your Profile Manager (profile generation and management), implement your Push server, add the SCEP stack (and the LDAP or Active Directory if you need to) and pray for everything to works together.
I choose the easy way :)
You can use the sample python code for MDM server provided in the MDM_Protocol named server.py. To test MDM implementation on iOS devices use your iOS Enterprise developer account to get the MDM certificate. You can use IPCU to generate Enroll config profile and you need to implement SSL for your server url. For more details refer question1 and question2
Here is some information on the structure of a server, at least.
Once you have signed up for the Apple Developer Network, you can access this document which provides greater detail in the specifics of setting up a profile server.
You will need to join the Apple Enterprise Developer Program and then request the MDM documentation from Apple.
I recommend you learning Dashcode development and then modify the Profile Manager shipped with Lion Server. Then implement your own MDM server with the acquired knowledge if this don't fit to your needs.
Good luck!
Developing your own MDM could be a large amount of work, and due to the nature of implementing restrictive software, is likely to require extensive security testing. You don't want to allow users or external parties to compromise your MDM.
I would suggest actually purchasing an MDM if your budget allows. If this is just for you, then that's probably not helpful. If this is for 20 users+, then an MDM might be fairly cost effective.
I'm not going to recommend one in particular to you and instead link to a good article by computerworld that reviews a selection: http://www.computerworld.com/s/article/9238981/MDM_tools_Features_and_functions_compared
You will still need to test your internal apps thoroughly. For example, the sandboxed environment might allow HTML5 web pages but not Java apps.