0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【GraphAPI】Graph PowerShell (1):インストール (オンライン / オフライン)

Last updated at Posted at 2025-05-20

はじめに

Microsoft Graph PowerShell を使用すると、PowerShell コマンドで Graph API を実行することができます。
この記事では Microsoft Graph PowerShell のインストール方法についてまとめました。

Microsoft Graph PowerShell とは?

"Microsoft Graph PowerShell" とは、PowerShell から Graph API を実行することができるモジュールです。"Graph PowerShell SDK" と表記されることもあります。この記事では "Graph PowerShell" と記載しています。

名前に "Microsoft" と付いていますが、Microsoft 社の製品ではなく、Github で公開されているオープソースソフトウェア (OSS) です。

Graph PowerShell は OSS のため、公開情報が英語しか用意されてなかったり、不具合等については Github の Issue でコミュニティに質問する必要があります。

(参考:Microsoft Graph PowerShell)
https://github.com/microsoftgraph/msgraph-sdk-powershell

Graph PowerShell のインストール

Graph PowerShell には以下の 2 つのインストール方法があります。

  • オンライン インストール
    インターネットからダウンロードしてインストールする方法
  • オフライン インストール
    インターネットへのアクセスが制限されている端末に手動でモジュールのファイルを配置する方法

Graph PowerShell は以下のバージョンの PowerShell で利用できます。

  • Windows PowerShell 5.1 以降
    NET Framework 4.7.2 以降が必要
  • PowerShell 7

オンライン インストール

PowerShell から Install-Module コマンドで "Microsoft.Graph" モジュールをインストールします。

  1. (Windows PowerShell の場合のみ) 以下のコマンドを実行します
    # リモート署名済みの PowerShell スクリプトの実行を許可します
    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
    # PowerShellGet モジュールを最新化します
    Install-Module -Name PowerShellGet -Force -AllowClobber
    
  2. 以下のコマンドを実行します
    Install-Module Microsoft.Graph -Scope CurrentUser
    
  3. メッセージが表示されたら "A" と入力して Enter キーを押します
    image.png
  4. インストールが完了するまでしばらく待ちます
    image.png

"Microsoft.Graph" モジュールは "Microsoft.Graph.Users" や "Microsoft.Graph.Teams" といった多数のモジュールで構成されています。

以下のコマンドを実行すると、インストールされたモジュールを確認することができます。

Get-InstalledModule "Microsoft.Graph*"
Version              Name                                Repository           Description
-------              ----                                ----------           -----------
2.28.0               Microsoft.Graph                     PSGallery            Microsoft Graph PowerShell module
2.28.0               Microsoft.Graph.Applications        PSGallery            Microsoft Graph PowerShell Cmdlets
2.28.0               Microsoft.Graph.Authentication      PSGallery            Microsoft Graph PowerShell Authenticatio…
2.28.0               Microsoft.Graph.BackupRestore       PSGallery            Microsoft Graph PowerShell Cmdlets
...

(参考:Microsoft Graph PowerShell を使用して Microsoft 365 に接続する)
https://learn.microsoft.com/ja-jp/microsoft-365/enterprise/connect-to-microsoft-365-powershell?view=o365-worldwide

アンインストール

アンインストールは "Uninstall-Module" コマンドで行います。

Uninstall-Module -Name "Microsoft.Graph"
Get-InstalledModule -Name "Microsoft.Graph.*" | where {$_.Name -ne "Microsoft.Graph.Authentication"} | Uninstall-Module
Uninstall-Module -Name "Microsoft.Graph.Authentication"

モジュールの依存関係のため、上記のコマンドのように順番にモジュールをアンインストールする必要があります。

ベータ版モジュールについて

Graph API には正式版 ("v1.0") とベータ版 ("beta") の 2 種類があります。ベータ版には一般公開前のプレビュー段階の API が含まれています。
ベータ版の Graph API を使用したい場合には、"Microsoft.Graph.Beta" モジュールをインストールします。

Install-Module Microsoft.Graph.Beta -Scope CurrentUser

(参考:Microsoft Graph REST API ベータ版のエンドポイント リファレンス)
https://learn.microsoft.com/ja-jp/graph/api/overview?view=graph-rest-beta

オフライン インストール

インターネットからモジュールをダウンロードできない環境の場合は、必要なモジュールを手動で配置してインストールします。

Install-Module コマンドでは自動的にすべてのモジュールがインストールされますが、オフライン インストールの場合はモジュールごとに手動でダウンロードが必要です。

例えば、ユーザーに関する Graph PowerShell を利用したい場合には、以下のように "Microsoft.Graph.Authentication""Microsoft.Graph.Users" モジュールを配置します。

"Microsoft.Graph.Authentication" は Graph PowerShell を実行するために必ず必要なモジュールです。

  1. インターネットにアクセスできる環境で PowershellGallery から各モジュールのパッケージ (.nupkg) をダウンロードします
    Microsoft.Graph.Authentication
    Microsoft.Graph.Users
    image.png
  2. ダウンロードした ".nupkg" ファイルをのパスを指定して、以下のコマンドを実行します
    Unblock-File -Path 'C:\Downloads\microsoft.graph.users.2.28.0.nupkg'
    Unblock-File -Path 'C:\Downloads\microsoft.graph.authentication.2.28.0.nupkg'
    
  3. ".nupkg" ファイルの拡張子を ".zip" に変更して、展開します
    image.png
  4. 展開した各モジュールのフォルダ内から以下を削除します
    • _rels フォルダ
    • package フォルダ
    • [Content_Types].xml
    • ".nuspec" ファイル
      image.png
  5. 各モジュールのフォルダ名から末尾のバージョン情報を削除します
    image.png
  6. Graph PowerShell を実行したい端末へ、各モジュールのフォルダを配置します
    以下のコマンドの実行結果に含まれるパスへ配置します
    $env:PSModulePath
    
    ※ 配置先の例
    • Windows PowerShell の場合
      C:\Program Files\WindowsPowerShell\Modules
      
    • PowerShell 7 の場合の例
      C:\Program Files\PowerShell\Modules
      
  7. 以下のコマンドを実行してエラーが表示されないことを確認します
    Import-Module -Name "Microsoft.Graph.Authentication"
    Import-Module -Name "Microsoft.Graph.Users"
    

(参考:Install the Microsoft Graph PowerShell SDK)
https://learn.microsoft.com/en-us/powershell/microsoftgraph/installation?view=graph-powershell-1.0

(参考:パッケージの手動ダウンロード)
https://learn.microsoft.com/ja-jp/powershell/gallery/how-to/working-with-packages/manual-download?view=powershellget-3.x

アンインストール

アンインストールは配置した各モジュールのフォルダを削除することで行います。

補足

モジュールの依存関係の確認方法

モジュールが依存しているモジュールは PowershellGallery から確認することができます。

モジュールを利用するためには、そのモジュールが依存しているモジュールも併せてインストールする必要があります。

  1. PowershellGallery[Package Details] をクリックします
    image.png
  2. 画面をスクロールして [Dependencies] にそのモジュールが依存しているモジュールが記載されています
    image.png

"Microsoft.Graph.Authentication" モジュールのように、依存しているモジュールがない場合は "This module has no dependencies" と記載されています。
image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?