グループ管理用の Azure Active Directory バージョン 2 のコマンドレットAzure Active Directory version 2 cmdlets for group management

この記事では、PowerShell を使用して、Azure Active Directory (Azure AD) でグループを管理する方法の例を掲載しています。This article contains examples of how to use PowerShell to manage your groups in Azure Active Directory (Azure AD). また、Azure AD PowerShell のモジュールを使用して設定する方法についても説明します。It also tells you how to get set up with the Azure AD PowerShell module. 最初に、 Azure AD PowerShell モジュールをダウンロードする必要があります。First, you must download the Azure AD PowerShell module.

Azure AD PowerShell モジュールをインストールするInstall the Azure AD PowerShell module

Azure AD PowerShell モジュールをインストールするには、次のコマンドを使用します。To install the Azure AD PowerShell module, use the following commands:

PS C:\Windows\system32> install-module azuread
PS C:\Windows\system32> import-module azuread

モジュールを使用する準備ができているかどうかを確認するには、次のコマンドを使用します。To verify that the module is ready to use, use the following command:

PS C:\Windows\system32> get-module azuread

ModuleType Version      Name                                ExportedCommands
---------- ---------    ----                                ----------------
Binary     2.0.0.115    azuread                      {Add-AzureADAdministrati...}

これで、モジュールのコマンドレットの使用を開始できます。Now you can start using the cmdlets in the module. Azure AD モジュールのコマンドレットについて詳しくは、Azure Active Directory PowerShell バージョン 2 に関するオンライン リファレンス ドキュメントをご覧ください。For a full description of the cmdlets in the Azure AD module, please refer to the online reference documentation for Azure Active Directory PowerShell Version 2.

ディレクトリに接続するConnect to the directory

Azure AD PowerShell コマンドレットを使用してグループの管理を開始するには、管理するディレクトリに PowerShell セッションを接続する必要があります。Before you can start managing groups using Azure AD PowerShell cmdlets, you must connect your PowerShell session to the directory you want to manage. 次のコマンドを使用します。Use the following command:

PS C:\Windows\system32> Connect-AzureAD

このコマンドレットでは、ディレクトリへのアクセスに使用する資格情報の入力を求められます。The cmdlet prompts you for the credentials you want to use to access your directory. この例では、 karen@drumkit.onmicrosoft.com を使用してデモンストレーション ディレクトリにアクセスします。In this example, we are using karen@drumkit.onmicrosoft.com to access the demonstration directory. コマンドレットは、セッションがディレクトリに正常に接続されたことを表示する確認メッセージを返します。The cmdlet returns a confirmation to show the session was connected successfully to your directory:

Account                       Environment Tenant
-------                       ----------- ------
Karen@drumkit.onmicrosoft.com AzureCloud  85b5ff1e-0402-400c-9e3c-0f…

これで、Azure AD コマンドレットの使用を開始して、ディレクトリ内のグループを管理できます。Now you can start using the AzureAD cmdlets to manage groups in your directory.

グループを取得するRetrieve groups

既存のグループをディレクトリから取得するには、Get-AzureADGroups コマンドレットを使用します。To retrieve existing groups from your directory, use the Get-AzureADGroups cmdlet.

ディレクトリ内のすべてのグループを取得するには、パラメーターなしでコマンドレットを使用します。To retrieve all groups in the directory, use the cmdlet without parameters:

PS C:\Windows\system32> get-azureadgroup

このコマンドレットは、接続されたディレクトリ内のすべてのグループを返します。The cmdlet returns all groups in the connected directory.

-objectID パラメーターを使用すると、グループの objectID を指定する特定のグループを取得できます。You can use the -objectID parameter to retrieve a specific group for which you specify the group’s objectID:

PS C:\Windows\system32> get-azureadgroup -ObjectId e29bae11-4ac0-450c-bc37-6dae8f3da61b

コマンドレットは次のように、入力したパラメーターの値に一致する objectID のグループを返します。The cmdlet now returns the group whose objectID matches the value of the parameter you entered:

DeletionTimeStamp            :
ObjectId                     : e29bae11-4ac0-450c-bc37-6dae8f3da61b
ObjectType                   : Group
Description                  :
DirSyncEnabled               :
DisplayName                  : Pacific NW Support
LastDirSyncTime              :
Mail                         :
MailEnabled                  : False
MailNickName                 : 9bb4139b-60a1-434a-8c0d-7c1f8eee2df9
OnPremisesSecurityIdentifier :
ProvisioningErrors           : {}
ProxyAddresses               : {}
SecurityEnabled              : True

-filter パラメーターを使用して、特定のグループを検索できます。You can search for a specific group using the -filter parameter. 次の例に示すように、このパラメーターは ODATA フィルター句を使用し、フィルターに一致するすべてのグループを返します。This parameter takes an ODATA filter clause and returns all groups that match the filter, as in the following example:

PS C:\Windows\system32> Get-AzureADGroup -Filter "DisplayName eq 'Intune Administrators'"


DeletionTimeStamp            :
ObjectId                     : 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df
ObjectType                   : Group
Description                  : Intune Administrators
DirSyncEnabled               :
DisplayName                  : Intune Administrators
LastDirSyncTime              :
Mail                         :
MailEnabled                  : False
MailNickName                 : 4dd067a0-6515-4f23-968a-cc2ffc2eff5c
OnPremisesSecurityIdentifier :
ProvisioningErrors           : {}
ProxyAddresses               : {}
SecurityEnabled              : True

注意

Azure AD PowerShell コマンドレットは標準の OData クエリを実装しています。The Azure AD PowerShell cmdlets implement the OData query standard. 詳しくは、「OData エンドポイントを使用する OData システム クエリ オプション」の「 $filter」を参照してください。For more information, see $filter in OData system query options using the OData endpoint.

グループを作成するCreate groups

新しいグループをディレクトリに作成するには、New-AzureADGroup コマンドレットを使用します。To create a new group in your directory, use the New-AzureADGroup cmdlet. このコマンドレットでは、"Marketing" という新しいセキュリティ グループを作成します。This cmdlet creates a new security group called “Marketing":

PS C:\Windows\system32> New-AzureADGroup -Description "Marketing" -DisplayName "Marketing" -MailEnabled $false -SecurityEnabled $true -MailNickName "Marketing"

グループを更新するUpdate groups

既存のグループを更新するには、Set-AzureADGroup コマンドレットを使用します。To update an existing group, use the Set-AzureADGroup cmdlet. この例では、"Intune Administrators" グループの DisplayName プロパティを変更します。In this example, we’re changing the DisplayName property of the group “Intune Administrators.” 最初に、Get-AzureADGroup コマンドレットを使用してグループを検索し、DisplayName 属性を使用してフィルターを検索します。First, we’re finding the group using the Get-AzureADGroup cmdlet and filter using the DisplayName attribute:

PS C:\Windows\system32> Get-AzureADGroup -Filter "DisplayName eq 'Intune Administrators'"


DeletionTimeStamp            :
ObjectId                     : 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df
ObjectType                   : Group
Description                  : Intune Administrators
DirSyncEnabled               :
DisplayName                  : Intune Administrators
LastDirSyncTime              :
Mail                         :
MailEnabled                  : False
MailNickName                 : 4dd067a0-6515-4f23-968a-cc2ffc2eff5c
OnPremisesSecurityIdentifier :
ProvisioningErrors           : {}
ProxyAddresses               : {}
SecurityEnabled              : True

次に、Description プロパティを新しい値 "Intune Device Administrators" に変更します。Next, we’re changing the Description property to the new value “Intune Device Administrators”:

PS C:\Windows\system32> Set-AzureADGroup -ObjectId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df -Description "Intune Device Administrators"

ここで、もう一度グループを検索する場合は、Description プロパティが更新され、新しい値が反映されていることを確認します。Now if we find the group again, we see the Description property is updated to reflect the new value:

PS C:\Windows\system32> Get-AzureADGroup -Filter "DisplayName eq 'Intune Administrators'"


DeletionTimeStamp            :
ObjectId                     : 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df
ObjectType                   : Group
Description                  : Intune Device Administrators
DirSyncEnabled               :
DisplayName                  : Intune Administrators
LastDirSyncTime              :
Mail                         :
MailEnabled                  : False
MailNickName                 : 4dd067a0-6515-4f23-968a-cc2ffc2eff5c
OnPremisesSecurityIdentifier :
ProvisioningErrors           : {}
ProxyAddresses               : {}
SecurityEnabled              : True

グループを削除するDelete groups

ディレクトリからグループを削除するには、次のように、Remove-AzureADGroup コマンドレットを使用します。To delete groups from your directory, use the Remove-AzureADGroup cmdlet as follows:

PS C:\Windows\system32> Remove-AzureADGroup -ObjectId b11ca53e-07cc-455d-9a89-1fe3ab24566b

グループ メンバーシップを管理するManage group membership

メンバーを追加するAdd members

新しいメンバーをグループに追加するには、Add-AzureADGroupMember コマンドレットを使用します。To add new members to a group, use the Add-AzureADGroupMember cmdlet. このコマンドは、前の例で使用した Intune Administrators グループにメンバーを追加します。This command adds a member to the Intune Administrators group we used in the previous example:

PS C:\Windows\system32> Add-AzureADGroupMember -ObjectId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df -RefObjectId 72cd4bbd-2594-40a2-935c-016f3cfeeeea

-ObjectId パラメーターはメンバーを追加するグループの ObjectID であり、-RefObjectId はグループにメンバーとして追加するユーザーの ObjectID です。The -ObjectId parameter is the ObjectID of the group to which we want to add a member, and the -RefObjectId is the ObjectID of the user we want to add as a member to the group.

メンバーを取得するGet members

グループの既存のメンバーを取得するには、この例のように、Get-AzureADGroupMember コマンドレットを使用します。To get the existing members of a group, use the Get-AzureADGroupMember cmdlet, as in this example:

PS C:\Windows\system32> Get-AzureADGroupMember -ObjectId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df

DeletionTimeStamp ObjectId                             ObjectType
----------------- --------                             ----------
                      72cd4bbd-2594-40a2-935c-016f3cfeeeea User
                      8120cc36-64b4-4080-a9e8-23aa98e8b34f User

メンバーを削除するRemove members

グループに以前追加したメンバーを削除するには、ここに示したように、Remove-AzureADGroupMember コマンドレットを使用します。To remove the member we previously added to the group, use the Remove-AzureADGroupMember cmdlet, as is shown here:

PS C:\Windows\system32> Remove-AzureADGroupMember -ObjectId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df -MemberId 72cd4bbd-2594-40a2-935c-016f3cfeeeea

メンバーを確認するVerify members

ユーザーのグループ メンバーシップを確認するには、Select-AzureADGroupIdsUserIsMemberOf コマンドレットを使用します。To verify the group memberships of a user, use the Select-AzureADGroupIdsUserIsMemberOf cmdlet. このコマンドレットは、グループ メンバーシップを確認する対象のユーザーの ObjectId、およびメンバーシップを確認する対象のグループの一覧を、パラメーターとして使用します。This cmdlet takes as its parameters the ObjectId of the user for which to check the group memberships, and a list of groups for which to check the memberships. グループの一覧は “Microsoft.Open.AzureAD.Model.GroupIdsForMembershipCheck” 型の複合変数の形式に指定する必要があるため、最初にその型で変数を作成する必要があります。The list of groups must be provided in the form of a complex variable of type “Microsoft.Open.AzureAD.Model.GroupIdsForMembershipCheck”, so we first must create a variable with that type:

PS C:\Windows\system32> $g = new-object Microsoft.Open.AzureAD.Model.GroupIdsForMembershipCheck

次に、groupIds の値を入力し、この複合変数の "GroupIds" 属性で確認します。Next, we provide values for the groupIds to check in the attribute “GroupIds” of this complex variable:

PS C:\Windows\system32> $g.GroupIds = "b11ca53e-07cc-455d-9a89-1fe3ab24566b", "31f1ff6c-d48c-4f8a-b2e1-abca7fd399df"

ここで、$g のグループに対して ObjectID 72cd4bbd-2594-40a2-935c-016f3cfeeeea を持つユーザーのグループ メンバーシップを確認する場合は、次を使用する必要があります。Now, if we want to check the group memberships of a user with ObjectID 72cd4bbd-2594-40a2-935c-016f3cfeeeea against the groups in $g, we should use:

PS C:\Windows\system32> Select-AzureADGroupIdsUserIsMemberOf -ObjectId 72cd4bbd-2594-40a2-935c-016f3cfeeeea -GroupIdsForMembershipCheck $g

OdataMetadata                                                                                                 Value
-------------                                                                                                  -----
https://graph.windows.net/85b5ff1e-0402-400c-9e3c-0f9e965325d1/$metadata#Collection(Edm.String)             {31f1ff6c-d48c-4f8a-b2e1-abca7fd399df}

返される値は、このユーザーがメンバーであるグループの一覧です。The value returned is a list of groups of which this user is a member. また、このメソッドを適用し、Select-AzureADGroupIdsContactIsMemberOf、Select-AzureADGroupIdsGroupIsMemberOf または Select-AzureADGroupIdsServicePrincipalIsMemberOf を使用して、グループの指定された一覧に対する連絡先、グループ、またはサービス プリンシパルのメンバーシップを確認することもできます。You can also apply this method to check Contacts, Groups or Service Principals membership for a given list of groups, using Select-AzureADGroupIdsContactIsMemberOf, Select-AzureADGroupIdsGroupIsMemberOf or Select-AzureADGroupIdsServicePrincipalIsMemberOf

ユーザーによるグループの作成を無効にするDisable group creation by your users

管理者以外のユーザーがセキュリティ グループを作成できないようにできます。You can prevent non-admin users from creating security groups. MS Online Directory Service (MSODS) の既定の動作では、管理者以外のユーザーによるグループの作成は許可されます。これはセルフサービス グループ管理 (SSGM) が有効であるかどうかとは無関係です。The default behavior in Microsoft Online Directory Services (MSODS) is to allow non-admin users to create groups, whether or not self-service group management (SSGM) is also enabled. SSGM の設定で制御できるのは、[マイ アプリ] アクセス パネルでの動作だけです。The SSGM setting controls behavior only in the My Apps access panel.

管理者以外のユーザーによるグループの作成を無効にするには、次のようにします。To disable group creation for non-admin users:

  1. 管理者以外のユーザーにグループの作成が許可されていることを確認します。Verify that non-admin users are allowed to create groups:

    PS C:\> Get-MsolCompanyInformation | fl UsersPermissionToCreateGroupsEnabled
    
  2. UsersPermissionToCreateGroupsEnabled : True が返された場合は、管理者以外のユーザーはグループを作成できます。If it returns UsersPermissionToCreateGroupsEnabled : True, then non-admin users can create groups. この機能を無効にするには、次のコマンドを実行します。To disable this feature:

    Set-MsolCompanySettings -UsersPermissionToCreateGroupsEnabled $False
    

グループの所有者を管理するManage owners of groups

グループに所有者を追加するには、Add-AzureADGroupOwner コマンドレットを使用します。To add owners to a group, use the Add-AzureADGroupOwner cmdlet:

PS C:\Windows\system32> Add-AzureADGroupOwner -ObjectId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df -RefObjectId 72cd4bbd-2594-40a2-935c-016f3cfeeeea

-ObjectId パラメーターは所有者を追加するグループの ObjectID であり、-RefObjectId はグループに所有者として追加するユーザーまたはサービス プリンシパルの ObjectID です。The -ObjectId parameter is the ObjectID of the group to which we want to add an owner, and the -RefObjectId is the ObjectID of the user or service principal we want to add as an owner of the group.

グループの所有者を取得するには、Get-AzureADGroupOwner コマンドレットを使用します。To retrieve the owners of a group, use the Get-AzureADGroupOwner cmdlet:

PS C:\Windows\system32> Get-AzureADGroupOwner -ObjectId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df

コマンドレットは、指定したグループの所有者 (ユーザーおよびサービス プリンシパル) の一覧を返します。The cmdlet returns the list of owners (users and service principals) for the specified group:

DeletionTimeStamp ObjectId                             ObjectType
----------------- --------                             ----------
                      e831b3fd-77c9-49c7-9fca-de43e109ef67 User

グループから所有者を削除する場合は、Remove-AzureADGroupOwner コマンドレットを使用します。If you want to remove an owner from a group, use the Remove-AzureADGroupOwner cmdlet:

PS C:\Windows\system32> remove-AzureADGroupOwner -ObjectId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df -OwnerId e831b3fd-77c9-49c7-9fca-de43e109ef67

予約済みのエイリアスReserved aliases

グループを作成すると、特定のエンドポイントで、グループの電子メール アドレスの一部として使用する mailNickname またはエイリアスをエンド ユーザーが指定できるようになります。When a group is created, certain endpoints allow the end user to specify a mailNickname or alias to be used as part of the email address of the group. 次のような高い権限を持つ電子メール エイリアスを使用するグループを作成できるのは、Azure AD グローバル管理者だけです。 Groups with the following highly privileged email aliases can only be created by an Azure AD global administrator. 

  • abuseabuse
  • adminadmin
  • 管理者administrator
  • hostmasterhostmaster
  • majordomomajordomo
  • postmasterpostmaster
  • rootroot
  • securesecure
  • securitysecurity
  • ssl-adminssl-admin
  • webmasterwebmaster

次の手順Next steps

Azure Active Directory PowerShell のその他のドキュメントについては、 Azure Active Directory コマンドレットを参照してください。You can find more Azure Active Directory PowerShell documentation at Azure Active Directory Cmdlets.