Follow me on Twitter @AntonioMaio2

Thursday, June 30, 2016

SPTechCon Boston: Real World SharePoint Information Governance Case Studies

Thanks to everyone that attended my session today at SPTechCon in Boston on Real World SharePoint Information Governance Case Studies!  We had a great crowd with lots of really good questions. I hope everyone got something useful or helpful out of the presentation.

You can find my slides from the session here:


Please reach out if you have any questions.
Enjoy.
-Antonio


Tuesday, June 28, 2016

Data Loss Prevention in SharePoint 2016 & Office 365
How to Protect your Sensitive Information

Thanks to everyone that attended my session on SharePoint 2016 and Office 365 Data Loss Prevention yesterday.  It was great to meet everyone and share my thoughts and experience related to Microsoft's DLP technology within these two products.

The Microsoft Data Loss Prevention (DLP) capability that's now integrated into Office 365 and SharePoint 2016 is a great advancement in information security within these products.  It allows you to easily find sensitive data within your SharePoint or OneDrive for Business environment and automatically enforce policies on that content.  Those policies can identify sensitive information for end users, providing them with policy tips on how to handle it.  They can also block sensitive information from being accessed, and issue automated incident reports when policies are violated.

There are some prerequisites and dependencies that are important to understand when configuring DLP policies.  There are also some key differences between the DLP solutions within an on premise deployment of SharePoint 2016 and Office 365.

Prerequisites

In SharePoint 2016, the prerequisites for setting up DLP are the following:

  1. Create your search service application, define a crawl schedule and perform a full crawl.
  2. Configuring out going mail is highly recommended, so that policy notifications can be sent via email.
  3. Turning on Usage Reports is highly recommended, so that incident reports and overrides can be logged appropriately.
  4. Create an eDiscovery Center or Compliance Policy Center site collection, or both.  
    • You must create a different Compliance Policy Center per web application - you cannot have one that applies to all site collections across all web applications.  
    • However, you can create one eDiscovery Center site collection which can run DLP queries across all site collections in all web applications.
  5. Assign permissions to your compliance team, risk team and/or information security team so that they may access and manage DLP policies.  Its recommended that permissions are granted by making these users members of the Site Collection "members" group.

In Office 365, these prerequisites are taken care of for you.  You can simply access the Security and Compliance Admin Console within your tenant's Office 365 Admin Center, and start creating policies.

Dependence on Search

As we talked about in the presentation, the core data source behind both the SharePoint 2016 and Office 365 DLP is the SharePoint search index.  If content is not in the search index, the DLP engine won't find it.  This makes it all the more critical to have a healthy search and crawl configuration.

If you have explicitly excluded certain sites or content from SharePoint search, DLP policies cannot be applied to those areas.

When new content is added to SharePoint 2016, a crawl must occur and the search index updated with that content.  In addition, there are 4 timer jobs that must run to enforce DLP policies.  All this must occur before DLP polices can be enforced on sensitive information.

Options for Creating DLP Policies

In Office 365 a DLP policy is created by:

  • Specifying the locations where it may be applied: 
    • SharePoint Online (all sites or specific sites)
    • OneDrive for Business (all sites or specific sites)
  • Configuring one or more DLP Rules - rules are made up of:
    • Conditions
      • Select any number of 80 sensitive data types.  You may not create custom sensitive data types.
      • With each sensitive data type select the min and max # of instances
      • Who content is shared with (people inside or outside the organization)
      • Metadata properties
    • Actions
      • Send an email notification (default message or custom message)
      • Show a policy tip (default tip or custom tip)
      • Allow override (with or without business justification)
      • Block content (to all users except site owners, document owners or last modified)
    • Incident Reports
      • If a report is logged
      • Severity level
      • Send an email with the report
    • Configure some general settings for the rule like a name and description.
  • Configure some general settings like a name and description for the policy, as well as if it is configured.

In SharePoint 2016, a DLP policy is similarly created, but there are some differences:

  • Specify a name.
  • Select from one of 10 policy templates.  Each policy template relates to a combination of 10 sensitive data types.  
  • Select the number of instances of the sensitive data type which trigger the policy.
  • Specify an email address to which an incident report will be emailed
  • Select whether or not to display a policy tip (you cannot customize the text of the policy tip)
  • Select whether to block access to the content to all users except site owners, the document owner or the user that last modified the document.
  • Then you must assign the policy to a site collection where you wish it to be enforced.  You must specify each site collection one at a time.  You cannot easily apply it to all site collections.  As well, you cannot specify the application of a policy down to the subsite level.

In SharePoint 2016, it can take up to 24 hours for a DLP policy to be enforced on new documents.  Once again, you must wait for the search crawl to run, and then the 4 timer jobs related to this feature to run.  Even if you try to execute the timer jobs manually, I have found through testing that it can take up to 14 hours in a small SharePoint 2016 farm.

Areas for Improvement

As eluded to above, in Office 365 you can search for up to 80 sensitive data types.  In SharePoint 2016 on premise, you can only search for 10 - those 10 only relate to US and UK sensitive data types.

In SharePoint 2016, you cannot:
  • Specify more than one policy template per policy.  There is no concept of multiple rules making up a policy as there is in Office 365.
  • Customize which sensitive data types are searched for within the policy template, as you can in Office 365.
  • Customize either the email notification sent or the policy tip shown to the user, as you can in Office 365.
  • Specify any sort of HIPAA related sensitive data types, or sensitive data types from countries other than the US and UK.  Office 365 has access to a greater range of sensitive data types including those from many countries and those related to the HIPAA regulatory compliance standard.


Finally, either in Office 365 or SharePoint 2016, the following limitations currently exist:

  • DLP policies are not enforced on list items.  They are only enforced on documents.
  • DLP policies are not enforced when documents are uploaded to SharePoint.  They are only enforced on content already residing in SharePoint, which has been found by the Search crawler.

Presentation

My slides from yesterday's presentation can be found here:



Some Great Questions

There were some great questions raised that I would like to come back to readers with answers to in the coming weeks:

  • In SharePoint 2016, if you deploy additional language packs would you get additional sensitive data types related to countries or geographies with those languages?  My suspicion is no, but I think this is worth confirming.
  • If you have a hybrid configuration of SharePoint 2016 on premise with Office 365, your search index is combined and stored within Office 365.  In this case, how are DLP policies configured and managed?  What is the user experience like?
  • If you have metadata associated with documents and that metadata contains sensitive data, will the DLP policy be enforced on that document?  In this case, I suspect that if the metadata field is a managed property that is used by Search that it will find and enforce policies on this metadata, however once again this is worth testing to prove out.
Enjoy.
   -Antonio




Sunday, June 26, 2016

How to Disable Directory Synchronization in Office 365

I was working with a test Tenant in Office 365 recently where I had previously configured Directory Synchronization from an on premise Active Directory domain (which actually lived in an Azure VM).  I had recently turned off the Azure VM that hosted the AD domain, and I was now getting Directory Sync errors in Office 365 - which made sense since the domain had not synchronized in a few days.  At the same time, I was getting more and more familiar with the new Office 365 Admin Console which is quite nice actually, but I'm still trying to figure out where everything is found.

I decided to deactivate Directory Sync in my tenant to get rid of the errors.  I know I had seen it before because I've activated and deactivated it many times as I've tested the feature for clients.  But I couldn't find where you do that in the new Admin Console.  Let's take a look.

New Office 365 Admin Console

Here I've logged into my tenant and you can see my Directory Sync errors in the top left of the dashboard.  A sync hadn't happened in 68 hours, which made sense because I had turned the Azure VM off.


If I click on the GEAR icon in the left menu, which represents Settings, I get several options:


I select DirSync Errors in the menu... and I get nothing:


I select Services and Add-Ins and again I get several options:


Select Directory Synchronization in order to (hopefully) manage our directory synchronization options, and then we click another link to get to DirSync Management:


And we get to a nice screen which gives us several status indicators about our Directory Synchronization status (including that it has not synced in 68 hours), but no option to deactivate it:


I clicked the Troubleshooting link thinking that perhaps the option to deactivate the sync process could be found there:

 
 
 
I ran the scans, but again no luck.  I could not find the option to deactivate the sync process, despite how much I searched through the new Admin Console.  At this point, I returned to the old Admin Console to check if the option was still there.

Old Office 365 Admin Console

Once in the old Admin Console, in the left menu click on Users, then Active Users and then next to the Active Directory Synchronization title click Manage and there was my Deactivate option, along with similar status indicators to what I saw in the new Admin Console:

 

 

We click on Deactivate and we get a confirmation screen:


We click Deactivate Now and, finally, we've deactivated Directory Synchronization.  As usual, we're back at our Active User screen which tells us that Directory Synchronization could take up to 72 hours to take effect.  From my experience, it actually happens much quicker than this.


PowerShell

Alternatively, we could simply use PowerShell to get the current status of the synchronization process and disable it.  Here is the process you can follow:
  1. Launch the Windows Azure Active Directory Module for Windows PowerShell (right click the icon and select Run as Administrator).
  2. Type Connect-MsolService to connect to your tenant.  When prompted, login with your administrator credentials.
  3. Type (Get-MsolCompanyInformation).DirectorySynchronizationEnabled to get the current state of the directory synchronization process.  Don't forget the brackets.  If the sync process is enabled it will return True.
  4. To disable the sync process type Set-MsolDirSyncEnabled -EnableDirSync $false.
  5. When prompted to confirm select Y.

You may then type the same command as step 3 to confirm that it was been disabled.  You should get False returned at this point.

(Get-MsolCompanyInformation).DirectorySynchronizationEnabled

Enjoy.
   -Antonio




Wednesday, June 15, 2016

UPDATES: Office 365 Groups - Name Conflicts with Site Collections and Planner

I ran into an interesting situation today when working with Office 365 Groups related to how they are named that I wanted to share.  I had heard that there could be a name conflict that occurs between an Office 365 Group and a SharePoint Online site collection, so I wanted to test this out and understand the user's experience.  Big thank you to Brittany Kwait who contributed to testing these scenarios!

UPDATE 1: In working with the new Microsoft Planner, which was recently released as a new Office 365 experience, you'll also find that it creates an Office 365 Group as part of a new plan.  See below for some additional context into how Office 365 Groups are created and named as part of a Plan. 

UPDATE 2:  Microsoft recently announced here that new administration capabilities are coming to Office 365 Groups, including the ability to configure a Naming Policy in Azure Active Directory for Office 365 Groups.  According to Microsoft, this policy will allow administrators to configure a policy for appending text to the beginning or end of a group’s name and email address no matter where the group is created.  As well, administrators will be able to configure a list of specific blocked words that can’t be used in group names and rely on the native list of thousands of blocked words to keep their directories clean.  This feature is still roadmap and there isn't a committed timeframe yet for release, but I'm hopeful that it will help to address some off the naming experience inconsistencies.

Test 1: Create a New Group

Within the Office 365 portal I accessed by mail using the Outlook Web App and I created a new Group named "testgroup".  I did not click on Files right away in the Office 365 Group interface. 


I left my shiny new Group and navigated to the SharePoint Online admin console.  Here I created a new site collection and named it "testgroup" and gave it the URL https://maiolabs.sharepoint.com/sites/testgroup.  Everything worked fine!  My site collection was created without issue or error, using the name I gave it, which is the same as the Office 365 Group name I had chosen.  Where was the conflict?

I navigated back to my Group, and this time I clicked on Files.  At this point, I immediately got the screen which tells me "We're setting up...".

After a few minutes I got access to the space that was being created within the Group to store my files.  Of course, when an Office 365 Group is created, a OneDrive for Business site collection is created in which group members will store their files.  Now I began to understand what was going on.  The site collection associated with the Group does not get created until you click on the Files tab in the Group interface.  Its important to also note that the OneDrive for Business site collection that gets created in this case is a hidden site collection.

Once my Group space for storing files was created, I got the OneDrive for Business interface as I expected and checked the URL of the site.  It was:

https://maiolabs.sharepoint.com/sites/testgroup53/Shared%20Documents/Forms/AllItems.aspx

Notice the URL doesn't say "testgroup"?  It says "testgroup53".  I found that interesting but nothing conclusive yet.

Test 2: Create another New Group

This time I went back to my Outlook Web App and created another group named "testgroup2".  The Group was created fine as expected and I immediately clicked the Files tab to create the hidden site collection that would be associated with my Group. That also completed fine, and I checked my URL for that site collection and it was:

https://maiolabs.sharepoint.com/sites/testgroup2/Shared%20Documents/Forms/AllItems.aspx

Notice this time, the URL contains the actual Group name without any additional numbers tacked onto the end.  Interesting... Now I returned to the SharePoint Online admin console and created another site collection, this time named "testgroup2" and I ensured my URL was  https://maiolabs.sharepoint.com/sites/testgroup2.  Now I got the error I expected...


The site collection already exists.  Please enter a different address.

Conclusion

As I continued through the process, it was fine for the site collection name to be the same as that of an Office 365 Group.  However, the site collection cannot have the same URL as the OneDrive for Business site collection that is associated with a Group.  This makes sense - whenever an Office 365 Group is created and its OneDrive for Business site collection initialized, a OneDrive for Business site collection is created within SharePoint Online and of course you cannot have the same URL pointing to 2 different site collections.

Its interesting to note that if a site collection already exists with a particular URL and I then click Files in a Group to initiate my Group's OneDrive for Business site collection, Office 365 Groups will alter the URL so that it is unique and doesn't conflict with any site collections. However, this doesn't happen the other way around - if I create a site collection with the same name and URL of an existing Office 365 Group, I get an error and no automatic modifications to the site collection's URLs are made.  This also makes sense - we often want our SharePoint site collection to have a specific URL.

Improvements

What could be improved is the fact that the OneDrive for Business site collection associated with a Group is hidden.  To a SharePoint Online admin who is simply trying to create a new site collection, they may get this error and look at the list of site collections to see which other site collection has the same URL and not see any in their list which conflicts.  Yes the SharePoint admin can simply alter the URL, but they may want the URL to be something specific.  This may also cause them to spend significant time investigating the issue and open a support ticket with Microsoft.  This situation could be made even worse by the fact that, once Groups are enabled in your organization and by default everyone in the organization can create one or multiple Groups, you'll end up with many hidden site collections with no control over how they are named.  So the possibility of a conflict between an existing Group URL and a new site collection could be high.  This is especially true if you get a significant adoption of Office 365 Groups and also use SharePoint Online site collections.

I am encouraged by the fact that, as announced on May 4, later this year Microsoft will be launching the ability to associate a real SharePoint team site with an Office 365 Group.  With that, I'm hopeful that SharePoint Online admins will get real visibility into which sites are associated with which Office 365 Groups, and avoid this naming/URL conflict.

UPDATE: Office 365 Planner - A Connection to Groups

[Thanks again to Brittany Kwait for this update!]

Microsoft recently released a new service within Office 365 called Planner.  Planner allows teams to quickly organize, plan and track work projects and tasks using a highly visual experience: a task board that you might be familiar with from Agile/Scrum methodologies or solutions like Trello.  In using Planner, when you create a new "Plan"  Planner will automatically create a new Office 365 Group that will be associated with the Plan.  The Group will be named the same as the Plan.



If you then try to create an Office Group with the same name, in this case you'll get an error:


Here we get another interesting inconsistency - if you remember, when we tried to create a Group that was the same name as a site collection, the URL was simply automatically adjusted to be unique as part of the Group creation process.  No error appeared.  When we try to create a Group now that's the same name as a Plan, we get an error.  The same will probably happen if we try to create a Group that's the same name as another Group.  These aren't major issues - I just find it nice to know about and expect the inconsistency.

Once again, my point here is that I hope in the future, the new features we are told are coming for Office 365 Groups (Naming Policy, Team Sites associated with Groups) will help us control naming, and have Groups, Plans and site collections all work well together for administrators and end users. 

Enjoy your Groups! ...and Plans!
   -Antonio

Tuesday, June 14, 2016

Vulnerability: SharePoint 2010
MS16-054 CRITICAL - Addressed in May 2016 CU

In May 2016, Microsoft released a CRITICAL security bulletin related to vulnerabilities in Microsoft SharePoint Server 2010.  The vulnerabilities are identified as Remote Code Execution issues.  Full details can be found here: https://technet.microsoft.com/en-us/library/security/ms16-054.

Versions of Microsoft Office are also affected: 2007, 2010, 2013, 2013RT, 2016 and Mac Versions 2011 & 2016.  Microsoft SharePoint Foundation 2010 is not affected by this issue. 

The following services within the identified SharePoint version(s) are specifically affected:

1. Microsoft SharePoint Server 2010
    • Word Automation Services on Microsoft SharePoint Server 2010 Service Pack 2

    2. Microsoft Office Web Apps Server 2010 Service Pack 2
    • Microsoft Office Web Apps 2010 Service Pack 2

    Background

      According to the official Microsoft Bulletin the following is a summary of the vulnerability:

      This security update resolves vulnerabilities in Microsoft Office. The vulnerabilities could allow remote code execution if a user opens a specially crafted Microsoft Office file. An attacker who successfully exploited the vulnerabilities could run arbitrary code in the context of the current user. Customers whose accounts are configured to have fewer user rights on the system could be less impacted than those who operate with administrative user rights.  The security update addresses the vulnerabilities by correcting how Office handles objects in memory, and by correcting how the Windows font library handles embedded fonts.

      Security Resources


      • CU UPDATE: a SharePoint Server 2010 Cumulative Update addressing these vulnerabilities and other issues is available for SharePoint Server 2010 through the May 2016 Cumulative Update

      • WORKAROUND: There are no workarounds identified specifically related to Microsoft SharePoint Server 2010.  There are several workarounds related to one of the vulnerabilities identified in the security bulletin which involve preventing users from opening untrusted RTF files by implementing registry customizations.

      • REPORTED EXPLOITS: According to Microsoft, at this time there are no reported exploits that have occurred using these vulnerabilities.

      Vulnerability Details

      Multiple remote code execution vulnerabilities exist in Microsoft Office software when the Office software fails to properly handle objects in memory. There are several vulnerabilities listed in this bulletin, most of which apply only to Microsoft Office.  However, 2 are specifically related to Microsoft SharePoint 2010 and details regarding these are available at the National Vulnerability Database:

      Additional notes from Microsoft:

      An attacker who successfully exploited the vulnerabilities could run arbitrary code in the context of the current user. If the current user is logged on with administrative user rights, an attacker could take control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

      Exploitation of the vulnerabilities requires that a user open a specially crafted file with an affected version of Microsoft Office software. In an email attack scenario an attacker could exploit the vulnerabilities by sending the specially crafted file to the user and convincing the user to open the file. In a web-based attack scenario an attacker could host a website (or leverage a compromised website that accepts or hosts user-provided content) that contains a specially crafted file that is designed to exploit the vulnerabilities. An attacker would have no way to force users to visit the website. Instead, an attacker would have to convince users to click a link, typically by way of an enticement in an email or Instant Messenger message, and then convince them to open the specially crafted file. The security update addresses the vulnerabilities by correcting how Office handles objects in memory.

      Monday, June 13, 2016

      Vulnerability: SharePoint 2007, 2010 and 2013
      MS16-042 CRITICAL - Addressed in Apr 2016 CU

      I'm a little behind in blogging about recently released Microsoft Security Bulletins for SharePoint, but I'll attempt to catch up a bit here...

      In April 2016, Microsoft released a CRITICAL security bulletin related to vulnerabilities in Microsoft SharePoint Server 2007, 2010 and 2013.  In all identified versions, the vulnerabilities found are identified as Remote Code Execution issues.  Full details can be found here: https://technet.microsoft.com/library/security/MS16-042.

      Versions of Microsoft Office are also affected: 2007, 2010, 2013, 2013RT, 2016 and Mac Versions 2011 & 2016.  Microsoft SharePoint Foundation 2010 and Foundation 2013 are not affected by this issue. 


      The following services within the identified SharePoint version(s) are specifically affected:

      1. Microsoft SharePoint Server 2007 (MOSS)
      • Excel Services on Microsoft SharePoint Server 2007 Service Pack 3 (32-bit editions)
      • Excel Services on Microsoft SharePoint Server 2007 Service Pack 3 (64-bit editions)

      2. Microsoft SharePoint Server 2010
        • Excel Services on Microsoft SharePoint Server 2010 Service Pack 2                 
        • Word Automation Services on Microsoft SharePoint Server 2010 Service Pack 2
        UPDATE: For SharePoint Server 2010 specifically, this update was superseded by the May 2016 cumulative update which fixes an additional security vulnerability. My post on that update can be found here: http://www.trustsharepoint.com/2016/06/vulnerability-sharepoint-2010-ms16-054.html.

        3. Microsoft SharePoint Server 2013
        • Word Automation Services on Microsoft SharePoint Server 2013 Service Pack 1

        4. Microsoft Office Web Apps Server 2010 Service Pack 2
        • Microsoft Office Web Apps 2010 Service Pack 2

        5. Microsoft Office Web Apps Server 2010 Service Pack 2
        • Microsoft Office Web Apps Server 2013 Service Pack 1

        Background

          According to the official Microsoft Bulletin the following is a summary of the vulnerability:

          This security update resolves vulnerabilities in Microsoft Office. The most severe of the vulnerabilities could allow remote code execution if a user opens a specially crafted Microsoft Office file. An attacker who successfully exploited the vulnerabilities could run arbitrary code in the context of the current user. Customers whose accounts are configured to have fewer user rights on the system could be less impacted than those who operate with administrative user rights.  The security update addresses the vulnerabilities by correcting how Office handles objects in memory.

          Security Resources



          • WORKAROUND: There are no workarounds identified specifically related to Microsoft SharePoint Server at this time.  There are several workarounds related to one of the vulnerabilities identified in the security bulletin which involve preventing users from opening untrusted RTF files by implementing registry customizations.

          • REPORTED EXPLOITS: According to Microsoft, at this time there are no reported exploits that have occurred using these vulnerabilities.

          Vulnerability Details

          Multiple remote code execution vulnerabilities exist in Microsoft Office software when the Office software fails to properly handle objects in memory. There are several vulnerabilities listed in this bulletin, most of which apply only to Microsoft Office.  However, 2 are specifically related to the identified versions of Microsoft SharePoint and details regarding these are available at the National Vulnerability Database:

          Additional notes from Microsoft:

          An attacker who successfully exploited the vulnerabilities could run arbitrary code in the context of the current user. If the current user is logged on with administrative user rights, an attacker could take control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

          Exploitation of the vulnerabilities requires that a user open a specially crafted file with an affected version of Microsoft Office software. Note that where the severity is indicated as Critical in the Affected Software and Vulnerability Severity Ratings table, the Preview Pane is an attack vector for CVE-2016-0127. In an email attack scenario an attacker could exploit the vulnerabilities by sending the specially crafted file to the user and convincing the user to open the file. In a web-based attack scenario an attacker could host a website (or leverage a compromised website that accepts or hosts user-provided content) that contains a specially crafted file that is designed to exploit the vulnerabilities. An attacker would have no way to force users to visit the website. Instead, an attacker would have to convince users to click a link, typically by way of an enticement in an email or Instant Messenger message, and then convince them to open the specially crafted file. The security update addresses the vulnerabilities by correcting how Office handles objects in memory.

          Wednesday, June 8, 2016

          SOLD OUT: Microsoft BUILD Tour Canada June 10 - Register to Watch It LIVE

          In just a couple of days, Microsoft BUILD Tour Canada will be returning for 2016. 

          Unfortunately the onsite in person event is now SOLD OUT!  You can still watch it LIVE and experience all the great Microsoft speakers on some new Microsoft technologies that have just been announced. 

          Make sure you register for the live stream here: LIVE STREAM Microsoft BUILD Tour Canada


          This is an awesome, free event that I highly recommend!  Its become really popular year after year!  You'll get:
          • Deep Dives on the top announcements from Microsoft's annual BUILD conference
          • It’s all about new technology: Sessions, Demos and Coding exercises
          • Helps customers prepare their skillsets, app and software businesses for the future using the latest Microsoft technologies
          • Delivered by Engineers from Microsoft HQ
          • Unlike the general Build Conference, this event is completely free event!

          You'll find a number of great sessions including:
          • What's new in Windows 10 and the Universal Windows Platform
          • How to Use a single codebase and adaptive UX to target PC, mobile, Xbox and HoloLens, while connecting to the broader internet of things
          • How to Use Xamarin and Microsoft's cloud services to build rich cross platform experiences with the skills you already have
          • How to Extend your existing Win32/.NET and websites to leverage the latest Universal Windows Platform capabilities