Search code examples
androidcertificatemdm

Automated provision of certificates to Android clients


I am looking into large Mobile Device Management MDM solution which is supposed to support a variety of platforms, but of course primarily iOS and Android 3.x onwards.

We need to provision certificates for allowing access to services such as VPN, Exchange and Wifi. This is easily done with iOS, since their MDM api allows provisioning of certificates, so all MDM vendors can provision these to their iPhones and iPAds.

It is (At least from my research) however another story with Android, there is apparently no such function in the generic google Android MDM API for provisioning and installing certificates. So the only MDM vendors that support this, are those who has access to vendor-specific API's such as Samsung, HTC, Motorola etc.

  • Is it true there is no generic way of installing certificates on ALL Android devices, or is it just for MDM specific functions (API calls) this is the case? I've looked at this post in regard to this: How to use p12 certificates in Android (client certificates)

  • Any suggestion as to how to automize delivery of certificates for different corporate services such as Exchange, VPN and Wifi to Android clients (3.x onwards) would be very welcome.


Solution

  • You can install certificat using a device admin component using this API: https://developer.android.com/reference/android/app/admin/DevicePolicyManager.html#installCaCert(android.content.ComponentName,%20byte[]) .