Windows への AWS Tools for PowerShell のインストール
Windows ベースのコンピュータでは、AWS Tools for PowerShell パッケージオプションのいずれかを実行できます。
-
AWS.Tools - モジュール化されたバージョンの AWS Tools for PowerShell。AWS の各サービスが、個別の小さなモジュールと、共通のサポートモジュール
AWS.Tools.Common
およびAWS.Tools.Installer
によってサポートされます。 -
AWSPowerShell.NetCore - 大きな単独モジュールバージョンの AWS Tools for PowerShell。AWS のすべてのサービスが、この大きな単独モジュールでサポートされます。
-
AWSPowerShell - Windows 固有の大きな単独モジュールのレガシーバージョンの AWS Tools for PowerShell。AWS のすべてのサービスが、この大きな単独モジュールでサポートされます。
選択するパッケージは、実行している Windows のリリースとエディションによって異なります。
注記
Tools for Windows PowerShell (AWSPowerShell モジュール) は、Windows ベースのすべての Amazon マシンイメージ (AMI) にデフォルトでインストールされています。
AWS Tools for PowerShell のセットアップには、このトピックで詳しく説明する次の大まかなタスクが含まれます。
-
環境に適した AWS Tools for PowerShell パッケージオプションをインストールします。
-
Get-ExecutionPolicy
コマンドレットを実行して、スクリプトの実行が有効になっていることを確認します。 -
PowerShell セッションに AWS Tools for PowerShell モジュールをインポートします。
Prerequisites
AWS Tools for PowerShell のセットアップの前提条件 に記載されている要件を満たしていることを確認します。
新しいバージョンの PowerShell (PowerShell Core を含む) は、Microsoft のウェブサイトの「PowerShell のさまざまなバージョンのインストール
Windows に AWS.Tools
をインストールする
モジュール化されたバージョンの AWS Tools for PowerShell は、Windows PowerShell 5.1 または PowerShell Core 6.0 以降を搭載する Windows が実行されている コンピュータにインストールできます。PowerShell Core をインストールする方法については、Microsoft のウェブサイトへの「PowerShell のさまざまなバージョンのインストール
次の 3 つの方法のいずれかで AWS.Tools
をインストールできます。
-
AWS.Tools
モジュール内のコマンドレットを使用する。このAWS.Tools.Installer
モジュールは、他のAWS.Tools
モジュールのインストールと更新を簡素化します。AWS.Tools.Installer
では、PowerShellGet
の更新済みバージョンを必要とし、これを自動的にダウンロードしてインストールします。AWS.Tools.Installer
モジュールは自動的にモジュールのバージョンを同期させます。1 つのモジュールの新しいバージョンをインストールまたは更新すると、AWS.Tools.Installer
内のコマンドレットによって、他のすべてのAWS.Tools
モジュールが同じバージョンに自動的に更新されます。 -
AWS.Tools.zip
からモジュールをダウンロードし、モジュールフォルダの 1 つにそのモジュールを展開する。$Env:PSModulePath
変数の値を出力することで、モジュールフォルダを検出できます。 -
次の手順で説明するように、
Install-Module
コマンドレットを使用して PowerShell ギャラリーから各サービスモジュールをインストールする。
Install-Module コマンドレットを使用して Windows に AWS.Tools
をインストールするには
-
PowerShell セッションを起動します。
注記
PowerShell は、実際のタスクで必要とされる場合を除き、昇格されたアクセス許可を持つ管理者として実行しないことをお勧めします。これは、潜在的なセキュリティリスクを避けるためであり、最小限の特権の原則にも反します。
-
モジュール化された
AWS.Tools
パッケージをインストールするには、次のコマンドを実行します。PS >
Install-Module -Name AWS.Tools.Installer
Untrusted repository You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from 'PSGallery'? [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"):
y
リポジトリについて「信頼されていない」という通知を受けた場合は、これをインストールするかどうかを確認するメッセージが表示されます。PowerShell がモジュールをインストールできるようにするには、
y
を入力します。プロンプトを回避し、リポジトリを信頼せずにモジュールをインストールするには、-Force
パラメータを指定してコマンドを実行します。PS >
Install-Module -Name AWS.Tools.Installer -Force -
AWS コマンドレットを利用することで、使用する
Install-AWSToolsModule
のサービスごとのモジュールをインストールできるようになりました。例えば、次のコマンドは IAM モジュールをインストールします。このコマンドは、指定したモジュールの動作に必要な依存モジュールもインストールします。たとえば、最初のAWS.Tools
サービスモジュールをインストールすると、AWS.Tools.Common
もインストールされます。これは、すべての AWS サービスモジュールに必要な共有モジュールです。また、古いバージョンのモジュールを削除し、他のモジュールを同じ新しいバージョンに更新します。PS >
Install-AWSToolsModule AWS.Tools.EC2,AWS.Tools.S3 -CleanUp
Confirm Are you sure you want to perform this action? Performing the operation "Install-AWSToolsModule" on target "AWS Tools version 4.0.0.0". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Installing module AWS.Tools.Common version 4.0.0.0 Installing module AWS.Tools.EC2 version 4.0.0.0 Installing module AWS.Tools.Glacier version 4.0.0.0 Installing module AWS.Tools.S3 version 4.0.0.0 Uninstalling AWS.Tools version 3.3.618.0 Uninstalling module AWS.Tools.Glacier Uninstalling module AWS.Tools.S3 Uninstalling module AWS.Tools.SimpleNotificationService Uninstalling module AWS.Tools.SQS Uninstalling module AWS.Tools.Common
注記
Install-AWSToolsModule
コマンドレットは、すべての要求されたモジュールをPSRepository
という名前のPSGallery
(https://www.powershellgallery.com/) からダウンロードし、これを信頼できるソースと見なします。この Get-PSRepository -Name PSGallery
の詳細を参照するには、PSRepository
コマンドを使用します。デフォルトでは、このコマンドはモジュールを
$home\Documents\PowerShell\Modules
フォルダにインストールします。コンピュータのすべてのユーザー用に AWS Tools for PowerShell をインストールするには、管理者として起動した PowerShell セッションで次のコマンドを実行する必要があります。これにより、すべてのユーザーがアクセスできる$env:ProgramFiles\PowerShell\Modules
フォルダにモジュールがインストールされます。PS >
Install-AWSToolsModule AWS.Tools.IdentityManagement -Scope AllUsers
Windows で AWSPowerShell.NetCore をインストールする
AWSPowerShell.NetCore は、PowerShell バージョン 3~5.1 または PowerShell Core 6.0 以降を搭載する Windows が実行されているコンピュータにインストールできます。PowerShell Core をインストールする方法については、Microsoft の PowerShell ウェブサイトの「PowerShell のさまざまなバージョンのインストール
AWSPowerShell.NetCore は、次の 2 つの方法のいずれかのでインストールできます。
-
AWSPowerShell.NetCore.zip
からモジュールをダウンロードし、モジュールディレクトリの 1 つにそのモジュールを展開する。 $Env:PSModulePath
変数の値を出力することで、モジュールディレクトリを検出できます。 -
次の手順で説明するように、
Install-Module
コマンドレットを使用して PowerShell ギャラリーからインストールします。
Install-Module コマンドレットを使用して PowerShell ギャラリーから AWSPowerShell.NetCore をインストールするには
PowerShell ギャラリーから AWSPowerShell.NetCore をインストールするには、コンピュータで PowerShell 5.0 以降が実行されているか、PowerShellGet
PS >
Install-Module -name AWSPowerShell.NetCore
管理者として PowerShell を実行している場合、先述のコマンドはコンピュータ上のすべてのユーザーに対してAWS Tools for PowerShell をインストールします。管理者権限のない標準ユーザーとして PowerShell を実行している場合、同じコマンドは現在のユーザーのみに AWS Tools for PowerShell をインストールします。
現在のユーザーが管理者権限を持っている場合に、そのユーザーに対してのみインストールするには、次のように -Scope CurrentUser
パラメータセットを使用してコマンドを実行します。
PS >
Install-Module -name AWSPowerShell.NetCore -Scope CurrentUser
通常、PowerShell 3.0 以降のリリースでは、初めてモジュールでコマンドレットを実行したときにモジュールが PowerShell セッションにロードされますが、AWSPowerShell.NetCore モジュールは大きすぎるため、この機能をサポートしていません。代わりに、次のコマンドを実行して、AWSPowerShell.NetCore Core モジュールを PowerShell セッションに明示的にロードする必要があります。
PS >
Import-Module AWSPowerShell.NetCore
AWSPowerShell.NetCore モジュールを PowerShell セッションに自動的にロードするには、そのコマンドを PowerShell プロファイルに追加します。PowerShell プロファイルの編集の詳細については、Microsoft PowerShell ドキュメントの「About Profiles
Windows PowerShell に AWSPowerShell をインストールする
AWS Tools for Windows PowerShell は、次の 3 つの方法のいずれかでインストールできます。
-
AWSPowerShell.zip
からモジュールをダウンロードし、モジュールディレクトリの 1 つにそのモジュールを展開します。 $Env:PSModulePath
変数の値を出力することで、モジュールディレクトリを検出できます。 -
Tools for Windows PowerShell インストーラ
を実行する。AWSPowerShell をインストールする方法は非推奨になりました。代わりに Install-Module
を使用することをお勧めします。 -
次の手順で説明するように、
Install-Module
コマンドレットを使用して PowerShell ギャラリーからインストールする。
Install-Module コマンドレットを使用して PowerShell ギャラリーから AWSPowerShell をインストールするには
PowerShell 5.0 以降を実行している場合は、PowerShell ギャラリーから AWSPowerShell をインストールできます。PowerShellGet
PS >
Install-Module -Name AWSPowerShell
AWSPowerShell モジュールを PowerShell セッションに自動的にロードするには、前の import-module
コマンドレットを PowerShell プロファイルに追加します。PowerShell プロファイルの編集の詳細については、Microsoft PowerShell ドキュメントの「About Profiles
注記
Tools for Windows PowerShell は、Windows ベースのすべての Amazon マシンイメージ (AMI) にデフォルトでインストールされています。
スクリプト実行の有効化
AWS Tools for PowerShell モジュールをロードするには、PowerShell スクリプトの実行を有効にする必要があります。スクリプトの実行を有効にするには、Set-ExecutionPolicy
のポリシーを設定するために RemoteSigned
コマンドレットを実行します。詳細については、Microsoft Technet ウェブサイトの「About Execution Policies
注記
この必要条件は、Windows を実行しているコンピュータのみに適用されます。ExecutionPolicy
セキュリティ制限は、他のオペレーティングシステムには存在しません。
スクリプト実行を有効化するには
-
実行ポリシーを設定するには管理者権限が必要です。管理者権限を持つユーザーとしてログインしていない場合は、管理者として PowerShell セッションを開きます。[スタート] ボタンをクリックし、[すべてのプログラム] を選択します。[アクセサリ] を選択し、[Windows PowerShell] を選択します。[Windows PowerShell] を右クリックして、コンテキストメニューから [管理者として実行] を選択します。
-
コマンドプロンプトで次のコマンドを入力します。
PS >
Set-ExecutionPolicy RemoteSigned
注記
64 ビットシステムでは、32 ビットバージョンの PowerShell である Windows PowerShell (x86) でもこれを行う必要があります。
実行ポリシーが正しく設定されていない場合、プロファイルなどのスクリプトを実行しようとすると、次のエラーが表示されます。
File C:\Users\username
\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 cannot be loaded because the execution
of scripts is disabled on this system. Please see "get-help about_signing" for more details.
At line:1 char:2
+ . <<<< 'C:\Users\username
\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1'
+ CategoryInfo : NotSpecified: (:) [], PSSecurityException
+ FullyQualifiedErrorId : RuntimeException
Tools for Windows PowerShell インストーラは PSModulePathAWSPowerShell
モジュールが格納されているディレクトリの場所を反映します。
PSModulePath
には AWS モジュールのディレクトリの場所が含まれているため、Get-Module -ListAvailable
コマンドレットによりモジュールが表示されます。
PS >
Get-Module -ListAvailable
ModuleType Name ExportedCommands ---------- ---- ---------------- Manifest AppLocker {} Manifest BitsTransfer {} Manifest PSDiagnostics {} Manifest TroubleshootingPack {} Manifest AWSPowerShell {Update-EBApplicationVersion, Set-DPStatus, Remove-IAMGroupPol...
Versioning
新しい AWS サービスと機能をサポートするために、AWS Tools for PowerShell は AWS の新しいバージョンを定期的にリリースします。インストール済みのツールのバージョンを確認するには、Get-AWSPowerShellVersion コマンドレットを実行します。
PS >
Get-AWSPowerShellVersion
Tools for PowerShell Version 4.1.11.0 Copyright 2012-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved. Amazon Web Services SDK for .NET Core Runtime Version 3.7.0.12 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. Release notes: https://github.com/aws/aws-tools-for-powershell/blob/master/CHANGELOG.md This software includes third party software subject to the following copyrights: - Logging from log4net, Apache License [http://logging.apache.org/log4net/license.html]
また、Get-AWSPowerShellVersion コマンドに -ListServiceVersionInfo
パラメータを追加して、現在のツールのバージョンでサポートされる AWS のサービスのリストを表示することもできます。モジュール化 AWS.Tools.*
オプションを使用すると、現在インポートしているモジュールのみが表示されます。
PS >
Get-AWSPowerShellVersion -ListServiceVersionInfo
... Service Noun Prefix Module Name SDK Assembly Version ------- ----------- ----------- ----------- Alexa For Business ALXB AWS.Tools.AlexaForBusiness 3.7.0.11 Amplify Backend AMPB AWS.Tools.AmplifyBackend 3.7.0.11 Amazon API Gateway AG AWS.Tools.APIGateway 3.7.0.11 Amazon API Gateway Management API AGM AWS.Tools.ApiGatewayManagementApi 3.7.0.11 Amazon API Gateway V2 AG2 AWS.Tools.ApiGatewayV2 3.7.0.11 Amazon Appflow AF AWS.Tools.Appflow 3.7.1.4 Amazon Route 53 R53 AWS.Tools.Route53 3.7.0.12 Amazon Route 53 Domains R53D AWS.Tools.Route53Domains 3.7.0.11 Amazon Route 53 Resolver R53R AWS.Tools.Route53Resolver 3.7.1.5 Amazon Simple Storage Service (S3) S3 AWS.Tools.S3 3.7.0.13 ...
実行中の PowerShell のバージョンを確認するには、「$PSVersionTable
」と入力して、$PSVersionTable 自動変数
PS >
$PSVersionTable
Name Value ---- ----- PSVersion 6.2.2 PSEdition Core GitCommitId 6.2.2 OS Darwin 18.7.0 Darwin Kernel Version 18.7.0: Tue Aug 20 16:57:14 PDT 2019; root:xnu-4903.271.2~2/RELEASE_X86_64 Platform Unix PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…} PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1 WSManStackVersion 3.0
Windows での AWS Tools for PowerShell の更新
AWS Tools for PowerShell の更新バージョンがリリースされると同時に、ローカルで実行しているバージョンを定期的に更新する必要があります。
モジュール化された AWS.Tools
の更新
AWS.Tools
モジュールを最新バージョンにアップグレードするには、次のコマンドを実行します。
PS >
Update-AWSToolsModule -CleanUp
このコマンドは、現在インストールされているすべての AWS.Tools
モジュールを更新し、正常に更新されると、他のインストール済みバージョンを削除します。
注記
Update-AWSToolsModule
コマンドレットは、すべてのモジュールを PSRepository
という名前の PSGallery
(https://www.powershellgallery.com/Get-PSRepository -Name PSGallery
の詳細を参照するには、PSRepository
コマンドを使用します。
Tools for PowerShell Core の更新
Get-AWSPowerShellVersion
コマンドレットを実行して実行中のバージョンを確認し、PowerShell Gallery
AWSPowerShell.NetCore の新しいリリースをインストールする前に、既存のモジュールをアンインストールします。既存のパッケージをアンインストールする前に、開いているすべての PowerShell セッションを閉じます。次のコマンドを実行して、パッケージをアンインストールします。
PS >
Uninstall-Module -Name AWSPowerShell.NetCore -AllVersions
パッケージがアンインストールされたら、次のコマンドを実行して、更新されたモジュールをインストールします。
PS >
Install-Module -Name AWSPowerShell.NetCore
インストール後、コマンド Import-Module AWSPowerShell.NetCore
を実行して、更新されたコマンドレットを PowerShell セッションにロードします。
Tools for Windows PowerShell の更新
Get-AWSPowerShellVersion
コマンドレットを実行して実行中のバージョンを確認し、PowerShell Gallery
-
Install-Module
コマンドレットを使用してインストールした場合は、次のコマンドを実行します。PS >
Uninstall-Module -Name AWSPowerShell -AllVersions
PS >
Install-Module -Name AWSPowerShell
-
.msi
パッケージインストーラーを使用するか、ダウンロードした ZIP ファイルを使用してインストールした場合:-
Tools for PowerShell
ウェブサイトから最新バージョンをダウンロードします。ダウンロードしたファイル名に含まれるパッケージのバージョン番号と、 Get-AWSPowerShellVersion
コマンドレットの実行時に取得したバージョン番号を比較します。 -
ダウンロードバージョンがインストールしたバージョンよりも高い場合は、すべての Tools for Windows PowerShell コンソールを閉じます。
-
新しいバージョンの Tools for Windows PowerShell をインストールします。
-
インストール後、Import-Module AWSPowerShell
を実行して、更新されたコマンドレットを PowerShell セッションにロードします。または、スタートメニューからカスタム AWS Tools for PowerShell コンソールを実行します。