From 1ded88318091fc90a499ebc67ef944ffe4d42e55 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 08:48:10 +0000 Subject: [PATCH 1/7] Initial plan From 92d5f85f4673000d67de24fc0f8735a6b3db80e4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 08:57:43 +0000 Subject: [PATCH 2/7] =?UTF-8?q?Fix=20typo:=20Priviledged=20=E2=86=92=20Pri?= =?UTF-8?q?vileged=20in=20all=20PIM-related=20code=20and=20documentation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: KoenZomers <5940670+KoenZomers@users.noreply.github.com> --- CHANGELOG.md | 2 +- ...Enable-PnPPrivilegedIdentityManagement.md} | 24 +++++++++---------- ...edIdentityManagementEligibleAssignment.md} | 16 ++++++------- ...et-PnPPrivilegedIdentityManagementRole.md} | 18 +++++++------- pages/articles/determinepermissions.md | 4 ++-- pages/articles/permissionattributes.md | 2 +- ...agementRoleEligibilitySchedulePipeBind.cs} | 12 +++++----- ...ivilegedIdentityManagementRolePipeBind.cs} | 14 +++++------ .../Expiration.cs | 2 +- .../RoleAssignmentScheduleRequest.cs | 2 +- .../RoleDefinition.cs | 4 ++-- .../RoleEligibilitySchedule.cs | 4 ++-- .../ScheduleInfo.cs | 2 +- .../EnablePrivilegedIdentityManagement.cs} | 16 ++++++------- ...edIdentityManagementEligibleAssignment.cs} | 10 ++++---- .../GetPrivilegedIdentityManagementRole.cs} | 10 ++++---- ...=> PrivilegedIdentityManagementUtility.cs} | 18 +++++++------- 17 files changed, 80 insertions(+), 80 deletions(-) rename documentation/{Enable-PnPPriviledgedIdentityManagement.md => Enable-PnPPrivilegedIdentityManagement.md} (76%) rename documentation/{Get-PnPPriviledgedIdentityManagementEligibleAssignment.md => Get-PnPPrivilegedIdentityManagementEligibleAssignment.md} (69%) rename documentation/{Get-PnPPriviledgedIdentityManagementRole.md => Get-PnPPrivilegedIdentityManagementRole.md} (71%) rename src/Commands/Base/PipeBinds/{PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind.cs => PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind.cs} (60%) rename src/Commands/Base/PipeBinds/{PriviledgedIdentityManagementRolePipeBind.cs => PrivilegedIdentityManagementRolePipeBind.cs} (63%) rename src/Commands/Model/{PriviledgedIdentityManagement => PrivilegedIdentityManagement}/Expiration.cs (87%) rename src/Commands/Model/{PriviledgedIdentityManagement => PrivilegedIdentityManagement}/RoleAssignmentScheduleRequest.cs (93%) rename src/Commands/Model/{PriviledgedIdentityManagement => PrivilegedIdentityManagement}/RoleDefinition.cs (83%) rename src/Commands/Model/{PriviledgedIdentityManagement => PrivilegedIdentityManagement}/RoleEligibilitySchedule.cs (85%) rename src/Commands/Model/{PriviledgedIdentityManagement => PrivilegedIdentityManagement}/ScheduleInfo.cs (88%) rename src/Commands/{PriviledgedIdentityManagement/EnablePriviledgedIdentityManagement.cs => PrivilegedIdentityManagement/EnablePrivilegedIdentityManagement.cs} (83%) rename src/Commands/{PriviledgedIdentityManagement/GetPriviledgedIdentityManagementEligibleAssignment.cs => PrivilegedIdentityManagement/GetPrivilegedIdentityManagementEligibleAssignment.cs} (72%) rename src/Commands/{PriviledgedIdentityManagement/GetPriviledgedIdentityManagementRole.cs => PrivilegedIdentityManagement/GetPrivilegedIdentityManagementRole.cs} (73%) rename src/Commands/Utilities/{PriviledgedIdentityManagamentUtility.cs => PrivilegedIdentityManagementUtility.cs} (86%) diff --git a/CHANGELOG.md b/CHANGELOG.md index 24193bd02..211d0013b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -86,7 +86,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Added tab completers for all cmdlets using a ListPipeBind parameter (e.g. `Get-PnPList -Identity`), all cmdlets using a FieldPipeBind parameter (e.g. `Get-PnPField -Identity`), `Get-PnPPropertyBag`, ContentType related cmdlets (`Get-PnPContentType` etc.) and Page related (`Get-PnPPage` etc.) cmdlets. The argument lookup will timeout after 2 seconds. This value can controlled by setting an environment variables called "PNPPSCOMPLETERTIMEOUT" and set the value to a number specifying milliseconds (e.g. 2000 is 2 seconds). If you want to disable the completer functionality on tabs, set the timeout value to 0 (zero). - Added `Reset-PnPDocumentID` cmdlet to request resetting the document ID for a document [#4238](https://github.com/pnp/powershell/pull/4238) - Added `Reset-PnPDocumentID` cmdlet to request resetting the document IDs for all documents in a library using a specific content type [#4755](https://github.com/pnp/powershell/pull/4755) -- Added `Get-PnPPriviledgedIdentityManagementEligibleAssignment`, `Get-PnPPriviledgedIdentityManagementRole` and `Enable-PnPPriviledgedIdentityManagement` cmdlets to allow scripting of enabling Privileged Identity Management roles for a user [#4039](https://github.com/pnp/powershell/pull/4039) +- Added `Get-PnPPrivilegedIdentityManagementEligibleAssignment`, `Get-PnPPrivilegedIdentityManagementRole` and `Enable-PnPPrivilegedIdentityManagement` cmdlets to allow scripting of enabling Privileged Identity Management roles for a user [#4039](https://github.com/pnp/powershell/pull/4039) - Added `Add-PnPTenantRestrictedSearchAllowedList` which allows setting up a list of allowed URLs for Restricted SharePoint Search [#3993](https://github.com/pnp/powershell/pull/3993) - Added optional `-IsCopilotSearchable` to `Add-PnPOrgAssetsLibrary` which allows for an organizational assets library to be accessible to Microsoft 365 CoPilot for searching corporate images [#4254](https://github.com/pnp/powershell/pull/4254) - Added `Set-PnPOrgAssetsLibrary` cmdlet which allows for updating the settings of an existing organizational assets library [#4254](https://github.com/pnp/powershell/pull/4254) diff --git a/documentation/Enable-PnPPriviledgedIdentityManagement.md b/documentation/Enable-PnPPrivilegedIdentityManagement.md similarity index 76% rename from documentation/Enable-PnPPriviledgedIdentityManagement.md rename to documentation/Enable-PnPPrivilegedIdentityManagement.md index 059ec8631..b134b00bd 100644 --- a/documentation/Enable-PnPPriviledgedIdentityManagement.md +++ b/documentation/Enable-PnPPrivilegedIdentityManagement.md @@ -2,12 +2,12 @@ Module Name: PnP.PowerShell schema: 2.0.0 applicable: SharePoint Online -online version: https://pnp.github.io/powershell/cmdlets/Enable-PnPPriviledgedIdentityManagement.html +online version: https://pnp.github.io/powershell/cmdlets/Enable-PnPPrivilegedIdentityManagement.html external help file: PnP.PowerShell.dll-Help.xml -title: Enable-PnPPriviledgedIdentityManagement +title: Enable-PnPPrivilegedIdentityManagement --- -# Enable-PnPPriviledgedIdentityManagement +# Enable-PnPPrivilegedIdentityManagement ## SYNOPSIS @@ -22,19 +22,19 @@ Temporarily enables a Privileged Identity Management role for a user ### By Role Name And Principal ```powershell -Enable-PnPPriviledgedIdentityManagement -Role [-PrincipalId ] [-Justification ] [-StartAt ] [-ExpireInHours ] [-Connection ] +Enable-PnPPrivilegedIdentityManagement -Role [-PrincipalId ] [-Justification ] [-StartAt ] [-ExpireInHours ] [-Connection ] ``` ### By Role Name And User ```powershell -Enable-PnPPriviledgedIdentityManagement -Role -User [-Justification ] [-StartAt ] [-ExpireInHours ] [-Connection ] +Enable-PnPPrivilegedIdentityManagement -Role -User [-Justification ] [-StartAt ] [-ExpireInHours ] [-Connection ] ``` ### By Eligible Role Assignment ```powershell -Enable-PnPPriviledgedIdentityManagement -EligibleAssignment [-Justification ] [-StartAt ] [-ExpireInHours ] [-Connection ] +Enable-PnPPrivilegedIdentityManagement -EligibleAssignment [-Justification ] [-StartAt ] [-ExpireInHours ] [-Connection ] ``` ## DESCRIPTION @@ -44,28 +44,28 @@ Temporarily enables a Privileged Identity Management role for the provided allow ### Example 1 ```powershell -Enable-PnPPriviledgedIdentityManagement -Role "Global Administrator" +Enable-PnPPrivilegedIdentityManagement -Role "Global Administrator" ``` Enables the global administrator role for the current user through Privileged Identity Management starting immediately and expiring in 1 hour ### Example 2 ```powershell -Enable-PnPPriviledgedIdentityManagement -Role "Global Administrator" -Justification "Just because" +Enable-PnPPrivilegedIdentityManagement -Role "Global Administrator" -Justification "Just because" ``` Enables the global administrator role for the current user through Privileged Identity Management starting immediately and expiring in 1 hour, adding the justification provided to be logged as the reason for the elevation of rights ### Example 3 ```powershell -Enable-PnPPriviledgedIdentityManagement -Role "Global Administrator" -Justification "Just because" -StartAt (Get-Date).AddHours(2) -ExpireInHours 2 +Enable-PnPPrivilegedIdentityManagement -Role "Global Administrator" -Justification "Just because" -StartAt (Get-Date).AddHours(2) -ExpireInHours 2 ``` Enables the global administrator role for the current user through Privileged Identity Management starting in 2 hours from now and expiring 2 hours thereafter, adding the justification provided to be logged as the reason for the elevation of rights ### Example 4 ```powershell -Enable-PnPPriviledgedIdentityManagement -Role "Global Administrator" -User "someone@contoso.onmicrosoft.com" +Enable-PnPPrivilegedIdentityManagement -Role "Global Administrator" -User "someone@contoso.onmicrosoft.com" ``` Enables the global administrator role for the provided user through Privileged Identity Management starting immediately and expiring in 1 hour @@ -134,10 +134,10 @@ Accept wildcard characters: False ``` ### -Role -The Id, name or instance of a role to elevate the current user to. Use `Get-PnPPriviledgedIdentityManagementRole` to retrieve the available roles. +The Id, name or instance of a role to elevate the current user to. Use `Get-PnPPrivilegedIdentityManagementRole` to retrieve the available roles. ```yaml -Type: PriviledgedIdentityManagementRolePipeBind +Type: PrivilegedIdentityManagementRolePipeBind Parameter Sets: By Role Name And Principal, By Role Name And User Aliases: diff --git a/documentation/Get-PnPPriviledgedIdentityManagementEligibleAssignment.md b/documentation/Get-PnPPrivilegedIdentityManagementEligibleAssignment.md similarity index 69% rename from documentation/Get-PnPPriviledgedIdentityManagementEligibleAssignment.md rename to documentation/Get-PnPPrivilegedIdentityManagementEligibleAssignment.md index cea49dd36..5bec72f9c 100644 --- a/documentation/Get-PnPPriviledgedIdentityManagementEligibleAssignment.md +++ b/documentation/Get-PnPPrivilegedIdentityManagementEligibleAssignment.md @@ -2,12 +2,12 @@ Module Name: PnP.PowerShell schema: 2.0.0 applicable: SharePoint Online -online version: https://pnp.github.io/powershell/cmdlets/Get-PnPPriviledgedIdentityManagementEligibleAssignment.html +online version: https://pnp.github.io/powershell/cmdlets/Get-PnPPrivilegedIdentityManagementEligibleAssignment.html external help file: PnP.PowerShell.dll-Help.xml -title: Get-PnPPriviledgedIdentityManagementEligibleAssignment +title: Get-PnPPrivilegedIdentityManagementEligibleAssignment --- -# Get-PnPPriviledgedIdentityManagementEligibleAssignment +# Get-PnPPrivilegedIdentityManagementEligibleAssignment ## SYNOPSIS @@ -20,7 +20,7 @@ Retrieve the available Privileged Identity Management eligibility assignment rol ## SYNTAX ```powershell -Get-PnPPriviledgedIdentityManagementEligibleAssignment [-Identity ] [-Connection ] +Get-PnPPrivilegedIdentityManagementEligibleAssignment [-Identity ] [-Connection ] ``` ## DESCRIPTION @@ -30,14 +30,14 @@ Retrieve the available Privileged Identity Management eligibility assignment rol ### Example 1 ```powershell -Get-PnPPriviledgedIdentityManagementEligibleAssignment +Get-PnPPrivilegedIdentityManagementEligibleAssignment ``` Retrieves the available Privileged Identity Management eligibility assignment roles ### Example 2 ```powershell -Get-PnPPriviledgedIdentityManagementEligibleAssignment -Identity 62e90394-69f5-4237-9190-012177145e10 +Get-PnPPrivilegedIdentityManagementEligibleAssignment -Identity 62e90394-69f5-4237-9190-012177145e10 ``` Retrieves the Privileged Identity Management eligibility assignment role with the provided id @@ -61,10 +61,10 @@ Accept wildcard characters: False ``` ### -Identity -The name, id or instance of a Priviledged Identity Management eligibility assignment role to retrieve the details of +The name, id or instance of a Privileged Identity Management eligibility assignment role to retrieve the details of ```yaml -Type: PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind +Type: PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind Parameter Sets: (All) Aliases: diff --git a/documentation/Get-PnPPriviledgedIdentityManagementRole.md b/documentation/Get-PnPPrivilegedIdentityManagementRole.md similarity index 71% rename from documentation/Get-PnPPriviledgedIdentityManagementRole.md rename to documentation/Get-PnPPrivilegedIdentityManagementRole.md index b9b49ebba..c54900439 100644 --- a/documentation/Get-PnPPriviledgedIdentityManagementRole.md +++ b/documentation/Get-PnPPrivilegedIdentityManagementRole.md @@ -2,12 +2,12 @@ Module Name: PnP.PowerShell schema: 2.0.0 applicable: SharePoint Online -online version: https://pnp.github.io/powershell/cmdlets/Get-PnPPriviledgedIdentityManagementRole.html +online version: https://pnp.github.io/powershell/cmdlets/Get-PnPPrivilegedIdentityManagementRole.html external help file: PnP.PowerShell.dll-Help.xml -title: Get-PnPPriviledgedIdentityManagementRole +title: Get-PnPPrivilegedIdentityManagementRole --- -# Get-PnPPriviledgedIdentityManagementRole +# Get-PnPPrivilegedIdentityManagementRole ## SYNOPSIS @@ -20,7 +20,7 @@ Retrieve the available Privileged Identity Management roles that exist within th ## SYNTAX ```powershell -Get-PnPPriviledgedIdentityManagementRole [-Identity ] [-Connection ] +Get-PnPPrivilegedIdentityManagementRole [-Identity ] [-Connection ] ``` ## DESCRIPTION @@ -30,21 +30,21 @@ Retrieve the available Privileged Identity Management roles that exist within th ### Example 1 ```powershell -Get-PnPPriviledgedIdentityManagementRole +Get-PnPPrivilegedIdentityManagementRole ``` Retrieves the available Privileged Identity Management roles ### Example 2 ```powershell -Get-PnPPriviledgedIdentityManagementRole -Identity "Global Administrator" +Get-PnPPrivilegedIdentityManagementRole -Identity "Global Administrator" ``` Retrieves the Privileged Identity Management with the provided name ### Example 3 ```powershell -Get-PnPPriviledgedIdentityManagementRole -Identity 62e90394-69f5-4237-9190-012177145e10 +Get-PnPPrivilegedIdentityManagementRole -Identity 62e90394-69f5-4237-9190-012177145e10 ``` Retrieves the Privileged Identity Management role with the provided id @@ -68,10 +68,10 @@ Accept wildcard characters: False ``` ### -Identity -The name, id or instance of a Priviledged Identity Management role to retrieve the details of +The name, id or instance of a Privileged Identity Management role to retrieve the details of ```yaml -Type: PriviledgedIdentityManagementRolePipeBind +Type: PrivilegedIdentityManagementRolePipeBind Parameter Sets: (All) Aliases: diff --git a/pages/articles/determinepermissions.md b/pages/articles/determinepermissions.md index 42026c875..56c3bdb12 100644 --- a/pages/articles/determinepermissions.md +++ b/pages/articles/determinepermissions.md @@ -33,7 +33,7 @@ When using the `Sites.Selected` permission, you still must assign permissions to Grant-PnPAzureADAppSitePermission -AppId "" -DisplayName "PnP PowerShell" -Permissions Read -Site ``` -In order to be able to run this cmdlet, you will need to connect to PnP PowerShell using preferably another Entra ID application registration which will have the `AllSites.FullControl` permission on the delegate scope on SharePoint set to it and being logged on with a Global Administrator or SharePoint Administrator priviledged account. +In order to be able to run this cmdlet, you will need to connect to PnP PowerShell using preferably another Entra ID application registration which will have the `AllSites.FullControl` permission on the delegate scope on SharePoint set to it and being logged on with a Global Administrator or SharePoint Administrator privileged account. ## Adding additional permissions as needed @@ -65,7 +65,7 @@ In this scenario, you now know you need to add `Application.Read.All` on the app As mentioned above, unfortunately, not for all cmdlets it will be clear which exact (minimum) permissions will be needed. Not even when using `-Verbose`. To give some guidance which permissions you could try for a minimum permissions approach, follow the table below. -What are you trying to do | Permission type | Permission(s) likely needed from least to most priviledged +What are you trying to do | Permission type | Permission(s) likely needed from least to most privileged | ------------------------| --------------- | -------------------------- | | Interact with SharePoint | Delegate | AllSites.Read / AllSites.Write / AllSites.Manage / AllSites.FullControl | | Interact with SharePoint | App Only | Sites.Selected / Sites.Read.All / Sites.ReadWrite.All / Sites.Manage.All / Sites.FullControl .All | diff --git a/pages/articles/permissionattributes.md b/pages/articles/permissionattributes.md index 876b1d017..050c3ded8 100644 --- a/pages/articles/permissionattributes.md +++ b/pages/articles/permissionattributes.md @@ -42,7 +42,7 @@ If multiple attributes are defined on a cmdlet, the cmdlet will require only one [RequiredApiDelegatedOrApplicationPermissions("graph/Directory.ReadWrite.All")] ``` -These attributes should be added starting with the least priviledged one at the top going down towards the most priviledged permission. +These attributes should be added starting with the least privileged one at the top going down towards the most privileged permission. If you have a scenario that a combination of permissions is required, you can define multiple permissions in the same attribute to have them be handled as an AND. I.e. the following permission attributes would define that all of the permissions are required to run the cmdlet: diff --git a/src/Commands/Base/PipeBinds/PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind.cs b/src/Commands/Base/PipeBinds/PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind.cs similarity index 60% rename from src/Commands/Base/PipeBinds/PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind.cs rename to src/Commands/Base/PipeBinds/PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind.cs index 68d4f4b76..40118353a 100644 --- a/src/Commands/Base/PipeBinds/PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind.cs +++ b/src/Commands/Base/PipeBinds/PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind.cs @@ -1,4 +1,4 @@ -using PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement; +using PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement; using PnP.PowerShell.Commands.Utilities; using PnP.PowerShell.Commands.Utilities.REST; using System; @@ -6,23 +6,23 @@ namespace PnP.PowerShell.Commands.Base.PipeBinds { - public sealed class PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind + public sealed class PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind { public readonly Guid? Id; public RoleEligibilitySchedule Instance { get; private set; } - public PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind(RoleEligibilitySchedule instance) + public PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind(RoleEligibilitySchedule instance) { Instance = instance; } - public PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind(Guid id) + public PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind(Guid id) { Id = id; } - public PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind(string id) + public PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind(string id) { if (!string.IsNullOrEmpty(id) && Guid.TryParse(id, out Guid idGuid)) { @@ -38,7 +38,7 @@ internal RoleEligibilitySchedule GetInstance(ApiRequestHelper requestHelper) } if (Id.HasValue) { - Instance = PriviledgedIdentityManagamentUtility.GetRoleEligibilityScheduleById(requestHelper, Id.Value); + Instance = PrivilegedIdentityManagementUtility.GetRoleEligibilityScheduleById(requestHelper, Id.Value); } return Instance; } diff --git a/src/Commands/Base/PipeBinds/PriviledgedIdentityManagementRolePipeBind.cs b/src/Commands/Base/PipeBinds/PrivilegedIdentityManagementRolePipeBind.cs similarity index 63% rename from src/Commands/Base/PipeBinds/PriviledgedIdentityManagementRolePipeBind.cs rename to src/Commands/Base/PipeBinds/PrivilegedIdentityManagementRolePipeBind.cs index e63aec7c5..d4ad6a1d5 100644 --- a/src/Commands/Base/PipeBinds/PriviledgedIdentityManagementRolePipeBind.cs +++ b/src/Commands/Base/PipeBinds/PrivilegedIdentityManagementRolePipeBind.cs @@ -1,4 +1,4 @@ -using PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement; +using PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement; using PnP.PowerShell.Commands.Utilities; using PnP.PowerShell.Commands.Utilities.REST; using System; @@ -6,7 +6,7 @@ namespace PnP.PowerShell.Commands.Base.PipeBinds { - public sealed class PriviledgedIdentityManagementRolePipeBind + public sealed class PrivilegedIdentityManagementRolePipeBind { public readonly Guid? Id; @@ -14,17 +14,17 @@ public sealed class PriviledgedIdentityManagementRolePipeBind public RoleDefinition Instance { get; private set; } - public PriviledgedIdentityManagementRolePipeBind(RoleDefinition instance) + public PrivilegedIdentityManagementRolePipeBind(RoleDefinition instance) { Instance = instance; } - public PriviledgedIdentityManagementRolePipeBind(Guid id) + public PrivilegedIdentityManagementRolePipeBind(Guid id) { Id = id; } - public PriviledgedIdentityManagementRolePipeBind(string id) + public PrivilegedIdentityManagementRolePipeBind(string id) { if(Guid.TryParse(id, out Guid guidId)) { @@ -44,11 +44,11 @@ internal RoleDefinition GetInstance(ApiRequestHelper requestHelper) } if (Id.HasValue) { - Instance = PriviledgedIdentityManagamentUtility.GetRoleDefinitionById(requestHelper, Id.Value); + Instance = PrivilegedIdentityManagementUtility.GetRoleDefinitionById(requestHelper, Id.Value); } if (!string.IsNullOrEmpty(DisplayName)) { - Instance = PriviledgedIdentityManagamentUtility.GetRoleDefinitionByName(requestHelper, DisplayName); + Instance = PrivilegedIdentityManagementUtility.GetRoleDefinitionByName(requestHelper, DisplayName); } return Instance; } diff --git a/src/Commands/Model/PriviledgedIdentityManagement/Expiration.cs b/src/Commands/Model/PrivilegedIdentityManagement/Expiration.cs similarity index 87% rename from src/Commands/Model/PriviledgedIdentityManagement/Expiration.cs rename to src/Commands/Model/PrivilegedIdentityManagement/Expiration.cs index d066c5bbb..992a49559 100644 --- a/src/Commands/Model/PriviledgedIdentityManagement/Expiration.cs +++ b/src/Commands/Model/PrivilegedIdentityManagement/Expiration.cs @@ -1,4 +1,4 @@ -namespace PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement +namespace PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement { /// /// Defines an expiration of a scheduled role assignment within Privileged Identity Management diff --git a/src/Commands/Model/PriviledgedIdentityManagement/RoleAssignmentScheduleRequest.cs b/src/Commands/Model/PrivilegedIdentityManagement/RoleAssignmentScheduleRequest.cs similarity index 93% rename from src/Commands/Model/PriviledgedIdentityManagement/RoleAssignmentScheduleRequest.cs rename to src/Commands/Model/PrivilegedIdentityManagement/RoleAssignmentScheduleRequest.cs index 7abb710b6..4a9568b0a 100644 --- a/src/Commands/Model/PriviledgedIdentityManagement/RoleAssignmentScheduleRequest.cs +++ b/src/Commands/Model/PrivilegedIdentityManagement/RoleAssignmentScheduleRequest.cs @@ -1,6 +1,6 @@ using System; -namespace PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement +namespace PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement { /// /// Requests enabling a role assignment diff --git a/src/Commands/Model/PriviledgedIdentityManagement/RoleDefinition.cs b/src/Commands/Model/PrivilegedIdentityManagement/RoleDefinition.cs similarity index 83% rename from src/Commands/Model/PriviledgedIdentityManagement/RoleDefinition.cs rename to src/Commands/Model/PrivilegedIdentityManagement/RoleDefinition.cs index 1eb26b98e..2b6d69030 100644 --- a/src/Commands/Model/PriviledgedIdentityManagement/RoleDefinition.cs +++ b/src/Commands/Model/PrivilegedIdentityManagement/RoleDefinition.cs @@ -1,9 +1,9 @@ using System; -namespace PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement +namespace PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement { /// - /// A role definition in Entra ID Priviledged Identity Management + /// A role definition in Entra ID Privileged Identity Management /// public class RoleDefinition { diff --git a/src/Commands/Model/PriviledgedIdentityManagement/RoleEligibilitySchedule.cs b/src/Commands/Model/PrivilegedIdentityManagement/RoleEligibilitySchedule.cs similarity index 85% rename from src/Commands/Model/PriviledgedIdentityManagement/RoleEligibilitySchedule.cs rename to src/Commands/Model/PrivilegedIdentityManagement/RoleEligibilitySchedule.cs index 805bf84dd..4ccf5e7b0 100644 --- a/src/Commands/Model/PriviledgedIdentityManagement/RoleEligibilitySchedule.cs +++ b/src/Commands/Model/PrivilegedIdentityManagement/RoleEligibilitySchedule.cs @@ -1,9 +1,9 @@ using System; -namespace PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement +namespace PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement { /// - /// An elibible role in Entra ID Priviledged Identity Management + /// An elibible role in Entra ID Privileged Identity Management /// public class RoleEligibilitySchedule { diff --git a/src/Commands/Model/PriviledgedIdentityManagement/ScheduleInfo.cs b/src/Commands/Model/PrivilegedIdentityManagement/ScheduleInfo.cs similarity index 88% rename from src/Commands/Model/PriviledgedIdentityManagement/ScheduleInfo.cs rename to src/Commands/Model/PrivilegedIdentityManagement/ScheduleInfo.cs index 9b0d0f082..1324e6aee 100644 --- a/src/Commands/Model/PriviledgedIdentityManagement/ScheduleInfo.cs +++ b/src/Commands/Model/PrivilegedIdentityManagement/ScheduleInfo.cs @@ -1,6 +1,6 @@ using System; -namespace PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement +namespace PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement { /// /// Information about a schedule used within role assignment requests in Privileged Identity Management diff --git a/src/Commands/PriviledgedIdentityManagement/EnablePriviledgedIdentityManagement.cs b/src/Commands/PrivilegedIdentityManagement/EnablePrivilegedIdentityManagement.cs similarity index 83% rename from src/Commands/PriviledgedIdentityManagement/EnablePriviledgedIdentityManagement.cs rename to src/Commands/PrivilegedIdentityManagement/EnablePrivilegedIdentityManagement.cs index 6cea0b67b..a59f999e0 100644 --- a/src/Commands/PriviledgedIdentityManagement/EnablePriviledgedIdentityManagement.cs +++ b/src/Commands/PrivilegedIdentityManagement/EnablePrivilegedIdentityManagement.cs @@ -2,28 +2,28 @@ using PnP.PowerShell.Commands.Base; using PnP.PowerShell.Commands.Base.PipeBinds; using PnP.PowerShell.Commands.Enums; -using PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement; +using PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement; using PnP.PowerShell.Commands.Utilities; using System; using System.Management.Automation; namespace PnP.PowerShell.Commands.Principals { - [Cmdlet(VerbsLifecycle.Enable, "PnPPriviledgedIdentityManagement")] + [Cmdlet(VerbsLifecycle.Enable, "PnPPrivilegedIdentityManagement")] [OutputType(typeof(bool))] [RequiredApiDelegatedOrApplicationPermissions("graph/RoleAssignmentSchedule.ReadWrite.Directory")] - public class EnablePriviledgedIdentityManagement : PnPGraphCmdlet + public class EnablePrivilegedIdentityManagement : PnPGraphCmdlet { private const string ParameterName_BYELIGIBLEROLEASSIGNMENT = "By Eligible Role Assignment"; private const string ParameterName_BYROLENAMEANDPRINCIPAL = "By Role Name And Principal"; private const string ParameterName_BYROLENAMEANDUSER = "By Role Name And User"; [Parameter(Mandatory = true, ValueFromPipeline = true, Position = 0, ParameterSetName = ParameterName_BYELIGIBLEROLEASSIGNMENT)] - public PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind EligibleAssignment; + public PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind EligibleAssignment; [Parameter(Mandatory = true, ValueFromPipeline = true, Position = 0, ParameterSetName = ParameterName_BYROLENAMEANDPRINCIPAL)] [Parameter(Mandatory = true, ValueFromPipeline = true, Position = 0, ParameterSetName = ParameterName_BYROLENAMEANDUSER)] - public PriviledgedIdentityManagementRolePipeBind Role; + public PrivilegedIdentityManagementRolePipeBind Role; [Parameter(Mandatory = true, ParameterSetName = ParameterName_BYROLENAMEANDUSER)] public AzureADUserPipeBind User; @@ -67,7 +67,7 @@ protected override void ExecuteCmdlet() } // Look for an eligible role assignment for the user and role - roleEligibilitySchedule = PriviledgedIdentityManagamentUtility.GetRoleEligibilityScheduleByPrincipalIdAndRoleName(GraphRequestHelper, user.Id.Value, role); + roleEligibilitySchedule = PrivilegedIdentityManagementUtility.GetRoleEligibilityScheduleByPrincipalIdAndRoleName(GraphRequestHelper, user.Id.Value, role); break; case ParameterName_BYROLENAMEANDPRINCIPAL: @@ -97,7 +97,7 @@ protected override void ExecuteCmdlet() } // Look for an eligible role assignment for the principal and role - roleEligibilitySchedule = PriviledgedIdentityManagamentUtility.GetRoleEligibilityScheduleByPrincipalIdAndRoleName(GraphRequestHelper, PrincipalId.Value, role2); + roleEligibilitySchedule = PrivilegedIdentityManagementUtility.GetRoleEligibilityScheduleByPrincipalIdAndRoleName(GraphRequestHelper, PrincipalId.Value, role2); break; } @@ -107,7 +107,7 @@ protected override void ExecuteCmdlet() } LogDebug($"Creating role assignment schedule request"); - var response = PriviledgedIdentityManagamentUtility.CreateRoleAssignmentScheduleRequest(GraphRequestHelper, roleEligibilitySchedule, Justification, StartAt, ExpireInHours); + var response = PrivilegedIdentityManagementUtility.CreateRoleAssignmentScheduleRequest(GraphRequestHelper, roleEligibilitySchedule, Justification, StartAt, ExpireInHours); WriteObject(response.IsSuccessStatusCode); } } diff --git a/src/Commands/PriviledgedIdentityManagement/GetPriviledgedIdentityManagementEligibleAssignment.cs b/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementEligibleAssignment.cs similarity index 72% rename from src/Commands/PriviledgedIdentityManagement/GetPriviledgedIdentityManagementEligibleAssignment.cs rename to src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementEligibleAssignment.cs index ecd1f4a28..eb08830c5 100644 --- a/src/Commands/PriviledgedIdentityManagement/GetPriviledgedIdentityManagementEligibleAssignment.cs +++ b/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementEligibleAssignment.cs @@ -1,24 +1,24 @@ using PnP.PowerShell.Commands.Attributes; using PnP.PowerShell.Commands.Base; using PnP.PowerShell.Commands.Base.PipeBinds; -using PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement; +using PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement; using PnP.PowerShell.Commands.Utilities; using System.Collections.Generic; using System.Management.Automation; namespace PnP.PowerShell.Commands.Principals { - [Cmdlet(VerbsCommon.Get, "PnPPriviledgedIdentityManagementEligibleAssignment")] + [Cmdlet(VerbsCommon.Get, "PnPPrivilegedIdentityManagementEligibleAssignment")] [OutputType(typeof(List))] [OutputType(typeof(RoleEligibilitySchedule))] [RequiredApiDelegatedOrApplicationPermissions("graph/RoleAssignmentSchedule.Read.Directory")] - public class GetPriviledgedIdentityManagementEligibleAssignment : PnPGraphCmdlet + public class GetPrivilegedIdentityManagementEligibleAssignment : PnPGraphCmdlet { /// /// Specific eligible role to retrieve /// [Parameter(Mandatory = false, ValueFromPipeline = true, Position = 0)] - public PriviledgedIdentityManagementRoleEligibilitySchedulePipeBind Identity { get; set; } + public PrivilegedIdentityManagementRoleEligibilitySchedulePipeBind Identity { get; set; } protected override void ExecuteCmdlet() { @@ -31,7 +31,7 @@ protected override void ExecuteCmdlet() else { LogDebug("Retrieving all eligible role assignments"); - var roles = PriviledgedIdentityManagamentUtility.GetRoleEligibilitySchedules(GraphRequestHelper); + var roles = PrivilegedIdentityManagementUtility.GetRoleEligibilitySchedules(GraphRequestHelper); WriteObject(roles, true); } } diff --git a/src/Commands/PriviledgedIdentityManagement/GetPriviledgedIdentityManagementRole.cs b/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementRole.cs similarity index 73% rename from src/Commands/PriviledgedIdentityManagement/GetPriviledgedIdentityManagementRole.cs rename to src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementRole.cs index d75d83a98..5b9eba41e 100644 --- a/src/Commands/PriviledgedIdentityManagement/GetPriviledgedIdentityManagementRole.cs +++ b/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementRole.cs @@ -1,24 +1,24 @@ using PnP.PowerShell.Commands.Attributes; using PnP.PowerShell.Commands.Base; using PnP.PowerShell.Commands.Base.PipeBinds; -using PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement; +using PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement; using PnP.PowerShell.Commands.Utilities; using System.Collections.Generic; using System.Management.Automation; namespace PnP.PowerShell.Commands.Principals { - [Cmdlet(VerbsCommon.Get, "PnPPriviledgedIdentityManagementRole")] + [Cmdlet(VerbsCommon.Get, "PnPPrivilegedIdentityManagementRole")] [OutputType(typeof(List))] [OutputType(typeof(RoleDefinition))] [RequiredApiDelegatedOrApplicationPermissions("graph/RoleManagement.Read.Directory")] - public class GetPriviledgedIdentityManagementRole : PnPGraphCmdlet + public class GetPrivilegedIdentityManagementRole : PnPGraphCmdlet { /// /// Specific role to retrieve /// [Parameter(Mandatory = false, ValueFromPipeline = true, Position = 0)] - public PriviledgedIdentityManagementRolePipeBind Identity { get; set; } + public PrivilegedIdentityManagementRolePipeBind Identity { get; set; } protected override void ExecuteCmdlet() { @@ -31,7 +31,7 @@ protected override void ExecuteCmdlet() else { LogDebug("Retrieving all roles"); - var roles = PriviledgedIdentityManagamentUtility.GetRoleDefinitions(GraphRequestHelper); + var roles = PrivilegedIdentityManagementUtility.GetRoleDefinitions(GraphRequestHelper); WriteObject(roles, true); } } diff --git a/src/Commands/Utilities/PriviledgedIdentityManagamentUtility.cs b/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs similarity index 86% rename from src/Commands/Utilities/PriviledgedIdentityManagamentUtility.cs rename to src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs index 633ec8ada..fd346ba12 100644 --- a/src/Commands/Utilities/PriviledgedIdentityManagamentUtility.cs +++ b/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs @@ -1,4 +1,4 @@ -using PnP.PowerShell.Commands.Model.PriviledgedIdentityManagement; +using PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement; using PnP.PowerShell.Commands.Utilities.REST; using System; using System.Collections.Generic; @@ -9,12 +9,12 @@ namespace PnP.PowerShell.Commands.Utilities { /// - /// Utility class to work with Entra ID Priviledged Identity Management + /// Utility class to work with Entra ID Privileged Identity Management /// - internal static class PriviledgedIdentityManagamentUtility + internal static class PrivilegedIdentityManagementUtility { /// - /// Returns all available priviledged identity management role schedules + /// Returns all available privileged identity management role schedules /// public static List GetRoleEligibilitySchedules(ApiRequestHelper requestHelper) { @@ -24,7 +24,7 @@ public static List GetRoleEligibilitySchedules(ApiReque } /// - /// Returns all available priviledged identity management roles + /// Returns all available privileged identity management roles /// public static List GetRoleDefinitions(ApiRequestHelper requestHelper) { @@ -34,7 +34,7 @@ public static List GetRoleDefinitions(ApiRequestHelper requestHe } /// - /// Returns a priviledged identity management role by its displayname + /// Returns a privileged identity management role by its displayname /// /// Displayname of the role to return. Case sensitive. public static RoleDefinition GetRoleDefinitionByName(ApiRequestHelper requestHelper, string roleName) @@ -45,7 +45,7 @@ public static RoleDefinition GetRoleDefinitionByName(ApiRequestHelper requestHel } /// - /// Returns a priviledged identity management role by its Id + /// Returns a privileged identity management role by its Id /// /// Id of the role to return public static RoleDefinition GetRoleDefinitionById(ApiRequestHelper requestHelper, Guid roleId) @@ -56,7 +56,7 @@ public static RoleDefinition GetRoleDefinitionById(ApiRequestHelper requestHelpe } /// - /// Returns the priviledged identity management role schedule with the provided Id + /// Returns the privileged identity management role schedule with the provided Id /// public static RoleEligibilitySchedule GetRoleEligibilityScheduleById(ApiRequestHelper requestHelper, Guid id) { @@ -66,7 +66,7 @@ public static RoleEligibilitySchedule GetRoleEligibilityScheduleById(ApiRequestH } /// - /// Returns the priviledged identity management role schedule for the provided principal and role + /// Returns the privileged identity management role schedule for the provided principal and role /// public static RoleEligibilitySchedule GetRoleEligibilityScheduleByPrincipalIdAndRoleName(ApiRequestHelper requestHelper, Guid principalId, RoleDefinition role) { From 786640292903fd7058774b322f9aa8e238922ca4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 09:01:36 +0000 Subject: [PATCH 3/7] =?UTF-8?q?Fix=20additional=20typos=20found=20in=20cod?= =?UTF-8?q?e=20review:=20expiraton=E2=86=92expiration,=20elibible=E2=86=92?= =?UTF-8?q?eligible?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: KoenZomers <5940670+KoenZomers@users.noreply.github.com> --- .../PrivilegedIdentityManagement/RoleEligibilitySchedule.cs | 2 +- src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Commands/Model/PrivilegedIdentityManagement/RoleEligibilitySchedule.cs b/src/Commands/Model/PrivilegedIdentityManagement/RoleEligibilitySchedule.cs index 4ccf5e7b0..973cc3b78 100644 --- a/src/Commands/Model/PrivilegedIdentityManagement/RoleEligibilitySchedule.cs +++ b/src/Commands/Model/PrivilegedIdentityManagement/RoleEligibilitySchedule.cs @@ -3,7 +3,7 @@ namespace PnP.PowerShell.Commands.Model.PrivilegedIdentityManagement { /// - /// An elibible role in Entra ID Privileged Identity Management + /// An eligible role in Entra ID Privileged Identity Management /// public class RoleEligibilitySchedule { diff --git a/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs b/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs index fd346ba12..83f2533a1 100644 --- a/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs +++ b/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs @@ -78,7 +78,7 @@ public static RoleEligibilitySchedule GetRoleEligibilityScheduleByPrincipalIdAnd /// /// Creates a scheduled assignment for a role to be activated at a certain time /// - public static HttpResponseMessage CreateRoleAssignmentScheduleRequest(ApiRequestHelper requestHelper, RoleEligibilitySchedule roleEligibilitySchedule,string justification = null, DateTime? startDateTime = null, short? expiratonHours = null) + public static HttpResponseMessage CreateRoleAssignmentScheduleRequest(ApiRequestHelper requestHelper, RoleEligibilitySchedule roleEligibilitySchedule,string justification = null, DateTime? startDateTime = null, short? expirationHours = null) { string requestUrl = $"v1.0/roleManagement/directory/roleAssignmentScheduleRequests"; var postData = new RoleAssignmentScheduleRequest @@ -92,7 +92,7 @@ public static HttpResponseMessage CreateRoleAssignmentScheduleRequest(ApiRequest StartDateTime = startDateTime ?? DateTime.UtcNow, Expiration = new Expiration { - Duration = $"PT{expiratonHours.GetValueOrDefault(1)}H" + Duration = $"PT{expirationHours.GetValueOrDefault(1)}H" } } }; From cc18516472b7c5727847533318e556e96c9888de Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 09:03:25 +0000 Subject: [PATCH 4/7] Fix formatting: add missing space after comma in method signature Co-authored-by: KoenZomers <5940670+KoenZomers@users.noreply.github.com> --- src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs b/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs index 83f2533a1..78172c543 100644 --- a/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs +++ b/src/Commands/Utilities/PrivilegedIdentityManagementUtility.cs @@ -78,7 +78,7 @@ public static RoleEligibilitySchedule GetRoleEligibilityScheduleByPrincipalIdAnd /// /// Creates a scheduled assignment for a role to be activated at a certain time /// - public static HttpResponseMessage CreateRoleAssignmentScheduleRequest(ApiRequestHelper requestHelper, RoleEligibilitySchedule roleEligibilitySchedule,string justification = null, DateTime? startDateTime = null, short? expirationHours = null) + public static HttpResponseMessage CreateRoleAssignmentScheduleRequest(ApiRequestHelper requestHelper, RoleEligibilitySchedule roleEligibilitySchedule, string justification = null, DateTime? startDateTime = null, short? expirationHours = null) { string requestUrl = $"v1.0/roleManagement/directory/roleAssignmentScheduleRequests"; var postData = new RoleAssignmentScheduleRequest From a197fdaa5556e47101f569660ba91e7457fcb46a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 09:30:17 +0000 Subject: [PATCH 5/7] Add Alias attributes for backward compatibility with old misspelled cmdlet names Co-authored-by: KoenZomers <5940670+KoenZomers@users.noreply.github.com> --- .../EnablePrivilegedIdentityManagement.cs | 1 + .../GetPrivilegedIdentityManagementEligibleAssignment.cs | 1 + .../GetPrivilegedIdentityManagementRole.cs | 1 + 3 files changed, 3 insertions(+) diff --git a/src/Commands/PrivilegedIdentityManagement/EnablePrivilegedIdentityManagement.cs b/src/Commands/PrivilegedIdentityManagement/EnablePrivilegedIdentityManagement.cs index a59f999e0..ff6c81e3b 100644 --- a/src/Commands/PrivilegedIdentityManagement/EnablePrivilegedIdentityManagement.cs +++ b/src/Commands/PrivilegedIdentityManagement/EnablePrivilegedIdentityManagement.cs @@ -10,6 +10,7 @@ namespace PnP.PowerShell.Commands.Principals { [Cmdlet(VerbsLifecycle.Enable, "PnPPrivilegedIdentityManagement")] + [Alias("Enable-PnPPriviledgedIdentityManagement")] [OutputType(typeof(bool))] [RequiredApiDelegatedOrApplicationPermissions("graph/RoleAssignmentSchedule.ReadWrite.Directory")] public class EnablePrivilegedIdentityManagement : PnPGraphCmdlet diff --git a/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementEligibleAssignment.cs b/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementEligibleAssignment.cs index eb08830c5..1f2ef35b1 100644 --- a/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementEligibleAssignment.cs +++ b/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementEligibleAssignment.cs @@ -9,6 +9,7 @@ namespace PnP.PowerShell.Commands.Principals { [Cmdlet(VerbsCommon.Get, "PnPPrivilegedIdentityManagementEligibleAssignment")] + [Alias("Get-PnPPriviledgedIdentityManagementEligibleAssignment")] [OutputType(typeof(List))] [OutputType(typeof(RoleEligibilitySchedule))] [RequiredApiDelegatedOrApplicationPermissions("graph/RoleAssignmentSchedule.Read.Directory")] diff --git a/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementRole.cs b/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementRole.cs index 5b9eba41e..36660072f 100644 --- a/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementRole.cs +++ b/src/Commands/PrivilegedIdentityManagement/GetPrivilegedIdentityManagementRole.cs @@ -9,6 +9,7 @@ namespace PnP.PowerShell.Commands.Principals { [Cmdlet(VerbsCommon.Get, "PnPPrivilegedIdentityManagementRole")] + [Alias("Get-PnPPriviledgedIdentityManagementRole")] [OutputType(typeof(List))] [OutputType(typeof(RoleDefinition))] [RequiredApiDelegatedOrApplicationPermissions("graph/RoleManagement.Read.Directory")] From 53e62122407021b8bbfbbbc05d47fc7e034a9329 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 10:16:38 +0000 Subject: [PATCH 6/7] Add entry to CHANGELOG.md for spelling error fixes in PIM cmdlets Co-authored-by: KoenZomers <5940670+KoenZomers@users.noreply.github.com> --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 211d0013b..70322b7e5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -46,6 +46,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Fix `Get-PnPTenantRestrictedSearchMode` throwing an error in some cases [#5042](https://github.com/pnp/powershell/pull/5042) - Fixed issues with `Get-PnPTenantInfo`, `Set-PnPList`, `Remove-PnPSiteSensitivityLabel`, `Set-PnPSiteSensitivityLabel`, `Send-PnPMail` and `Set-PnPWebHeader` cmdlets returning an error [#5059](https://github.com/pnp/powershell/pull/5059) - Fixed issue with `Get-PnPChangelog -Nightly` throwing an error [#5070](https://github.com/pnp/powershell/pull/5070) +- Fixed spelling errors in Privileged Identity Management cmdlets: renamed `Get-PnPPriviledgedIdentityManagementRole`, `Get-PnPPriviledgedIdentityManagementEligibleAssignment`, and `Enable-PnPPriviledgedIdentityManagement` to use correct spelling "Privileged". Old cmdlet names remain functional as aliases for backward compatibility. ### Removed From aa60f1a9196791d09ce8f8d9912699862d373783 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 10:26:39 +0000 Subject: [PATCH 7/7] Add PR link #5119 to CHANGELOG.md entry Co-authored-by: KoenZomers <5940670+KoenZomers@users.noreply.github.com> --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 70322b7e5..5b20d9c10 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -46,7 +46,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). - Fix `Get-PnPTenantRestrictedSearchMode` throwing an error in some cases [#5042](https://github.com/pnp/powershell/pull/5042) - Fixed issues with `Get-PnPTenantInfo`, `Set-PnPList`, `Remove-PnPSiteSensitivityLabel`, `Set-PnPSiteSensitivityLabel`, `Send-PnPMail` and `Set-PnPWebHeader` cmdlets returning an error [#5059](https://github.com/pnp/powershell/pull/5059) - Fixed issue with `Get-PnPChangelog -Nightly` throwing an error [#5070](https://github.com/pnp/powershell/pull/5070) -- Fixed spelling errors in Privileged Identity Management cmdlets: renamed `Get-PnPPriviledgedIdentityManagementRole`, `Get-PnPPriviledgedIdentityManagementEligibleAssignment`, and `Enable-PnPPriviledgedIdentityManagement` to use correct spelling "Privileged". Old cmdlet names remain functional as aliases for backward compatibility. +- Fixed spelling errors in Privileged Identity Management cmdlets: renamed `Get-PnPPriviledgedIdentityManagementRole`, `Get-PnPPriviledgedIdentityManagementEligibleAssignment`, and `Enable-PnPPriviledgedIdentityManagement` to use correct spelling "Privileged". Old cmdlet names remain functional as aliases for backward compatibility. [#5119](https://github.com/pnp/powershell/pull/5119) ### Removed