Get-EntraGroup

拿到一組。

語法

GetQuery (預設值)

Get-EntraGroup

    [-Top <Int32>]
    [-All]
    [-Filter <String>]
    [-Property <String[]>]
    [-HasErrorsOnly]
    [-HasLicenseErrorsOnly]
    [<CommonParameters>]

GetVague

Get-EntraGroup

    [-SearchString <String>]
    [-All]
    [-Property <String[]>]
    [-HasErrorsOnly]
    [-HasLicenseErrorsOnly]
    [<CommonParameters>]

GetById

Get-EntraGroup

    -GroupId <String>
    [-All]
    [-Property <String[]>]
    [<CommonParameters>]

Append

Get-EntraGroup

    -Property <String[]>
    -AppendSelected
    [-GroupId <String>]
    [-Top <Int32>]
    [-All]
    [-Filter <String>]
    [-SearchString <String>]
    [-HasErrorsOnly]
    [-HasLicenseErrorsOnly]
    [<CommonParameters>]

Description

指令Get-EntraGroup長在 Microsoft Entra ID 中會有一個群組。 指定 ObjectId 參數以獲得特定群組。

你可以用參數搜尋服務配置錯誤的群組,或HasErrorsOnly使用HasLicenseErrorsOnly參數搜尋授權分配錯誤的群組,篩選結果只顯示有問題群組。 這些篩選選項幫助管理員辨識需要關注的群組。

範例

範例 1:取得所有群組

Connect-Entra -Scopes 'GroupMember.Read.All'
Get-EntraGroup
DisplayName                                       Id                                   MailNickname                                   Description
-----------                                       --                                   ------------                                   -----------
SimpleTestGrp                                     aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb NickName
SimpleGroup                                       bbbbbbbb-1111-2222-3333-cccccccccccc NickName
testGroupInAU10                                   cccccccc-2222-3333-4444-dddddddddddd testGroupInAU10                                testGroupInAU10
My new group                                      dddddddd-3333-4444-5555-eeeeeeeeeeee NotSet                                         New created group
SimpleGroup                                       eeeeeeee-4444-5555-6666-ffffffffffff NickName

此範例示範如何從 Microsoft Entra ID 取得所有群組。

範例 2:透過 GroupID 取得特定群組

Connect-Entra -Scopes 'GroupMember.Read.All'
$group = Get-EntraGroup -Filter "DisplayName eq 'Azure Panda'"
Get-EntraGroup -GroupId $group.Id
DisplayName    Id                                   MailNickname        Description         GroupTypes
-----------    --                                   ------------        -----------         ----------
Crimson Eagle  pppppppp-4444-0000-8888-yyyyyyyyyyyy crimsoneaglegroup   Crimson Eagle Group {Unified}

此範例示範如何透過提供 ID 來取得特定群組。

範例 3:取回 Microsoft 365(統一)群組

Connect-Entra -Scopes 'GroupMember.Read.All'
Get-EntraGroup -Filter "groupTypes/any(g:g eq 'Unified')" -Top 4
DisplayName        Id                                     MailNickname     GroupTypes
-----------        --                                     ------------     ----------
Contoso Group      hhhhhhhh-3333-5555-3333-qqqqqqqqqqqq   contosogroup     {Unified}
Crimson Eagle     pppppppp-4444-0000-8888-yyyyyyyyyyyy   crimsoneagle     {Unified}
Bold Falcon      tttttttt-0000-3333-9999-mmmmmmmmmmmm   boldfalcon       {Unified}
Misty Fox        qqqqqqqq-5555-0000-1111-hhhhhhhhhhhh   mistyfox         {Unified}

此範例可擷取 Microsoft 365(統一)群組。 您可以使用 -Limit 作為 -Top的別名。

範例 4:透過 DisplayName 取得群組

Connect-Entra -Scopes 'GroupMember.Read.All'
Get-EntraGroup -Filter "DisplayName eq 'Azure Panda'"
DisplayName        Id                                   MailNickname     Description        GroupTypes
-----------        --                                   ------------     -----------        ----------
Azure Panda        qqqqqqqq-5555-0000-1111-hhhhhhhhhhhh azurepanda       Azure Panda        {Unified}

在這個例子中,我們使用 Display Name 來取得群組。

範例 5:取得 DisplayName 以搜尋字串開頭的群組

Connect-Entra -Scopes 'GroupMember.Read.All'
Get-EntraGroup -SearchString 'New'
DisplayName             Id                                   MailNickname          Description             GroupTypes
-----------             --                                   ------------          -----------             ----------
New Sparkling Deer      bbbbbbbb-5555-5555-0000-qqqqqqqqqqqq newsparklingdeer New Sparkling Deer Group {Unified}
New Golden Fox          xxxxxxxx-8888-5555-9999-bbbbbbbbbbbb newgoldenfox                  New Golden Fox            {DynamicMembership}

此範例示範如何從 Microsoft Entra ID 檢索包含顯示名稱新文字的群組。

範例 6:列出無所有者團體

Connect-Entra -Scopes 'GroupMember.Read.All'
$allGroups = Get-EntraGroup -All
$groupsWithoutOwners = foreach ($group in $allGroups) {
    $owners = Get-EntraGroupOwner -ObjectId $group.Id
    if ($owners.Count -eq 0) {
        $group
    }
}
$groupsWithoutOwners | Format-Table DisplayName, Id, GroupTypes
DisplayName           Id                                   GroupTypes
-----------           --                                   ----------
My new group          aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb {}
HelpDesk admin group  eeeeeeee-4444-5555-6666-ffffffffffff {}

這個範例展示了如何在沒有擁有者的情況下取得群組。 透過識別無所有者群組,IT 管理員能提升整體治理與營運效率。

範例 7:列出空群組

Connect-Entra -Scopes 'GroupMember.Read.All'
$allGroups = Get-EntraGroup -All
$groupsWithoutMembers = foreach ($group in $allGroups) {
    $members = Get-EntraGroupMember -ObjectId $group.Id
    if ($members.Count -eq 0) {
        $group
    }
}
$groupsWithoutMembers | Format-Table DisplayName, Id, GroupTypes
DisplayName           Id                                   GroupTypes
-----------           --                                   ----------
My new group          aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb {}
HelpDesk admin group  eeeeeeee-4444-5555-6666-ffffffffffff {}

此範例示範如何擷取無成員的群組。 透過識別無成員群組,IT 管理員能識別並清理那些不再使用或過時的群組,這些群組已不再發揮作用。

範例 8:取得具有特定性質的群

Connect-Entra -Scopes 'GroupMember.Read.All'
Get-EntraGroup -Property Id,DisplayName, SecurityEnabled,Visibility,GroupTypes | Select-Object Id,DisplayName, SecurityEnabled,Visibility,GroupTypes | Format-Table -AutoSize
Id                                   DisplayName                SecurityEnabled Visibility GroupTypes
--                                   -----------                --------------- ---------- ----------
aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb SimpleGroup               False           Public     {Unified}
eeeeeeee-4444-5555-6666-ffffffffffff My new group              False           Private    {Unified}
bbbbbbbb-5555-5555-0000-qqqqqqqqqqqq HelpDesk admin group      True            {}

此範例示範如何只回傳群的特定性質。 你可以使用 -Select 別名或 -Property.

範例 9:取得具有特定屬性的群組,並附加所選屬性

Connect-Entra -Scopes 'GroupMember.Read.All'
Get-EntraGroup -GroupId 'aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb' -Property IsSubscribedByMail -AppendSelected | Select-Object Id, DisplayName, MailEnabled, Visibility, IsSubscribedByMail | Format-Table -AutoSize
Id                                   DisplayName                MailEnabled Visibility IsSubscribedByMail
--                                   -----------                --------------- ---------- ----------
aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb SimpleGroup               False           Public     False

此範例示範如何將選取的屬性附加到預設屬性上。

範例 10:取得有錯誤的群組

Connect-Entra -Scopes 'GroupMember.Read.All'
Get-EntraGroup -HasErrorsOnly
DisplayName           Id                                   MailNickname          Description             GroupTypes ServiceProvisioningErrors
-----------           --                                   ------------          -----------             ---------- -------------------------
Problem Group         aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb problemgroup          Group with errors       {Unified}  {@{ErrorDetail=...}}
Error Test Group      bbbbbbbb-1111-2222-3333-cccccccccccc errortestgroup        Another problem group   {}         {@{ErrorDetail=...}}

此範例示範如何只檢索有服務配置錯誤的群組。 該 HasErrorsOnly 參數會篩選結果,只顯示有需要關注問題的群組。

範例 11:取得有授權錯誤的群組

Connect-Entra -Scopes 'GroupMember.Read.All'
Get-EntraGroup -HasLicenseErrorsOnly
DisplayName             Id                                   MailNickname            Description               GroupTypes
-----------             --                                   ------------            -----------               ----------
License Issue Group     cccccccc-2222-3333-4444-dddddddddddd licenseissuegroup       Group with license errors {Unified}
Failed License Group    dddddddd-3333-4444-5555-eeeeeeeeeeee failedlicensegroup      License assignment failed {}

此範例示範如何只取得成員有授權錯誤的群組。 這有助於辨識執照分配失敗且需要行政處理的群組。

範例 12:結合錯誤過濾與搜尋

Connect-Entra -Scopes 'GroupMember.Read.All'
Get-EntraGroup -SearchString 'Test' -HasErrorsOnly
DisplayName           Id                                   MailNickname          Description             GroupTypes ServiceProvisioningErrors
-----------           --                                   ------------          -----------             ---------- -------------------------
Test Error Group      bbbbbbbb-1111-2222-3333-cccccccccccc testerrorgroup        Test group with errors  {}         {@{ErrorDetail=...}}

此範例示範如何結合搜尋功能與錯誤過濾,找出同時具有特定名稱模式與服務配置錯誤的特定群組。

參數

-All

列出所有頁面。

參數屬性

類型:System.Management.Automation.SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-AppendSelected

指定是否要附加所選屬性。

參數屬性

類型:System.Management.Automation.SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False

參數集

Append
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Filter

指定 OData v4.0 濾波語句。 此參數控制回傳哪些物件。

參數屬性

類型:System.String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

GetQuery
Position:Named
必要:False
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False
Append
Position:Named
必要:False
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-GroupId

Microsoft Entra ID (GroupId) 中群組的唯一識別碼

參數屬性

類型:System.String
預設值:None
支援萬用字元:False
不要顯示:False
別名:ObjectId (物件識別碼)

參數集

GetById
Position:Named
必要:True
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False
Append
Position:Named
必要:True
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-HasErrorsOnly

只回傳有服務配置錯誤的群組。

參數屬性

類型:System.Management.Automation.SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False

參數集

GetQuery
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False
GetVague
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False
Append
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-HasLicenseErrorsOnly

只回傳有會員有授權錯誤的群組。

參數屬性

類型:System.Management.Automation.SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False

參數集

GetQuery
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False
GetVague
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False
Append
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Property

指定要回傳的屬性

參數屬性

類型:

System.String[]

預設值:None
支援萬用字元:False
不要顯示:False
別名:選取

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-SearchString

指定搜尋字串。

參數屬性

類型:System.String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

GetValue
Position:Named
必要:False
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False
Append
Position:Named
必要:False
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Top

指定回傳的最大紀錄數量。

參數屬性

類型:System.Int32
預設值:None
支援萬用字元:False
不要顯示:False
別名:極限

參數集

GetQuery
Position:Named
必要:False
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False
Append
Position:Named
必要:False
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

CommonParameters

此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters