Book Image

PowerShell for Office 365

By : Martin Machado
Book Image

PowerShell for Office 365

By: Martin Machado

Overview of this book

While most common administrative tasks are available via the Office 365 admin center, many IT professionals are unaware of the real power that is available to them below the surface. This book aims to educate readers on how learning PowerShell for Offi ce 365 can simplify repetitive and complex administrative tasks, and enable greater control than is available on the surface. The book starts by teaching readers how to access Offi ce 365 through PowerShell and then explains the PowerShell fundamentals required for automating Offi ce 365 tasks. You will then walk through common administrative cmdlets to manage accounts, licensing, and other scenarios such as automating the importing of multiple users,assigning licenses in Office 365, distribution groups, passwords, and so on. Using practical examples, you will learn to enhance your current functionality by working with Exchange Online, and SharePoint Online using PowerShell. Finally, the book will help you effectively manage complex and repetitive tasks (such as license and account management) and build productive reports. By the end of the book, you will have automated major repetitive tasks in Office 365 using PowerShell.
Table of Contents (16 chapters)
Title Page
About the Authors
About the Reviewer
Customer Feedback

Managing SharePoint Online from PowerShell Core

As the SharePoint Online API needs to be installed on the scripting machine, running it outside of Windows is not as straightforward as with Exchange. The libraries of the module are compiled for the .NET Framework, and PowerShell Core uses .NET Framework Core, so we have an incompatibility problem. Once .NET Framework Core matures, the Office 365 API should be offered compiled for this new platform.

However, we can still use the SharePoint Online API from PowerShell Core through remoting. For the sake of an example, we will implement a client/server approach, similar to the way Exchange works. We will connect from a Linux machine running PowerShell Core to a server running PowerShell and with the SharePoint Online API also installed.

The example would be the same as the previous one, if not for the problem of passing credentials across the sessions. To open a connection with SharePoint Online, we need to pass credentials to the Connect-SPOService...