Networking & Internet 2010-07-06



Similar documents
TestFlight FAQ Apple Inc.

itunes Connect App Analytics Guide v1

ios Team Administration Guide (Legacy)

WiFiSurvey Using AirPort Utility for WiFi Scanning Guide

Apple Applications > Safari

CA Mobile Device Management. How to Create Custom-Signed CA MDM Client App

Apple Certificate Library Functional Specification

Synology SSO Server. Development Guide

WiFiPerf User Guide 1.5

Engage ios App Administrator s Guide

ios Deployment Simplified FileMaker How To Guide

IBM TRIRIGA Anywhere Version 10 Release 4. Installing a development environment

Event Kit Programming Guide

Mail Programming Topics

Colligo Briefcase Enterprise. Administrator s Guide

Mobile Secure Cloud Edition Document Version: ios Application Signing

Knappsack ios Build and Deployment Guide

Your First App Store Submission

Titanium Mobile: How-To

Dell Statistica Statistica Enterprise Installation Instructions

Synology NAS Server Windows ADS FAQ

Apple URL Scheme Reference

Certificates and Application Resigning

Icons: 1024x1024, 512x512, 180x180, 120x120, 114x114, 80x80, 60x60, 58x58, 57x57, 40x40, 29x29

Synology NAS Server. Group Installation Guide Synology NAS Server Group Installation Guide

BES10 Self-Service. Version: User Guide

Dell One Identity Cloud Access Manager How to Configure vworkspace Integration

Supporting Apple ios Devices

itunes Connect Payments and Financial Reports Guide v5

Dell Statistica Document Management System (SDMS) Installation Instructions

Synology NAS Server Mail Station User Guide

Dell Recovery Manager for Active Directory 8.6. Quick Start Guide

Seagate Media Sync User Guide

Using the Apple Configurator and MaaS3360

Xcode Source Management Guide. (Legacy)

WINDOWS 7 & HOMEGROUP

Xcode User Default Reference. (Legacy)

Copy Tool For Dynamics CRM 2013

Dell Statistica. Statistica Document Management System (SDMS) Requirements

Dell Spotlight on Active Directory Server Health Wizard Configuration Guide

QuickStart Guide for Mobile Device Management

Creating Carbon Menus. (Legacy)

User Guide. BES12 Self-Service

Dell Enterprise Reporter 2.5. Configuration Manager User Guide

PrinterOn Embedded Application For Samsung Printers and MFPs

NetBackup Backup, Archive, and Restore Getting Started Guide

Dell InTrust Preparing for Auditing and Monitoring Microsoft IIS

QuickStart Guide for Mobile Device Management. Version 8.6

PrinterOn Mobile App for ios and Android

Symantec Enterprise Vault

New Features and Enhancements

CDR-100. iphone Spy Recovery (for Win) User Guide. Rev iphone Data Recovery Software for Windows OS

Configuring Microsoft Internet Information Service (IIS6 & IIS7)

How To Customize An Orgsync App On Anorus Mobile Security Suite On A Microsoft Ipad Oracle 2.5 (Ios) On A Pc Orca 2.2 (Iphone) On An Android Orca2 (Ip

Novell ZENworks 10 Configuration Management SP3

Checking System Requirements. How-To Guide

Available Update Methods

Quick Connect Express for Active Directory

M86 Web Filter USER GUIDE for M86 Mobile Security Client. Software Version: Document Version:

Kony MobileFabric Messaging. Demo App QuickStart Guide. (Building a Sample Application

Total Baby. Backup, Restore and itunes Backup Extraction

Configuring an ios App Store application

Sophos Mobile Control Installation guide. Product version: 3.5

Generating an Apple Enterprise MDM Certificate

Dell One Identity Manager 7.0. Help Desk Module Administration Guide

Mobile Printing. User's Guide

apple WWDR Certification Practice Statement Version 1.8 June 11, 2012 Apple Inc.

AVG Business SSO Partner Getting Started Guide

Smart Card Setup Guide

BlackBerry Desktop Manager Version: User Guide

App Distribution Guide

Pipeliner CRM Phaenomena Guide Opportunity Management Pipelinersales Inc.

Dell One Identity Cloud Access Manager How To Deploy Cloud Access Manager in a Virtual Private Cloud

Apple Inc. Certification Authority Certification Practice Statement Worldwide Developer Relations Version 1.14 Effective Date: September 9, 2015

Dell InTrust Preparing for Auditing Microsoft SQL Server

TIBCO Silver Fabric Continuity User s Guide

iphone in Business How-To Setup Guide for Users

Spotlight Management Pack for SCOM

Automating client deployment

ChangeAuditor 6.0 For Windows File Servers. Event Reference Guide

User Manual. Onsight Management Suite Version 5.1. Another Innovation by Librestream

Universal Management Service 2015

Sophos Mobile Control Installation guide. Product version: 3.6

Dell One Identity Cloud Access Manager How to Configure for SSO to SAP NetWeaver using SAML 2.0

Sophos Mobile Control Startup guide. Product version: 3

LogMeIn Backup. Getting Started Guide

Newton Backup Utility User s Guide. for the Windows Operating System

ChangeAuditor 5.6. For Windows File Servers Event Reference Guide

Android App User Guide

Copyright Notice. Mobile Testing Enterprise 7.3. September Copyright Keynote LLC. All rights reserved.

Defender Delegated Administration. User Guide

MDM Mass Configuration Tool User s Manual

Application Note. Gemalto s SA Server and OpenLDAP

Installation Instructions

Internet and Help. Table of Contents:

WatchDox for Mac User Guide

PrinterOn Mobile Applications for ios and Android

Transcription:

Wireless Enterprise App Distribution Networking & Internet 2010-07-06

Apple Inc. 2010 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, mechanical, electronic, photocopying, recording, or otherwise, without prior written permission of Apple Inc., with the following exceptions: Any person is hereby authorized to store documentation on a single computer for personal use only and to print copies of documentation for personal use provided that the documentation contains Apple s copyright notice. The Apple logo is a trademark of Apple Inc. Use of the keyboard Apple logo (Option-Shift-K) for commercial purposes without the prior written consent of Apple may constitute trademark infringement and unfair competition in violation of federal and state laws. No licenses, express or implied, are granted with respect to any of the technology described in this document. Apple retains all intellectual property rights associated with the technology described in this document. This document is intended to assist application developers to develop applications only for Apple-labeled computers. Every effort has been made to ensure that the information in this document is accurate. Apple is not responsible for typographical errors. Apple Inc. 1 Infinite Loop Cupertino, CA 95014 408-996-1010 MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. AS A RESULT, THIS DOCUMENT IS PROVIDED AS IS, AND YOU, THE READER, ARE ASSUMING THE ENTIRE RISK AS TO ITS QUALITY AND ACCURACY. IN NO EVENT WILL APPLE BE LIABLE FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES RESULTING FROM ANY DEFECT OR INACCURACY IN THIS DOCUMENT, even if advised of the possibility of such damages. THE WARRANTY AND REMEDIES SET FORTH ABOVE ARE EXCLUSIVE AND IN LIEU OF ALL OTHERS, ORAL OR WRITTEN, EXPRESS OR IMPLIED. No Apple dealer, agent, or employee is authorized to make any modification, extension, or addition to this warranty. Some states do not allow the exclusion or limitation of implied warranties or liability for incidental or consequential damages, so the above limitation or exclusion may not apply to you. This warranty gives you specific legal rights, and you may also have other rights which vary from state to state..mac is a registered service mark of Apple Inc. App Store is a service mark of Apple Inc. Apple, the Apple logo, iphone, ipod, ipod touch, itunes, Keychain, Mac, Mac OS, and Xcode are trademarks of Apple Inc., registered in the United States and other countries. IOS is a trademark or registered trademark of Cisco in the U.S. and other countries and is used under license. Simultaneously published in the United States and Canada. Even though Apple has reviewed this document, APPLE MAKES NO WARRANTY OR REPRESENTATION, EITHER EXPRESS OR IMPLIED, WITH RESPECT TO THIS DOCUMENT, ITS QUALITY, ACCURACY,

Contents Chapter 1 Distributing Enterprise Applications for ios 4 Devices 5 Registering for Application Development 5 Preparing Apps for Distribution 5 Deploying Applications and Provisioning Profiles 6 Installing Applications Using itunes 6 Installing Applications and Provisioning Profiles Using iphone Configuration Utility 7 Installing Applications and Distribution Provisioning Profiles Wirelessly 8 Providing Updated Applications 10 Disabling an Enterprise Application 10 Sample Manifest File 10 Document Revision History 13 3

CONTENTS 4

Distributing Enterprise Applications for ios 4 Devices Commercial applications can be purchased, downloaded, and installed by users directly onto their device through the App Store. But if you develop an enterprise application that you want to distribute to your employees, the app must be digitally signed with a certificate issued by Apple through the Developer Enterprise Program. You must also provide your users with a distribution provisioning profile that allows their device to use the application. Without a valid provisioning profile, the application won t open. The process for deploying an in-house applications is: Register for the Developer Enterprise Program with Apple. Prepare your app for distribution. Create an enterprise distribution provisioning profile that authorizes devices to use applications you ve signed. Deploy the application and the enterprise distribution provisioning profile. Registering for Application Development To develop and deploy custom applications for ios 4, first register for the Developer Enterprise Program at: http://developer.apple.com/programs/iphone/enterprise/ Once you complete the registration process, you ll have access to the iphone Dev Center and Provisioning Portal which contain detailed instructions on how to prepare your application for enterprise distribution.. Preparing Apps for Distribution Enterprise applications must be signed with your distribution certificate, and must have a provisioning profile that authorizes devices to use the app. The designated Team Agent for your program membership creates the distribution certificate and provisioning profiles at the online Provisioning Portal. Generating the distribution certificate involves using the Certificate Assistant, which is part of the Keychain Access application on your Mac OS X development system, to generate a Certificate Signing Request (CSR). You upload the CSR to the Provisioning Profile Portal and receive a distribution certificate in response. When you install this certificate in Keychain, Xcode uses the certificate to sign your app. For detailed instructions, see the help available online at the Enterprise Provisioning Profile Portal. Next, you need to create an enterprise distribution provisioning profile so your users can use your application on their device. You create an enterprise distribution provisioning profile for a specific application, or multiple applications, by specifying the AppID that is authorized by the profile. If a user has an application, but doesn t have a profile that authorizes its use, the user isn t able to use the application. Registering for Application Development 5

Distributing Enterprise Applications for ios 4 Devices The designated Team Agent for your enterprise can create distribution provisioning profiles at the Enterprise Provisioning Portal at http://developer.apple.com/iphone. See the website for instructions. Once you create the enterprise distribution provisioning profile, download the.mobileprovision file. You can embed it in your application by building an archived app (.ipa) using Xcode, or you can distribute the application and provisioning profile separately to authorized users. They'll need to have the both the app and the.mobileprovision file to use the application. If you are using a mobile device management server, you can control access to the application by wirelessly installing or removing the profile. Deploying Applications and Provisioning Profiles There are three methods for installing apps and distribution provisioning profiles: Distribute the app and distribution provisioning profile, if you didn't embed in the app, to your users for installation using itunes. Have an IT administrator install the app and distribution provisioning profile, if you didn't embed it in the app, on devices using iphone Configuration Utility Post the app and distribution provisioning profile, if you didn't embed it in the app, on a secure web server; users access and perform the installation wirelessly. Installing Applications Using itunes Your users use itunes to install applications on their devices. Securely distribute the application to your users and then have them follow these steps: 1. In itunes, choose File > Add to Library and select the application (.app or.ipa) you provided. You can also drag the file to the itunes application icon. 2. Connect a device to the computer, and then select it in the Devices list in itunes. 3. Click the Applications tab, and then select the application in the list. 4. Click Apply to install the application and all distribution provisioning profiles that are located in the designated folders discussed below. Installing Provisioning Profiles for Managed Clients If the user's computer is managed, deploy the provisioning profile to one of the locations below and the user s copy of itunes automatically installs the files the next time the user syncs the device. If the folders don t exist, create them with the names shown. Mac OS X ~/Library/MobileDevice/Provisioning Profiles/ /Library/MobileDevice/Provisioning Profiles/ the path specified by the Provisioning Profiles Path key in ~/Library/Preferences/ com.apple.itunes 6 Deploying Applications and Provisioning Profiles

Distributing Enterprise Applications for ios 4 Devices Windows XP bootdrive:\documents and Settings\username\Application Data\Apple Computer\ MobileDevice\Provisioning Profiles bootdrive:\documents and Settings\All Users\Application Data\Apple Computer\ MobileDevice\Provisioning Profiles the path specified in the HKCU or HKLM by the Provisioning Profiles Path registry key SOFTWARE\Apple Computer, Inc\iTunes Windows Vista bootdrive:\users\username\appdata\roaming\apple Computer\MobileDevice\ Provisioning Profiles bootdrive:\programdata\apple Computer\MobileDevice\Provisioning Profiles the path specified in the HKCU or HKLM by the Provisioning Profiles Path registry key SOFTWARE\Apple Computer, Inc\iTunes Once installed, the provisioning profiles can be viewed on the device in Settings > General > Profiles. Installing Applications and Provisioning Profiles Using iphone Configuration Utility You can use iphone Configuration Utility to install applications and distribution provisioning profiles on connected devices. Installing Distribution Provisioning Profiles: 1. In iphone Configuration Utility, choose File > Add to Library, and then select the distribution provisioning profile that you want to install. The profile is added to iphone Configuration Utility and can be viewed by selecting the Provisioning Profiles category in the Library. 2. Select a device in the Connected Devices list. 3. Click the Provisioning Profiles tab. 4. Select the provisioning profile in the list, and then click its Install button. Installing Applications Using iphone Configuration Utility You can use iphone Configuration Utility to install applications on connected devices. 1. In iphone Configuration Utility, choose File > Add to Library, and then select the application that you want to install. The application is added to iphone Configuration Utility and can be viewed by selecting the Applications category in the Library. Deploying Applications and Provisioning Profiles 7

Distributing Enterprise Applications for ios 4 Devices 2. Select a device in the Connected Devices list. 3. Click the Applications tab. 4. Select the application in the list, and then click its Install button. Installing Applications and Distribution Provisioning Profiles Wirelessly ios 4 supports over-the-air installation of enterprise applications, allowing you to distribute in-house software to your iphone and ipod touch users without having to use itunes or iphone Configuration Utility. Requirements A secure web server accessible by authenticated users In-house ios 4 application in.ipa file format An enterprise distribution provisioning profile for your application An XML manifest file, described in this document Installing the application is simple. Users first install the provisioning profile that authorizes their device to use your application. Then they download the manifest file from your website to their ios 4 device, which instructs the device to download and install your application. You can distribute the URL for downloading the manifest file and provisioning profile via SMS, email, or by embedding it in another enterprise application you ve created. It's up to you to design and host the website used to distribute applications. You need to make sure that users are authenticated, perhaps using basic auth or directory-based authentication, and that the website is accessible via your intranet or the Internet. The application and manifest can be placed in a hidden directory, or in any other location that's readable using HTTP or HTTPS. Preparing an Enterprise Application for Wireless Distribution To prepare your enterprise app for wireless distribution, you build an archived version in the form of a.ipa file, and a manifest file that enables wireless distribution and installation of the application. In Xcode, you create an app archive using the Build > Build and Archive menu item. Then, in the Archived Applications source in Xcode's Organizer, select the archived application and click the Share Application button. Select the distribution provisioning profile, if you want to embed it, then click the Distribute for Enterprise button. You ll be asked to provide information for the manifest file, which Xcode creates along with the.ipa. See About the Wireless Manifest, below, for more information about the manifest file. For more information about building and provisioning applications, see the iphone Dev Center. 8 Deploying Applications and Provisioning Profiles

Distributing Enterprise Applications for ios 4 Devices About the Wireless Manifest The manifest is a file in XML plist format. It's used by an ios 4 device to find, download, and install the application from your web server. The manifest is created by Xcode, using information you provide when you share an archived application for enterprise distribution. See Preparing an Enterprise Application for Wireless Distribution. A sample manifest plist is included at the end of this document. The following fields are required: Item URL display-image full-size-image bundle-identifier bundle-version title Description The fully qualified HTTP or HTTPS URL of the application (.ipa) file. A 57 x 57 pixel PNG image that is displayed during download and installation. Specify the image's fully qualified URL. A 512 x 512 pixel PNG image that represents the application in itunes. Your application s bundle identifier, as specified in your Xcode project. Your application s bundle version, as specified in your Xcode project. The name of the application, which is displayed during download and installation. Optional Keys There are optional keys that you can use, which are described in the sample manifest plist. You can use the MD5 keys if your application file is large and you want to ensure download integrity beyond the error checking normally done during TCP communications. Constructing your Website Upload these items to an area of your website that your authenticated users can access: The application (.ipa file) The provisioning profile (.mobileprovision file), if it's not embedded in the.ipa The manifest file Your website desgn is up to you. It can be as simple as a single page that includes links to the provisioning profile and the manifest file. When users tap the web links, each of the files is downloaded and installed. Users can install either piece first, but both the provisioning profile and the application file (as installed by the manifest) are required. A link to the provisioning profile isn't necessary if it was embedded in the.ipa file when you built the archived application. See Preparing an Enterprise Application for Wireless Distribution, above. Here are sample links for downloading each type of file: <a href="http://example.com/foo.mobileprovision">install Provisioning File</a> <a href="itms-services://?action=download-manifest&url=http://example.com/ manifest.plist">install Application</a> Deploying Applications and Provisioning Profiles 9

Distributing Enterprise Applications for ios 4 Devices Don't add a web link to the archived application (.ipa). It's downloaded by the device when the manifest file is loaded. Setting Server MIME Types It may be necessary to configure your webserver so that manifest and application file are transmitted correctly. For Mac OS X Server, add the following MIME types to the MIME Types settings using Server Admin: application/octet-stream ipa text/xml plist For IIS, add the MIME type in the Properties page of the server using IIS Manager:.ipa application/octet-stream.plist text/xml Providing Updated Applications Applications that you distribute using these techniques aren't automatically updated. When you have a new version for users to install, notify them of the update and instruct them to install the application. If you're using wireless app distribution, provide a link to the website or manifest file of the updated application. If you're using itunes, provide them with a new app to install on their device. If you're using iphone Configuration Utility, have them contact an IT administrator to install the new version. If you want users to retain data stored on their device, make sure the new version uses the same bundle-identifier as the one it's replacing and tell users not to delete their old version before installing the new one. The new version will replace the old one and retain data stored on the device, provided that the bundle-identifiers match. Disabling an Enterprise Application If you need to disable an in-house application, revoke the identity used to sign the enterprise distribution provisioning profile. The status of the certificate is validated using OCSP when the app is opened, and the app will refuse to run if the certificate has been revoked. If the profile was installed by a mobile device management server, you can remove the profile from the device over the air, and the application will no longer open. Sample Manifest File <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/dtds/propertylist-1.0.dtd"> <plist version="1.0"> <dict> <!-- array of downloads. --> 10 Providing Updated Applications

Distributing Enterprise Applications for ios 4 Devices <key>items</key> <array> <dict> <!-- an array of assets to download --> <key>assets</key> <array> <!-- software-package: the ipa to install. --> <dict> <!-- required. the asset kind. --> <key>kind</key> <string>software-package</string> <!-- optional. md5 every n bytes. will restart a chunk if md5 fails. --> <key>md5-size</key> <integer>10485760</integer> <!-- optional. array of md5 hashes for each "md5-size" sized chunk. --> <key>md5s</key> <array> <string>41fa64bb7a7cae5a46bfb45821ac8bba</string> <string>51fa64bb7a7cae5a46bfb45821ac8bba</string> </array> <!-- required. the URL of the file to download. --> <key>url</key> <string>http://www.example.com/apps/foo.ipa</string> </dict> <!-- display-image: the icon to display during download.--> <dict> <key>kind</key> <string>display-image</string> <!-- optional. indicates if icon needs shine effect applied. --> <key>needs-shine</key> <true/> <key>url</key> <string>http://www.example.com/image.57x57.png</string> </dict> <!-- full-size-image: the large 512x512 icon used by itunes. --> <dict> <key>kind</key> <string>full-size-image</string> <!-- optional. one md5 hash for the entire file. --> <key>md5</key> <string>61fa64bb7a7cae5a46bfb45821ac8bba</string> <key>needs-shine</key> <true/> <key>url</key><string>http://www.example.com/image.512x512.jpg</string> </dict> </array><key>metadata</key> <dict> <!-- required --> <key>bundle-identifier</key> <string>com.example.fooapp</string> <!-- optional (software only) --> <key>bundle-version</key> <string>1.0</string> Sample Manifest File 11

Distributing Enterprise Applications for ios 4 Devices <!-- required. the download kind. --> <key>kind</key> <string>software</string> <!-- optional. displayed during download; typically company name --> <key>subtitle</key> <string>apple</string> <!-- required. the title to display during the download. --> <key>title</key> <string>example Corporate App</string> </dict> </dict> </array> </dict> </plist> 12 Sample Manifest File

REVISION HISTORY Document Revision History This table describes the changes to Wireless Enterprise App Distribution. Date 2010-07-06 2010-06-23 Notes First Release for ios 4. New document that describes over-the-air installation of iphone applications in an enterprise setting. 13

REVISION HISTORY Document Revision History 14