Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,13 @@ function Reset-EntraStrongAuthenticationMethodByUpn {
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = 'The unique identifier for the user (User Principal Name or UserId) whose strong authentication method you want to reset.')]
[Alias('ObjectId', 'UPN', 'Identity', 'UserId')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserPrincipalName must be a valid email address or GUID."
})]
[System.String] $UserPrincipalName,

[Parameter(ParameterSetName = "ResetAuthenticationMethod", ValueFromPipelineByPropertyName = $true, HelpMessage = 'The tenant ID.')]
Expand Down
10 changes: 9 additions & 1 deletion module/Entra/Microsoft.Entra/Users/Get-EntraDeletedUser.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,16 @@ function Get-EntraDeletedUser {
[Parameter(ParameterSetName = "GetVague", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Search string to use for vague queries.")]
[System.String] $SearchString,

[Alias('Id')]
[Parameter(ParameterSetName = "GetById", Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "ID of the user to retrieve.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName', 'Id')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Alias('Limit')]
Expand Down
14 changes: 7 additions & 7 deletions module/Entra/Microsoft.Entra/Users/Get-EntraUser.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -6,24 +6,24 @@ function Get-EntraUser {
[CmdletBinding(DefaultParameterSetName = 'GetQuery')]
[Alias("Get-AzureADUser")]
param (
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Maximum number of results to return.")]
[Alias("Limit")]
[System.Nullable`1[System.Int32]] $Top,

[Alias("ObjectId")]
[Parameter(ParameterSetName = "GetById", Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[Parameter(ParameterSetName = "GetById", Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Specifies the ID of a user (as a UserPrincipalName or ObjectId) in Microsoft Entra ID.")]
[System.String] $UserId,

[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Return all users.")]
[switch] $All,

[Parameter(ParameterSetName = "GetVague", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ParameterSetName = "GetVague", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Search for users using a search string from different properties e.g. DisplayName, Job Title, UPN etc.")]
[System.String] $SearchString,

[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Filter to apply to the query.")]
[System.String] $Filter,

[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true, HelpMessage = "Properties to include in the results.")]
[Alias("Select")]
[System.String[]] $Property
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,16 @@ function Get-EntraUserAdministrativeUnit {
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Retrieve all user's administrative units.")]
[switch] $All,

[Alias('ObjectId')]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "User object ID or UPN to retrieve.")]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Specifies the ID of a user (as a UserPrincipalName or ObjectId) in Microsoft Entra ID.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Alias('DirectoryObjectId')]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,26 @@
function Get-EntraUserAppRoleAssignment {
[CmdletBinding(DefaultParameterSetName = 'GetQuery')]
param (
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Maximum number of results to return.")]
[Alias("Limit")]
[System.Nullable`1[System.Int32]] $Top,

[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Return all items.")]
[switch] $All,

[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Alias("ObjectId")]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Specifies the ID of a user (as a UserPrincipalName or ObjectId) in Microsoft Entra ID.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true, HelpMessage = "Properties to include in the results.")]
[Alias("Select")]
[System.String[]] $Property
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,16 @@ function Get-EntraUserCreatedObject {
[Alias("Limit")]
[System.Nullable`1[System.Int32]] $Top,

[Alias('ObjectId')]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "The unique identifier for the user (User Principal Name or UserId).")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Return all items.")]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,26 @@
function Get-EntraUserDirectReport {
[CmdletBinding(DefaultParameterSetName = 'GetQuery')]
param (
[Alias('ObjectId')]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Specifies the ID of a user (as a UserPrincipalName or ObjectId) in Microsoft Entra ID.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Return all items.")]
[switch] $All,

[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Maximum number of results to return.")]
[Alias("Limit")]
[System.Nullable`1[System.Int32]] $Top,

[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true, HelpMessage = "Properties to include in the results.")]
[Alias("Select")]
[System.String[]] $Property
)
Expand Down
14 changes: 11 additions & 3 deletions module/Entra/Microsoft.Entra/Users/Get-EntraUserExtension.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,19 @@
function Get-EntraUserExtension {
[CmdletBinding(DefaultParameterSetName = 'Default')]
param (
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Alias("ObjectId")]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Specifies the ID of a user (as a UserPrincipalName or ObjectId) in Microsoft Entra ID.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true, HelpMessage = "Properties to include in the results.")]
[Alias("Select")]
[System.String[]] $Property
)
Expand Down
10 changes: 9 additions & 1 deletion module/Entra/Microsoft.Entra/Users/Get-EntraUserGroup.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,16 @@ function Get-EntraUserGroup {
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Retrieve all user's group memberships.")]
[switch] $All,

[Alias('ObjectId')]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "User object ID or UPN to retrieve.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Alias('DirectoryObjectId')]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,20 @@

function Get-EntraUserLicenseDetail {
[CmdletBinding(DefaultParameterSetName = 'Default')]
param (
[Alias('ObjectId')]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
param (
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Specifies the ID of a user (as a UserPrincipalName or ObjectId) in Microsoft Entra ID.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true, HelpMessage = "Properties to include in the results.")]
[Alias("Select")]
[System.String[]] $Property
)
Expand Down
14 changes: 11 additions & 3 deletions module/Entra/Microsoft.Entra/Users/Get-EntraUserManager.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,19 @@
function Get-EntraUserManager {
[CmdletBinding(DefaultParameterSetName = 'Default')]
param (
[Alias('ObjectId')]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Specifies the ID of a user (as a UserPrincipalName or ObjectId) in Microsoft Entra ID.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true, HelpMessage = "Properties to include in the results.")]
[Alias("Select")]
[System.String[]] $Property
)
Expand Down
20 changes: 14 additions & 6 deletions module/Entra/Microsoft.Entra/Users/Get-EntraUserMembership.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,26 @@
function Get-EntraUserMembership {
[CmdletBinding(DefaultParameterSetName = 'GetQuery')]
param (
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Maximum number of results to return.")]
[Alias("Limit")]
[System.Nullable`1[System.Int32]] $Top,

[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Return all items.")]
[switch] $All,

[Alias('ObjectId')]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]

[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Specifies the ID of a user (as a UserPrincipalName or ObjectId) in Microsoft Entra ID.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true, HelpMessage = "Properties to include in the results.")]
[Alias("Select")]
[System.String[]] $Property
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,26 @@
function Get-EntraUserOAuth2PermissionGrant {
[CmdletBinding(DefaultParameterSetName = 'GetQuery')]
param (
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ParameterSetName = "GetQuery", ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Maximum number of results to return.")]
[Alias("Limit")]
[System.Nullable`1[System.Int32]] $Top,

[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Return all items.")]
[switch] $All,

[Alias('ObjectId')]
[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]

[Parameter(Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, HelpMessage = "Specifies the ID of a user (as a UserPrincipalName or ObjectId) in Microsoft Entra ID.")]
[Alias('ObjectId', 'UPN', 'Identity', 'UserPrincipalName')]
[ValidateNotNullOrEmpty()]
[ValidateScript({
if ($_ -match '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' -or
$_ -match '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$') {
return $true
}
throw "UserId must be a valid email address or GUID."
})]
[System.String] $UserId,

[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true)]
[Parameter(Mandatory = $false, ValueFromPipeline = $false, ValueFromPipelineByPropertyName = $true, HelpMessage = "Properties to include in the results.")]
[Alias("Select")]
[System.String[]] $Property
)
Expand Down
Loading