Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
How to use the Windows Credential Manager to ease authentication with PnP PowerShell
In those situation where you don't want to be prompted for a username and password, you could hardcode your credentials in your PowerShell script. However, while this is inflexible, it is also very insecure.
We propose that you use the Windows Credential manager instead, which has a secure and managable storage concept that the PnP PowerShell cmdlets can use.
Open your control panel, and open the Credential Manager.
- Select Windows Credentials
- Add a new Generic credential
There are two approaches you can use:
URL based approach
- Enter the URL of your site you want to setup a credential for. You can use just your full tenant address (e.g. "https://yourtenant.sharepoint.com", or you can be more specific by entering a more complete URL, alike "https://yourtenant.sharepoint.com/sites/yoursite" or only create a credential for that site.
- Enter the username and password to use for that url
From that moment you can simply use the Connect-PnPOnline cmdlet to connect to your site as follows:
Connect-PnPOnline -Url https://yourtenant.sharepoint.com
You will not be prompted for credentials.
You can mix and match the credential manager entries to use specific credentials for other sites.
Instead of entering a URL you can also enter -any- label in the URL field. From that moment you can can use the Connect-PnPOnline cmdlet as follows:
Connect-PnPOnline -Url https://yourtenant.sharepoint.com -Credentials YourLabel