PowerShell where-object query on large datasets

The last few weeks I had to create a few PowerShell scripts where I had to combine certain information from several sources. The way I used to do it was to do a where-object on an ID in an array. This works well, but I noticed that on large datasets it takes a lot of time. A where-object on a dataset of 30.000 items it takes on average between 1 and 2 seconds.

Move to the default Exchange auditing

Arjan Cornelissen
Last month Microsoft announced that they enable auditing by default on every mailbox. Before this, you needed to run a script on every newly created mailbox to enable auditing for the items you wanted. Microsoft provided a script for this that can be found on GitHub. The announcement can be found on techcommunity. In this announcement, they say that every new mailbox gets the default set of auditing. This default set can be updated from Microsoft’s side, but when you have enabled auditing by yourself or the script, they provided it stays that way.

Using multiple languages in Microsoft Teams

Arjan Cornelissen
Collaborating with Microsoft Teams is very easy, and I’m using it at several customers. At one customer the teams are getting multi-language where before every conversation was in Dutch, now with new team members that are not speaking Dutch they have trouble going back into the conversations and do not understand what is written. Luckily Microsoft Teams now offers the ability like Skype to have translations for this. We found that this was not enabled by default in the tenants that I worked checked.

DIWUG December 2018

This week I had the privilege to speak at DIWUG about securing your Office 365 environment. This time I started from a governance point of view. So what policies do we have and do we need before we can set up the security in Office 365. Also what licenses are available and do we need additional licenses to satisfy our security needs. In the demos I showed how Conditional Access can help securing the environment and how Terms of use can be used for certain user groups or applications.

Enable PIM role with PowerShell

Arjan Cornelissen
At my customer we are using Privileged Identity Management (PIM) for all admin related tasks, no employee has standing access within the company. What is PIM Let’s first start by explaining Privileged Identity Management. It is a service that is available in Azure AD and is part of Azure AD Plan 2. For a user to use it, they need this plan enabled. PIM makes it possible to give a user the privilege to elevate his or her access rights for a preset amount of time to a higher role such as User Administrator or SharePoint Administrator.

SharePoint Saturday Belgium 2018

It was that time of the year again to visit Belgium for their SharePoint Saturday. An excellent day organized by BIWUG. This year was a tribute to an amazing SharePoint teacher who passed away too soon, Patrick Tisseghem. I did not know him but heard and read about him, I only was working 1 year with SharePoint when he passed away. During the day there were videos and photos about the things he did for the community.

Upgrading cloud users to synced users

Arjan Cornelissen
Some time ago I got the question if it was possible to start using AAD Connect while some of the users are already in Office 365 with a cloud account without losing their content and access. So this was a first that I had this question and found myself searching on the internet and found an article from Microsoft that this was possible. https://docs.microsoft.com/en-us/azure/active-directory/connect/active-directory-aadconnect-existing-tenant This article describes that you can start syncing an on-premises AD with Azure AD when you already have users in Azure AD.

Correct sizing Shared Mailboxes

Arjan Cornelissen
Today I saw a notification in the Office 365 Portal about the correct sizing of Shared Mailboxes. It seems that Microsoft is creating Shared and resource mailboxes with a max limit of 100GB. As the documentation states these mailboxes can only have a size of 50GB and when you need more space you need to assign an Exchange Plan 2 license to that mailbox to get 100GB of space for that mailbox.

Connect to SharePoint Online in Azure Automation app credentials

In this post, I want to take you with me how you can use app credentials in an Azure Automation script to connect to SharePoint Online. Many PowerShell scripts use a username and password, but these are less secure than using an app credential and can also be used to login to SharePoint Online in the browser. By default, connecting to SharePoint uses basic authentication and many companies are on route to disable this to make use of conditional Access and MFA.