App-Only Authentication:
App-Only is a model for setting up app principals. It can be used with SharePoint Online, as will SharePoint on-premises (SharePoint 2013 and above versions).
Steps:
- Navigate to SharePoint site (e.g., https://tenant.sharepoint.com)
- Open appregnew.aspx page (https://tenant.sharepoint.com/_layouts/15/appregnew.aspx).
Example:
https://m365x634254.sharepoint.com/_layouts/15/appregnew.aspx
- Click “Generate” button against Client Id row to generate a new client id.
- Click “Generate” button against Client secret row to generate a new client secret.
- Type any Title, which describes your app principal.
- Type App domain as www.localhost.com
- Specify redirect URI as https://www.localhost.com.
- Click Create.
- Note down the Client Id and Client Secret for future references.
Grant’s tenant scoped permissions to the newly created principal.
Steps:
- Open SharePoint Tenant site with Tenant Administrator account (https://tenantname.sharepoint.com/_layouts/15/appinv.aspx, https://tenantname-admin.sharepoint.com/_layouts/15/appinv.aspx)
Example:
Online – https://m365x634254.sharepoint.com/_layouts/15/appinv.aspx
On Premises – http://klstsp16:2016/_layouts/15/ appinv.aspx
- In the App Id textbox type your generated Client Id
- Click the Lookup button
In the Permission Request XML textbox type below xml,
<AppPermissionRequests AllowAppOnlyPolicy=”true”>
<AppPermissionRequest Scope=”http://sharepoint/content/tenant” Right=”FullControl”/> </AppPermissionRequests>
- Click Create button
- In the next dialog click Trust It button.