Como instalar o ambiente do PowerShell e PnP para o Sharepoint Online
Descrição sobre como preparar o seu ambiente PowerShell PnP, para poder rodar os scripts de automação criados pelo Workhub.
Requisitos dos Scripts
PowerShell na versão 7.x ou superior
PnP PowerShell na versão 1.7.x ou superior
Instalação/atualização do PowerShell para versão 7.x
Abra uma janela do PowerShell em sua máquina, como administrador (para realizar este passo, você pode digitar "powershell" no seu menu iniciar do Windows)
Verifique a versão atual do seu PowerShell usando o comando abaixo. Caso a versão do PowerShell seja menor do que a dos requisitos mínimos, você deve atualiza-lo em: https://docs.microsoft.com/en-us/powershell/scripting/windows-powershell/install/installing-windows-powershell?view=powershell-7.1 Link direto: https://github.com/PowerShell/PowerShell
$PSVersionTable

Instalação/atualização do PnP PowerShell (PnP)
Abra uma janela do PowerShell em sua máquina, como administrador (para realizar este passo, você pode digitar "powershell" no seu menu iniciar do Windows)
Verifique a versão atual do seu PnP usando o comando abaixo:
Get-Module *pnp* -ListAvailable | Select-Object Name,Version | Sort-Object Version -Descending

Caso o PnP.PowerShell esteja abaixo da versão esperada, você pode atualiza-lo rodando o comando abaixo, em uma janela do PowerShell:
Install-Module -Name "PnP.PowerShell" -AllowClobber
Caso o PnP.PowerShell esteja abaixo da versão esperada, você pode atualiza-lo rodando o comando abaixo, em uma janela do PowerShell:
Instalação da biblioteca necessária para criação de usuários
Caso você pretenda rodar o script de cadastro de usuários, é necessária a instalação de uma biblioteca adicional, chamada AzureAD. Para instala-la, basta rodar o comando abaixo, na janela do PowerShell:
Install-Module AzureAD
Como dar permissões para um usuário usar o PowerShell PnP e acesse o meu Sharepoint Online?
Para que seja possível executar scripts PowerShell PnP conectando ao Sharepoint Online, é necessário permitir o uso do PowerShell para o usuário que será utilizado para rodar os scripts.
Isto pode ser feito abrindo uma janela de PowerShell (como administrador) na máquina e rodando o comando abaixo.
O PowerShell vai pedir o usuário e senha que deve ser autorizado a rodar scripts (este será o usuário que usaremos posteriormente, para rodar os scripts). Em seguida, caso o usuário e senha estejam corretos, será exibida uma URL (que tem um tempo de expiração de 1 hora) para que seja enviado para um Administrador Global, para que este aprove a utilização do PowerShell por este usuário.
Quando este administrador acessar o link, usando seu login e senha, ele será apresentado com uma tela explicando qual permissão está sendo concedida.
Register-PnPManagementShellAccess -ShowConsentUrl
Como permitir que scripts não assinados digitalmente rodem no meu ambiente?
Para isto, basta rodar o comando abaixo, no PowerShell
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
Após a instalação do ambiente, como testar se está tudo ok?
Depois de ter seguido os procedimentos de preparação do ambiente, precisamos testar tudo conectando no ambiente Sharepoint Online, usando o PowerShell. Para tanto, siga o procedimento abaixo:
Abra uma janela do PowerShell (como administrador)
Rode o comando abaixo, alterando o endereço do site e fornecendo as credenciais de acesso no momento em que elas foram solicitadas
Veja se a conexão é efetuada com sucesso (ou se ocorre algum erro)
Caso a conexão seja efetuada com sucesso, então, o ambiente está validado e pronto para rodarmos os scripts Workhub!
Connect-PnPOnline -Url "https://NomeDoTenant.sharepoint.com" -UseWebLogin
Como forçar o uso do PnP 2.5 ou outra versão?
Para forçar o uso de uma determinada versão do PnP, você pode usar o comando abaixo, especificando a versão desejada.
Import-Module PnP.PowerShell -RequiredVersion 2.5.0 -Force
Para verificar a versão sendo usada no momento:
(Get-Module PnP.PowerShell).Version
Site com a documentação oficial do PowerShell
https://docs.microsoft.com/en-us/powershell/scripting/overview?view=powershell-7.1
Site com a documentação oficial do PowerShell PnP
Last updated