For the complete documentation index, see llms.txt. This page is also available as Markdown.

SAM App Permissions

This page controls the permission set requested for the CIPP-SAM application when consent is granted on customer tenants through CPV. It is where additional Graph or other API permissions are added when a CIPP feature, custom script, or integration needs access beyond what CIPP ships with.

How Permissions Are Applied

CIPP's own default permissions are always applied and cannot be removed. Anything you configure here is layered on top of them, so this page adds permissions rather than replacing the set.

Saving stores the permission set. It does not grant anything on its own. To apply the change you need to run a permissions repair from Permissions, then complete a CPV refresh so that consent is updated in each customer tenant.

Editing Permissions

Permissions are grouped by the API they belong to, each shown as a service principal card with its display name, application ID, and a count of the application and delegated permissions currently assigned.

Expanding a card reveals two tabs.

Tab
Description

Application

Permissions the CIPP-SAM application holds in its own right, used when CIPP acts without a signed-in user.

Delegated

Permissions exercised on behalf of the signed-in service account.

On each tab, choose a permission from the picker and select the add button to include it. Existing permissions are listed below with the option to remove them.

Saving happens in two stages. Save Changes within a service principal card commits your edits to that API's permission set on screen. Save at the bottom of the page submits the whole set to CIPP. Changes are not stored until you use the second one.

Toolbar Actions

Control
Description

Add a Service Principal (optional)

Adds an API not already listed, so its permissions can be configured. Choose from the available service principals, or enter an application ID directly if the one you need is not listed.

Reset to Current Defaults

Discards unsaved changes and returns the builder to the currently saved permission set. This affects the screen only, not what is stored.

Download Manifest

Exports the current permission set as an application manifest, which is useful for review or for reproducing the configuration elsewhere.

Import Manifest

Loads a permission set from a manifest rather than building it by hand.

Not every permission can be represented in an application manifest. Where the export encounters any that cannot, you are offered a separate AdditionalPermissions.json download containing them, so nothing is silently lost.

Individual service principals can be removed from the list, with confirmation. Removing one drops the additional permissions configured against it, but has no effect on CIPP's defaults for that API.

Reset to CIPP Defaults

Reset to CIPP Defaults removes every additional permission layered on top of the defaults and returns the saved permission set to the built-in CIPP manifest. The default permissions themselves are unaffected.

As with any other change here, the reset only alters what CIPP stores. Run a permissions repair followed by a CPV refresh to apply it to your tenants.

Directory role assignments for the same application are configured separately on SAM App Roles.


Feature Requests/Ideas

We value your feedback and ideas. Please raise any feature requests on GitHub.

Last updated

Was this helpful?