How do the Office 365 app launcher and subscription relate?

By assigning licenses/subsciptions (previous post) in Office 365 services are enabled per user. Most of the services are accessible via the App Laucher. The challenge is enabling a single service for example Office 365 Video. This is challenging due to the relationship between services bound by a subscription/license.

NOTE: please note this article is written on February 16, 2016. The subscription structure might change after this date, please verify in the Office 365 Admin Center if this is still applicable.

Office365AppLauncher

Which App Launcher tiles show up by enabling Office 365 services

By enabling services new tiles can show up in the App Launcher. When enabling services for users you want to know which services are enabled to provide the proper training and increase user adoption.

Service App Launcher tile
Sway image
Mobile Device Management for Office 365‎ No tile
Yammer Enterprise image
Azure Rights Management No tile
Office 365 ProPlus No tile
Skype for Business Online ‎(Plan 2)‎ No tile
Office Online image
SharePoint Online ‎(Plan 2) image
Exchange Online ‎(Plan 2) image
Power BI image
Office 365 Planner image
Project Pro for Office 365 image

Microsoft PowerApps

image

Can you granularly enable SharePoint Online services?

Yes, you can granularly enable SharePoint Online services if this is required! Maybe “Yes” is not completely true. Let me explain.

Why is SharePoint Online different than other licences in Office 365? Just because… No idea, lets hope Microsoft will change this soon and let us more granalar enable or disable services based on licenses. But we do have a choice!

Some companies might require to enable OneDrive for Business but not yet enable Delve, Video and Sites. We can not cover this scenario completely, we have the following options:

  • We can show or hide the OneDrive and/or Sites tiles
  • We can enable or disable the Delve and/or Video services

In the SharePoint Admin Center, under “Settings”, an admin can make changes to these services. It might take a while before the changes are reflected in the user interface, please be aware.

Office365SharePointOnlineOptions

Hiding OneDrive for Business and Sites

By hiding OneDrive for Business the tile is removed from the App Launcher, but the service is still available! By using a direct URL (https://company-my.sharepoint.com) you can still access OneDrive for Business and use your personal storage.

By hiding Sites, simular behavior will occur as OneDrive for Business. The tile is hiden from the App Launcher but by directly accessing the link https://company-my.sharepoint.com/personal/useraccount/Social/Sites.aspx the Sites page is still accessible.

Disabling Office Graph (Delve)

Disabling the Office Graph “Don’t allow access to the Office Graph” will not completely disable Delve, but will disable using the Office Graph (the backend of Delve). The Delve user profile page is accessible and needs to be! When user will click on a user profile link they will be brought to the Delve profile page.

The options like “Home”, “Favorites”, “People” and “Boards” are not accessible.

Office365DisableDelve

Disabling Office 365 Video

When disabling Office 365 Video the tile is removed from the App Launcher and when a user tries to access the Office 365 Video page via the link https://macawbram0013.sharepoint.com/portals/hub then a friendly message is shown.

Office365DisableVideo

Office 365 licenses under the hood

Sometime you see Office 365 services for one user, but their colleague sitting next to them is not seeing this service?! Where can you find your assigned licenses to know which services you are able use? And where does your administrator assign these licenses?

NOTE: please note this article is written on February 16, 2016. The subscription structure might change after this date, please verify in the Office 365 Admin Center if this is still applicable.

Where can I find my Office 365 licenses?

To check the licenses assigned to your personal account visit the page https://portal.office.com/account/#subscriptions. This page shows the assigned subscriptions/licenses together with the services enabled per license.

Office365AccountSubscriptionsExtende[2]

Where does my admin assign licences?

Assigning licenses is done by the Office 365 administrator in the Office 365 Admin Center. You need to have the appropiate role to access the “Active Users”-page.

Office365AdminCenterLicenses_thumb1

Assigning licenses and enabling services

The Office 365 subscription plan is the basic license which a user requires to access services in Office 365. Microsoft provides different Office 365 Business plans but in this article I use the Enterprise E3 license as an example.

The Enterprise E3 license includes the following services, which can be enabled or disabled on a per user base. By enabling and/or disabling the service the App Launcher is impacted. Some services have an impact on more than one App Launcher tile. Next to the Enterprise E3 license other licenses are included as well in the list below.

  • Office 365 Enterprise E3
    • Sway
    • Mobile Device Management for Office 365‎
    • Yammer Enterprise
    • Azure Rights Management
    • Office 365 ProPlus
    • Skype for Business Online ‎(Plan 2)‎
    • Office Online
    • SharePoint Online ‎(Plan 2)‎
    • Exchange Online ‎(Plan 2)
  • Office 365 Planner
    • Office 365 Planner Preview
  • Project Pro for Office 365
    • Project Pro for Office 365
  • Microsoft Power BI for Office 365
    • Yammer Enterprise
    • Microsoft Power BI Information Services Plan 1
    • Microsoft Power BI Reporting and Analytics Plan 1
  • Microsoft PowerApps
    • Microsoft Power Videos Basic
    • Microsoft Power Flows Basic
    • Microsoft PowerApps

How to download video offline from Office 365 Video

Office 365 Video is a media sharing solution which is part of Office 365. It allows users to upload, play, share, embed, group in channels and manage their videos. The feature which is currently missing is downloading a video.

Under the hood

To get to the part of downloading the video we need to understand what is happening under the hood of Office 365 Video. Videos are grouped in channels. For each channel a site collection is created. This is not shown to the end user but is mandatory information to actually download the video. All videos are uploaded to this site collection in an Assets library. This library is accessible via the browser!

Download the video

We know now that the videos are part of a Assets library. How do we know where this Assets library is located? This is fairly easy, because the name of the channel is the name of the site collection.

For example our channel is named “Corporate News”. The underlying site collection has the URL https://company.sharepoint.com/portals/corporate%20news. Via the settings menu we can navigate to “Site Contents” and click on the Assets library. Although the name is has a technical reference, thus not really readable. The Assets library name for the videos is “

$Resources:cmscore,PointPublishingListNameRootVideos;”.

Office 365 Video channel site contents

Luckily the URL to the Assets library is more straight forward https://company.sharepoint.com/portals/corporate%20news/pVid/Forms/Thumbnails.aspx.

Downloading the video is simple, just select the video and use the context menu and click “Download”.

Office 365 Video assets library, download a video

Office 365, where can I find my assigned license?

In Office 365 users require licenses for making use of the products. This is similar as on-premises. The corporate administrator assigns licenses in the Office 365 Admin Center or uses PowerShell for automation purpose.

Office 365 Admin Center - Assign License

The challenge I faced was around getting insights into the licenses which were assigned to me as an user. Most of the times I have access to the Office 365 Admin Center due to my role as consultant. But now I don’t have access, but there is still a way to see my assigned licenses.

The screenshot above shows the Office 365 Admin Center – Active Users page where licenses can be assigned to users. The link is https://portal.office.com/Admin/Default.aspx#ActiveUsersPage.

The user “admin admin” has all licenses assigned. Although he has access to the Office 365 Admin Center he can see his licenses from the new Office 365 Profile Page. Check out your assigned licenses at https://portal.office.com/profile.

Office 365 - Profile Page (assigned licenses)

Developing hybrid SharePoint apps that run on-premise and in the cloud – ESPC 2014

My session at the European SharePoint Conference (#ESPC14) was around developing hybrid apps with the SharePoint App Model. Below you can find the slide deck and PowerShell scripts I used during the demo.

Before you start building hybrid apps who are depending on the authentication done by Azure Control Services (ACS) you need to setup a trust between your on-premise farm and ACS.

  1. Replace the default STS certificate and reboot machine afterwards (Replace-STSCertificate.ps1)
  2. Install Microsoft Online Services Sign-In Assistant for IT Professionals RTW (64-bit), http://www.microsoft.com/en-us/download/details.aspx?id=41950
  3. Install Microsoft Online Services Module for Windows PowerShell (64-bit), http://go.microsoft.com/fwlink/p/?linkid=236297
  4. Run script to connect on-premise SharePoint farm to ACS (Connect-SPFarmToAAD.ps1)

Some important side notes:

  • When replacing the STS certificate, all current trusts who are depending on the STS become invalid. Meaning you have to recreate your existing Trusted Security Token Issuers (Install-TrustedSecurityTokenIssuer.ps1 & Remove-TrustedSecurityTokenIssuer.ps1)
  • Ensure you are using the RTW version of Microsoft Online Services Sign-In Assistant instead of the BETA (which is linked in the TechNet article)

Download PowerShell scripts.

Scripts originate from How to: Use an Office 365 SharePoint site to authorize provider-hosted apps on an on-premises SharePoint site (http://msdn.microsoft.com/en-us/library/office/dn155905(v=office.15).aspx), I don’t own the scripts but only provide them for easy of use.

Develop, Build, Package and Deploy Apps for Office 2013 with Visual Studio 2013–European Office 365 Connect

On April 1st and 2nd in Haarlem (The Netherlands) the first European Office 365 Connect took place. Speakers from over the world (like Dan Holme, Seb Matthews, Marc Reguera and many more) visited Haarlem and did sessions related to Office 365.

I’ve done a session about Apps for Office together with Visual Studio 2013. This was a kind of follow-up session for “The New SharePoint Online Apps – Napa in Action” from Patrick Lamber. You can find my slide deck below.

The demo was around building a Wikipedia Task Pane app which leverages the Wikipedia API for searching Wikipedia. Below a screenshot of the Task Pane App for Office inside the Word 2013 (desktop) client.

Wikipedia Task Pane app inside Word 2013 client

Once the app was done it’s deployed to Windows Azure via a Web Deploy package and the XML manifest is made available to end-users to consume from the Corporate Catalog (hosted in SharePoint Online). After configuring the Office client the Corporate Catalog is available from within Word, Excel, PowerPoint.

Apps for Office catalog in Word (desktop) client

Download the demo sources here: http://1drv.ms/1pTuGx9

SharePoint Online Tenant URLs

Setting up your Office 365 environment and looking for the entry URLs? Below you can find the URLs related to your company SharePoint Online tenant.

Commonly used URLs for a SharePoint Online tenant:

Other URLs related to Office 365:

SharePoint Client Browser 1.0 released, bye bye preview!

Finally after 2 months I decided to build the 1.0 version of SharePoint Client Browser and released it to the community! Although the preview (beta) status did not prevent people from downloading it. The counter is currently set at 555 downloads since start of the project on the 2nd of July (only 2 months ago).

CodePlex project and download at https://spcb.codeplex.com/.

So what got changed? I guess almost everything changed from authentication support for default (username and password), SharePoint Online, anonymous and forms based all the way to almost complete coverage of the Client Side Object Model (CSOM). That’s a bit over the top, but the basics for Foundation are in the tool. New capabilities for future releases will focus on Server components like taxonomy.

Remote PowerShell for SharePoint Online and on-premise

A hidden gem is the PowerShell support. It’s very easy to start a PowerShell session and use CSOM within PowerShell. Meaning remote PowerShell for SharePoint Online (and on-premise of course).

How to?
  • Open SharePoint Client Browser
  • Add a new site collection
  • Select the site collection in the tree view
  • Click the PowerShell-button in the menu bar (or use the context menu)
  • Enter your password (if needed)
  • Start using CSOM in PowerShell

PowerShell support for CSOM PowerShell console with CSOM and SharePoint Online (Office 365)

Some highlights of the tool

Why do you want to use this tool? One reason should be enough, it allows you to speed up your development by providing insights into the CSOM. And much more…

  • Get insight in your site collection structure
  • Find hidden lists, items or documents
  • Discover artifact properties
  • Easily start PowerShell, via context menu, and run (scripted) queries against your remote site collection
  • Support for both SharePoint 2010 and SharePoint 2013
  • Connect to on-premise or SharePoint Online (Office 365) site collections
  • No installer
  • Remote access from your desktop to site collection via Client Side Object Model (CSOM)
    • Can run remote, no need to run on the SharePoint server itself

SharePoint Client Browser for SharePoint 2013

Slide deck and demos SharePoint Saturday 2013 Holland (#SPSNL13)

Last Saturday I presented at the SharePoint Saturday Holland 2013. It was a good vibe and the audience made it an interactive session. Below you can find the slide deck and parts of PowerShell scripts and source code which I used during my demos.

SharePoint Saturday Holland 2013

Developing hybrid SharePoint apps that run on-premise and in the cloud

With the new SharePoint App model running outside the SharePoint worker process it introduces new authentication models. As a developer you don’t want to build multiple versions of the same app implementing each authentication model separately. This session explains the differences between securing SharePoint apps with OAuth in Office 365 and S2S High Trust in on-premise deployments. You will learn how to build a single app that will run on-premise, online and hybrid SharePoint environments.

Demo: Configure the on-premise SharePoint with Trusted Security Token Issuer

To support high-trust (S2S) apps you need to configure the Trusted Security Token Issuer in your on-premise SharePoint farm. This script is used during the demo to configure the SharePoint farm.

Add-PSSnapin Microsoft.SharePoint.PowerShell -ea 0 # Get the .cer file that you want to use with your app. $certificate = Get-PfxCertificate "C:\Apps\AppCertSP2013.cer" # Get the issuer ID of your app. All the letters in the issuer ID GUID must be lowercase. $issuerId = 'a58e2347-0ead-4ba0-b4b7-75120aa09e4e' # Get the current authentication realm for your SharePoint site $realm = Get-SPAuthenticationRealm -ServiceContext "http://vm-sp-01/sites/dev" # Get the issuer ID together with the realm value. $fullIssuerIdentifier = $issuerId + '@' + $realm # Create a trusted security token service. This fetches metadata from your app (for example, the certificate) and establishes trust with it, so that SharePoint 2013 can accept tokens that are issued by your app. New-SPTrustedSecurityTokenIssuer -Name $issuerId -Certificate $certificate -RegisteredIssuerName $fullIssuerIdentifier –IsTrustBroker

Demo: Build Hybrid app with a single codebase for on-premise and cloud

My last demo was building a Hybrid app that consists of a single codebase which runs both on-premise and in the cloud. The logic which determines if SharePoint is hosted in on-premise or in the cloud is below.

public partial class Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Uri hostWeb = new Uri(Request.QueryString["SPHostUrl"]); string contextTokenString = TokenHelper.GetContextTokenFromRequest(Request); if (string.IsNullOrEmpty(contextTokenString)) { using (var clientContext = TokenHelper.GetS2SClientContextWithWindowsIdentity(hostWeb, Request.LogonUserIdentity)) { clientContext.Load(clientContext.Web, web => web.Title); clientContext.ExecuteQuery(); Response.Write(clientContext.Web.Title); } } else { using (var clientContext = TokenHelper.GetClientContextWithContextToken(hostWeb.OriginalString, contextTokenString, Request.Url.Authority)) { clientContext.Load(clientContext.Web, web => web.Title); clientContext.ExecuteQuery(); Response.Write(clientContext.Web.Title); } } } }

Compare SharePoint 2013 editions: on-premise and online

In the process of determining which SharePoint 2013 edition you need? Microsoft has provided a TechNet article containing all SharePoint 2013 features compared to the on-premise and online editions. This article lists the feature availability across Office 365 plans, SharePoint Online standalone plans and on-premise.

Comparing SharePoint 2013 editions is a bit hidden in the SharePoint Online Service Description, so I provided an overview and deep links below.

SharePoint 2013 on-premise

  • SharePoint Foundation 2013
  • SharePoint Server 2013 Standard CAL
  • SharePoint Server 2013 Enterprise CAL

Office 365 plans

  • Office 365 Small Business
  • Office 365 Small Business Premium
  • Office 365 Midsize Business
  • Office 365 Enterprise E1
  • Office 365 Education A2
  • Office 365 Government G1
  • Office 365 Enterprise E3
  • Office 365 Education A3
  • Office 365 Government G3
  • Office 365 Enterprise E4
  • Office 365 Education A4
  • Office 365 Government G4
  • Office 365 Enterprise K1
  • Office 365 Government K1
  • SharePoint Online Enterprise External Users

SharePoint Online standalone plans

  • SharePoint Online Plan 1
  • SharePoint Online Plan 2

Source: SharePoint Online Service Description, http://technet.microsoft.com/en-us/library/jj819267.aspx