この記事は更新から24ヶ月以上経過しているため、最新の情報を別途確認することを推奨いたします。
Office365環境へPowerShell接続する際に以下のようなエラーが発生した場合の対処法となります。
・Import-Module MSOnlineを実施するとエラー
Import-Module : モジュール ディレクトリに有効なモジュール ファイルが見つからなかったため、指定されたモジュール ‘MSOnlin
e’ は読み込まれませんでした。Import-Module MSOnline
~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (MSOnline:String) [Import-Module], FileNotFoundException
+ FullyQualifiedErrorId : Modules_ModuleNotFound,Microsoft.PowerShell.Commands.ImportModuleCommand
・Install-Module MSOnlineを実施するとエラー
PackageManagement\Install-Package : 指定された検索条件とパッケージ名 ‘MSOnline’ と一致するものが見つかりませんでした。
登録されている使用可能なすべてのパッケージ ソースを確認するには、Get-PSRepository を使用します。
… $null = PackageManagement\Install-Package @PSBoundParameters
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Microsoft.Power….InstallPackage:InstallPackage) [Install-Package], Exception
+ FullyQualifiedErrorId : NoMatchFoundForCriteria,Microsoft.PowerShell.PackageManagement.Cmdlets.InstallPackage
・PSGalleryリポジトリの状況
PS C:\Windows\system32> Get-PSRepository
警告: パッケージ ソースが見つかりません。
PS C:\Windows\system32> Register-PSRepository -Default
PS C:\Windows\system32> Get-PSRepository
警告: パッケージ ソースが見つかりません。
PS C:\Windows\system32>
・Powershellのバージョン($PSVersionTable)
5.1
プロキシサーバーの影響を受けているケース
1.認証プロキシ
ご利用環境にて認証プロキシが存在する場合、Windows PowerShell 起動時に以下のコマンドを実行し、認証が必要なプロキシを経由してアクセスができるようにしてから、コマンドレットが正常に完了するか確認します。
【コマンドレット】
$ProxyCredential = New-Object System.Net.NetworkCredential(“ユーザー名”,”パスワード”)[System.Net.WebRequest]::DefaultWebProxy.Credentials = $ProxyCredential
参照 : Azure Active Directory の PowerShell モジュール
※ [補足事項] – <認証プロキシが存在する場合の注意事項>
2.プロキシ設定の解除
Windows PowerShell のプロキシ設定を解除していただいた後にコマンドレットを実行することで、モジュールのインストールが行えるか確認します。
※ 管理者として起動した Windows PowerShell にて実行をお願いいたします。
< Windows PowerShell のプロキシ設定を解除 >
netsh winhttp reset proxy
※ 動作が改善しましたら、必要に応じて以下コマンドレットを実行し設定を元に戻してください。
< Internet Explorer で設定したプロキシ設定を WinHTTP に登録する >
netsh winhttp import proxy source=ie