Skip to main content

Important Changes to PnP PowerShell

Key Insights You Won't Want to Overlook About PnP PowerShell Changes

There's a big upgrade that can impact your scripts and automation processes if you use PnP PowerShell. What you should know is as follows.

What’s Changing?

The PnP Management Shell was a multi-tenant app registration that was previously used to access Microsoft 365. This made it possible for you to provide your scripts the permissions they need.

On September 9, 2024, however, the multi-tenant app registration was removed. Scripts that rely on it are no longer functional after this date.

Why the Change?

This change aims to enhance security by encouraging users to switch to single-tenant app registrations. These registrations allow you to specify only the permissions you need, reducing potential security risks.

Handle this change by following these simple steps:

Register an App in Azure to use PnP PowerShell

Thanks to recent enhancements in the PnP PowerShell Module, creating an app registration specific to a tenant is now really simple.  PowerShell 7 or later version must be used because it is the only version of PnP PowerShell that is currently supported.
Registration of app can be done using the PnP command or one can follow the manual approach.

The user executing this action needs to have Global Administrator permission because we are creating the Entra ID application and the user needs to provide consent.

Steps to update are as follow:
1. Update the PnP PowerShell to latest version. Use the command mentioned below:
Update-Module PnP.PowerShell
2.   After PnP PowerShell has been updated, we need to do the pnp powershell azure app registration, run the following command to create the tenant-specific application:

Register-PnPEntraIDApp -ApplicationName “PnP PowerShell Application Registration” -Tenant  {yourtenantname}.onmicrosoft.com -Interactive
 Change the application name to suit your needs and replace "{yourtenantname}" with your tenant name.
3. A consent prompt with the default permissions will show up when you execute this command. Your application will be finalized upon your acceptance. Following that, the ClientId/ApplicationId will be output by the command; be sure to copy this ID because you'll need it for the following procedures.
PnP PowerShell Changes


In the previous steps, we've successfully completed the registration process. Now, it’s time to update your existing scripts and connections. Make sure to keep the ClientId/ApplicationId generated earlier.

Current connection command/method might be like this :
Connect-PnPOnline -Url https://{yourtenantname}.sharepoint.com -Interactive
replace this command/method with the following command:
Connect-PnPOnline -Url https://{yourtenantname}.sharepoint.com -ClientId [ClientId] -Interactive

Please comment if you have any questions. Sharing is helpful!

Reference:

Comments

Popular posts from this blog

SPFx Interview Questions With Answers

In this article, we are going to discuss interview questions related to the SPFx (SharePoint Framework Development ). It will help you to prepare for the interview and in getting clarity on the core concepts of SPFx development. What is SPFx? SPFx, short for SharePoint Framework,  SPFx  allows us for client-side SharePoint development, we can easily connect with SharePoint data and it also supports for open source tools. What is the major difference between SPFx web part and the SharePoint app? Both the development model supports client-side development but the major difference between these two is that the SharePoint app(add-in) runs on the iframe. What you can build with SPFx? Using SPFx framework we can customize the SharePoint pages. We can build things mentioned below using the SharePoint Framework(SPFx). Web parts, Extensions, Adaptive Card, Library Component How many types of extensions we can create using SPFx? SPFx has three extension types: Application Customizers: U...

How to register an app in SharePoint

In this article, we are going to learn how to register an app/add-in in SharePoint online. If you have created a Sharepoint provider-hosted add-in or other SharePoint solution and to access the SharePoint site or list using the app/add-in you need to register the add-in on SharePoint and to grant permission. Register app in SharePoint 1. Login into SharePoint and Navigate to register an app page. Use the URL mentioned below:          [Sitecollection URL]/_layouts/15/appregnew.aspx 2.  Once you navigate to the Register app page, a form will open. You need to fill all the fields on the form. Client Id and Client Secret  generated when we click on the generate button available next to the fields.  Title : Name of the add-in which you want to give. App Domain : Where your domain is hosted, for the local environment you can place             "www.localhost.com". Do not include HTTP or HTTPS...

SharePoint Framework SPFx Node Version Compatibility

How to check the compatibility between the SPFx version and the Node.js version The SharePoint Framework (SPFx) is a client-side development platform used to develop web parts and extensions for SharePoint. The SharePoint Framework (SPFx) is compatible with the Node.js versions. Existing SPFx solutions may have different SPFx versions as compared to the current solutions. To make the SPFx solution run, Node.js is required, and in this blog, I am sharing steps to check the compatible node module for SPFx.  Find the SPFx version from the solution:  Open the project solution and navigate to the "package.json" file. In package.json file you will find  "@microsoft/sp-core-library" key and value of this particular key is the version of the SPFx.       Ex:    "@microsoft/sp-core-library": "1.14.0" Another way to find the SPFx version is by command, open the command prompt and run the command mentioned below: npm ls -g --depth=0 @microsoft/generator-s...