This cmdlet creates a role assignment for a principal (user, group, or application) to grant
permissions via Power Platform RBAC.
The role can be scoped at the tenant,
environment, or environment group level.
If -ClientId isn't specified, the cmdlet uses the cached ClientId from a previous call to
New-PPAuthorizationApplication or any Power Platform RBAC cmdlet that was given -ClientId explicitly.
When -ClientId is provided, it is stored in the cache for future use.
The Role parameter accepts the role definition name as returned by the Power Platform
Authorization API, such as "Power Platform Reader".
Use -RefreshRoles to update the
cached list of available roles.
Creates a role assignment while forcing a refresh of the cached role definitions.
Parameters
-ClientId
The application (client) ID of the app registration
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-Endpoint
The BAP endpoint to connect to
Parameter properties
Type:
PPEndpoint
Default value:
Prod
Accepted values:
unknown, tip1, tip2, prod, usgovhigh, dod, china
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-EnvironmentGroupId
The environment group ID for environment group-scoped assignments
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
EnvironmentGroupScope
Position:
Named
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-EnvironmentId
The environment ID for environment-scoped assignments
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
EnvironmentScope
Position:
Named
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-ForceAuth
Force re-authentication instead of reusing existing session
Parameter properties
Type:
SwitchParameter
Default value:
False
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-PrincipalObjectId
The object ID of the principal to assign the role to
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-PrincipalType
The type of principal
Parameter properties
Type:
AuthorizationPrincipalType
Default value:
None
Accepted values:
User, Group, ApplicationUser
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-RefreshRoles
Force re-fetch of role definitions from the API
Parameter properties
Type:
SwitchParameter
Default value:
False
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-Role
The role definition name to assign (e.g., 'Power Platform Reader')
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-TenantId
The Azure AD tenant ID
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable,
-InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable,
-ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see
about_CommonParameters.
Outputs
System.Management.Automation.PSCustomObject
Returns the created role assignment object from the API.