旧モジュールと新モジュールの特徴、接続方法や簡単なコマンドの実行例を紹介します。
現在 AzureAD PowerShell のモジュールは主に 3 種類存在し、以下の順でリリースされています。
- MSOnline (Azure AD v1)
- Azure AD for Graph (Azure AD v2)
- Microsoft Graph PowerShell SDK
今後は全て Microsoft Graph PowerShell SDK に移行されるようですが、一部サポートされていない機能もあるようです。
以下コマンド実行することで、管理端末にインストールされているモジュールの確認が可能です。
Get-InstalledModule
- PowerShell は全て管理者として実行しています。
- PowerShell スクリプトの実行は許可されています。
MSOnline (Azure AD v1)
Office 365 管理者にとっては馴染み深いモジュールです。コマンドに msol が含まれているのが特徴です。
インストール
インストールを実行します。
Install-Module -Name MSOnline
確認メッセージが表示されるので、全て y と入力し、Enter キーを押下します。
接続
接続します。
Connect-MsolService
ユーザー アカウントの管理
簡単な接続例を紹介します。
取得
ユーザー一覧を表示します。
Get-MsolUser
特定ユーザーの詳細なプロパティを表示します。
Get-MsolUser -UserPrincipalName <ユーザーUPN> |fl
特定ユーザーの特定のプロパティを表示します。
Get-MsolUser -UserPrincipalName <ユーザーUPN> |select DisplayName,Country,City,Office
作成
新規ユーザーを作成します。
New-MsolUser -UserPrincipalName "kinoue@officeup.jp" -DisplayName "井上 和子" -FirstName "和子" -LastName "井上"
更新
DisplayName (表示名) プロパティを設定/更新します。
Set-MsolUser -UserPrincipalName "kinoue@officeup.jp" -DisplayName "木村 和子"
Azure AD for Graph (Azure AD v2)
MSOnline の時期バージョンですが、MSOnline の機能を網羅できていないため、併用されることが多いいようです。
以下 2 種類ありますが、機能が重複することも多いため、preview 版についての説明は割愛させて頂きます。
- Azure AD for Graph (Azure AD v2)
- Azure AD for Graph preview (Azure AD v2 preview)
※ Azure AD v2 がインストールされている管理端末に、Azure AD v2 preview をインストールする場合、Uninstall-Module -Name AzureAD コマンドを実行する必要があります。
インストール
インストールを実行します。
Install-Module -Name AzureAD
確認メッセージが表示されるので、全て y と入力し、Enter キーを押下します。
接続
Azure AD の管理者アカウントでログインを実施します。
Connect-AzureAD
ユーザー アカウントの管理
簡単な接続例を紹介します。
取得
ユーザー一覧を表示します。
Get-AzureADUser -All $true
特定ユーザーの詳細なプロパティを表示します。
Get-AzureADUser -ObjectId <オブジェクトID> |fl
特定ユーザーの特定のプロパティを表示します。
Get-AzureADUser -ObjectId <オブジェクトID> |select DisplayName,Country,City
作成
新規ユーザーを作成します。
$PasswordProfile = New-Object -TypeName Microsoft.Open.AzureAD.Model.PasswordProfile
$PasswordProfile.Password = "<P@ssw0rd!!>"
New-AzureADUser -DisplayName "林 健一" -PasswordProfile $PasswordProfile -UserPrincipalName "khayashi@officeup.jp" -AccountEnabled $true -MailNickName "khayashi"
更新
MailNickName プロパティを設定/更新します。
Set-AzureADUser -ObjectId <オブジェクトID> -MailNickName "kehayashi"
切断
切断します。
Disconnect-AzureAD
Microsoft Graph PowerShell SDK
Graph API を使用した新しいモジュールです。今後の主流となりそうです。
インストール
インストールを実行します。
Install-Module Microsoft.Graph -Scope CurrentUser
多くのモジュールがインストールされるため、10 分ほど時間がかかります。
確認メッセージが表示されるので、全て y と入力し、Enter キーを押下します。
接続
Azure AD の管理者アカウントでログインを実施します。
Connect-MgGraph -Scopes "User.ReadWrite.All, Directory.ReadWrite.All"
接続に成功すると以下のメッセージが出力されます。
Welcome To Microsoft Graph!
Scopes オプションは、リソースにアクセスする範囲と権限を指定するオプションです。
Microsoft Graph のアクセス許可名は、「リソース.操作.制約」となります。
アクセス許可の詳細は以下です。
Microsoft Graph のアクセス許可のリファレンス
ユーザー アカウントの管理
簡単な接続例を紹介します。
取得
ユーザー一覧を表示します。
Get-MgUser
特定ユーザーの詳細なプロパティを表示します。
Get-MgUser -UserId <ユーザーID> |fl
※ -UserId は UPN 指定も可能です。
特定ユーザーの特定のプロパティを表示します。
Get-MgUser -UserId <ユーザーID> |select DisplayName,UserPrincipalName,Mail,JobTitle,OfficeLocation
以下出力結果です。
DisplayName : 森尾 真一
UserPrincipalName : s.mori@officeup.jp
Mail : mori@officeup.jp
JobTitle : 課長
OfficeLocation : 川崎
作成
新規ユーザーを作成します。
ユーザー情報を配列として格納し、New-MgUser コマンドで作成します。
$params = @{
AccountEnabled = $true
DisplayName = "荒川 文雄"
MailNickname = "farakawa"
UserPrincipalName = "farakawa@officeup.jp"
PasswordProfile = @{
ForceChangePasswordNextSignIn = $true
Password = "xWwvJ]6NMw+bWH-d"
}
}
New-MgUser -BodyParameter $params
更新
OfficeLocation (事業所) プロパティを設定/更新します。
Update-MgUser -UserId <ユーザーID> -OfficeLocation "川崎"
切断
切断します。
Disconnect-MgGraph
コメント