How to Connect to SharePoint Online from PowerShell?

I know I said it several times, but I'll say it again: I'm a big fan of PowerShell! PowerShell makes repetitive tasks easier and makes our life smarter. It helps to automate complex tasks and reduces risk of human errors. In this article, I'm exploring how to use PowerShell with SharePoint Online.

How to Connect to SharePoint Online using PowerShell?
Follow these steps to connect to SharePoint online via PowerShell.

Step 1: Install SharePoint Online PowerShell Module 
Make sure You have PowerShell and SharePoint Online PowerShell Module Installed. To download Windows Management Framework 3, which includes PowerShell 3.0: http://www.microsoft.com/en-us/download/details.aspx?id=34595

To Download and Install SharePoint online PowerShell module:
You must download and install SharePoint Online Management Shell to start with. Download PowerShell for SharePoint online at: https://www.microsoft.com/en-us/download/details.aspx?id=35588
install powershell for sharepoint online
Instead of downloading and installing the MSI file, you can also install PowerShell module for SharePoint Online using: Install-Module -Name Microsoft.Online.SharePoint.PowerShell

Step 2: Connect to SharePoint Online with PowerShell
Here is how to connect to SharePoint Online site using PowerShell. Launch "SharePoint Online Management Shell" from start menu and connect to SharePoint Online Administration Center first and run this PowerShell script to connect to SharePoint Online:
Connect-SPOService -Url https://salaudeen-admin.sharepoint.com `
           -credential salaudeen@salaudeen.onmicrosoft.com
This cmdlet must be run before we use any other SharePoint Online cmdlets. Make sure you connect with an account with minimum permission of SharePoint Online administrator and use HTTPS in the admin site URL. You'll get the prompt for password.
Connect to SharePoint online with PowerShell

Step 3: Start using SharePoint online PowerShell cmdlets!
Once connected, you can start managing SharePoint Online with PowerShell cmdlets. Here are some examples. Let's create a site collection in SharePoint online using PowerShell.

SharePoint Online PowerShell to Create Site Collection
Now you can access SharePoint Online from PowerShell
#Lets create a new Site collection:
New-SPOSite -Url https://salaudeen.sharepoint.com/sites/Sales `
   -Owner salaudeen@salaudeen.onmicrosoft.com -StorageQuota 1000 -Title "Sales Site" 
powershell script to connect to sharepoint online

Create group in SharePoint Online with PowerShell ISE:
How to run PowerShell script for SharePoint Online? You can use PowerShell ISE to to run PowerShell script for SharePoint Online. Lets create a group using PowerShell for SharePoint online.
#sharepoint online powershell create group:
Import-Module Microsoft.Online.SharePoint.Powershell -DisableNameChecking

#Connect to SharePoint Online
Connect-SPOService -Url https://salaudeen-admin.sharepoint.com `
      -credential salaudeen@salaudeen.onmicrosoft.com

#create group
New-SPOSiteGroup -Site https://salaudeen.sharepoint.com/sites/Sales  `
            -Group "Sales Managers" -PermissionLevels "Full Control" 
how to run powershell on sharepoint online
Even more generic code to connect to SharePoint Online through PowerShell would be:
#Import SharePoint Online PowerShell module
Import-Module Microsoft.Online.Sharepoint.PowerShell -DisableNameChecking

#Admin Center URL of your SharePoint Online - Set it accordingly
$AdminSiteURL= "https://crescent-admin.sharepoint.com"

#Get credentials to connect
$Credential = Get-Credential

#Connect to SharePoint Online services
Connect-SPOService -url $AdminSiteURL -Credential $credential

Connect SharePoint Online PowerShell with MFA (Multifactor Authentication)
To connect with SharePoint Online where multifactor authentication is enabled, simple remove the -Credential parameter from "Connect-SPOService" cmdlet.
Connect-SPOService -Url https://YourTenant-admin.sharepoint.com
Hit Enter, You'll get a popup (which is MFA aware) and enter the credentials

Index of SharePoint online PowerShell cmdlets:
For the list of available cmdlets for SharePoint online, Refer: SharePoint online 2013 PowerShell cmdlets at https://technet.microsoft.com/en-us/library/fp161364.aspx
You can also use this cmdlet to list SharePoint online PowerShell cmdlets:
Get-Command –Module Microsoft.Online.SharePoint.PowerShell
connect to sharepoint online using powershell

Limitation: Unlike SharePoint on-premises, SharePoint online offers only least set of PowerShell cmdlets to manage SharePoint online. E.g. There is no direct PowerShell cmdlets to activate feature, create subsite, create list, add list item, etc. Solution would be utilizing client side object model (CSOM) with PowerShell!
Client Side Object Model (CSOM) is a subset of: SharePoint Online Management Shell!
How to Connect to SharePoint Online from PowerShell? How to Connect to SharePoint Online from PowerShell? Reviewed by Salaudeen Rajack on January 27, 2015 Rating: 5

No comments:

Please Login and comment to get your questions answered!

Powered by Blogger.