إدارة مجموعات الأمان باستخدام PowerShell

تنطبق هذه المقالة على كل من Microsoft 365 Enterprise Office 365 Enterprise.

يمكنك استخدام PowerShell ل Microsoft 365 كبديل مركز مسؤولي Microsoft 365 لإدارة مجموعات الأمان.

توضح هذه المقالة سرد مجموعات الأمان وإنشاءها وتغييرها وإزالة مجموعات الأمان.

عندما تتطلب كتلة أوامر في هذه المقالة تحديد قيم متغيرة، استخدم هذه الخطوات.

  1. انسخ كتلة الأوامر إلى الحافظة والصقها في المفكرة أو بيئة البرنامج النصي المتكامل ل PowerShell (ISE).
  2. املأ قيم المتغير وأزل الأحرف "<" و">".
  3. قم بتشغيل الأوامر في نافذة PowerShell أو PowerShell ISE.

راجع الحفاظ على عضوية مجموعة الأمان لإدارة عضوية المجموعة باستخدام PowerShell.

إدارة مجموعات الأمان باستخدام Microsoft Graph PowerShell

ملاحظة

يتم استبدال وحدة Azure Active Directory ب Microsoft Graph PowerShell SDK. يمكنك استخدام Microsoft Graph PowerShell SDK للوصول إلى جميع واجهات برمجة تطبيقات Microsoft Graph. لمزيد من المعلومات، راجع بدء استخدام Microsoft Graph PowerShell SDK.

أولا، اتصل بمستأجر Microsoft 365.

تتطلب إدارة مجموعات الأمان نطاق أذونات Group.ReadWrite.All أو أحد الأذونات الأخرى المدرجة في الصفحة المرجعية لواجهة برمجة تطبيقات Graph "List subscribedSkus". قد تتطلب بعض الأوامر في هذه المقالة نطاقات أذونات مختلفة، وفي هذه الحالة سيتم ملاحظة ذلك في القسم ذي الصلة.

Connect-Graph -Scopes Group.ReadWrite.All

سرد مجموعاتك

استخدم هذا الأمر لسرد جميع مجموعاتك.

Get-MgGroup -All

استخدم هذه الأوامر لعرض إعدادات مجموعة معينة حسب اسم العرض الخاص بها.

$groupName="<display name of the group>"
Get-MgGroup -All | Where-Object { $_.DisplayName -eq $groupName }

إنشاء مجموعة جديدة

استخدم هذا الأمر لإنشاء مجموعة أمان جديدة.

Connect-MgGraph -Scopes "Group.Create"
New-MgGroup -Description "<group purpose>" -DisplayName "<name>" -MailEnabled:$false -SecurityEnabled -MailNickname "<email name>"

عرض إعدادات مجموعة

عرض إعدادات المجموعة باستخدام هذه الأوامر.

$groupName="<display name of the group>"
Get-MgGroup -All | Where-Object { $_.DisplayName -eq $groupName } | Select-Object *

إزالة مجموعة أمان

استخدم هذه الأوامر لإزالة مجموعة أمان.

$groupName="<display name of the group>"
$group = Get-MgGroup -Filter "displayName eq '$groupName'"
Remove-MgGroup -GroupId $group.Id

إدارة مالكي مجموعة أمان

استخدم هذه الأوامر لعرض المالكين الحاليين لمجموعة أمان.

$groupName="<display name of the group>"

# Connect to Microsoft Graph
Connect-MgGraph -Scopes "GroupMember.Read.All"

# Display group owners
Get-MgGroupOwner -GroupId (Get-MgGroup | Where-Object { $_.DisplayName -eq $groupName }).Id

استخدم هذه الأوامر لإضافة حساب مستخدم بالاسم الأساسي للمستخدم (UPN) إلى المالكين الحاليين لمجموعة أمان.

$userUPN="<UPN of the user account to add>"
$groupName="<display name of the group>"

# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Group.ReadWrite.All", "User.ReadBasic.All"

# Get the group and user
$group = Get-MgGroup -Filter "displayName eq '$groupName'"
$userId = (Get-MgUser -Filter "userPrincipalName eq '$userUPN'").Id

# Add the user as an owner to the group
$newGroupOwner =@{
  "@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
  }

New-MgGroupOwnerByRef -GroupId $group.Id -BodyParameter $newGroupOwner

استخدم هذه الأوامر لإضافة حساب مستخدم باسم العرض الخاص به إلى المالكين الحاليين لمجموعة أمان.

$userName="<Display name of the user account to add>"
$groupName="<display name of the group>"

# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Group.ReadWrite.All", "Directory.Read.All", "User.ReadBasic.All"

# Get the group and user
$group = Get-MgGroup -All | Where-Object { $_.DisplayName -eq $groupName }
$userId = (Get-MgUser -All | Where-Object { $_.DisplayName -eq $userName }).Id

# Add the user as an owner to the group
$newGroupOwner =@{
  "@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
  }

New-MgGroupOwnerByRef -GroupId $group.Id -BodyParameter $newGroupOwner

استخدم هذه الأوامر لإزالة حساب مستخدم بواسطة UPN الخاص به من المالكين الحاليين لمجموعة أمان.

$userUPN="<UPN of the user account to remove>"
$groupName="<display name of the group>"

# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Group.ReadWrite.All", "Directory.ReadWrite.All"

# Get the group and user
$group = Get-MgGroup -Filter "displayName eq '$groupName'" | Select-Object -First 1
$user = Get-MgUser -Filter "userPrincipalName eq '$userUPN'" | Select-Object -First 1

# Remove the user from the group
Remove-MgGroupOwnerByRef -GroupId $group.Id -DirectoryObjectId $user.Id

استخدم هذه الأوامر لإزالة حساب مستخدم باسم العرض الخاص به من المالكين الحاليين لمجموعة أمان.

$userName="<Display name of the user account to remove>"
$groupName="<display name of the group>"
$group = Get-MgGroup | Where-Object { $_.DisplayName -eq $groupName }
$user = Get-MgUser | Where-Object { $_.DisplayName -eq $userName }

Remove-MgGroupOwnerByRef -GroupId $group.Id -DirectoryObjectId $user.Id

راجع أيضًا

إدارة حسابات مستخدمي Microsoft 365 والتراخيص والمجموعات باستخدام PowerShell

إدارة Microsoft 365 باستخدام PowerShell

بدء استخدام PowerShell ل Microsoft 365