Friday 16 January 2015

Installing an Office App manifest file in Exchange 2013 (Part 1)

It's very easy installing an Office App into Exchange 2013, users have the capability themselves should you allow it, but what happens if you want to publish an App that isn't available in the Office Store? You may have created your own App or want to install a bespoke unpublished app from a trusted third party or partner company for example. Read on..

1. In the EAC browse to Organization | Apps

2. Select to install the App. You have the choice of 'Url' or 'file' as well as from the 'Office Store'

3. In this instance I am installing from URL, adding my URL to the file for the custom app I want to install

4. Once it is installed you will see it is disabled by default:

5. Edit the app to enable it:

And that's it! It's installed and available for everyone, but what if we want to push an app to specific users or push an app out via the Exchange Management Shell?

6. We can install the App via the Exchange Management Shell:

"New-App –OrganizationApp –Url "URL to Manfifest XML here"

7. Ensure the commands completes, it will show the DisplayName of the app, whether it is enabled and the App version number

8. If you use "Get-App" it will show all Apps, including the one you've just installed from your manifest file

9. However using "Get-App –identity "Bing Maps", for example will not specifically target an App.

10. Selecting "Get-App |select DisplayName, Identity" yields a mailbox and GUID based Identifier

11. You need the GUID to select the App. You have to use that against the –Identity parameter. 'Get-App –Identity "Domain/Mailbox/GUID"'

12. When logging in as a user in OWA, you will see your Apps, in this example, Bullhorn is available to enable

If you want to enable it via the Exchange Management Shell you can do this via the Set-App cmdlet.

"Set-App -Identity "App ID (The GUID)" -Enabled $true"

Similarly, if you wanted to push the Apps to users and not let them disable the App, we can again use  Set-App but this time using the -DefaultStateForUser parameter. If we specify -DefaultStateForUser AlwaysEnabled, the user will not be able to disable the App.

That's it for now, in Part 2 I will show you how to restrict the App to specific users as well as provide some scripts to automatically roll out Apps to new users as and when they join the company, ensuring your users are pushed the specific apps your company requires.

Oliver Moazzezi - MVP Exchange Server

No comments: