

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# イメージ
<a name="managing-images"></a>

ユーザーにストリーミングできるアプリケーションと、デフォルトのシステムおよびアプリケーション設定を含む Amazon WorkSpaces アプリケーションイメージを作成して、ユーザーがそれらのアプリケーションをすばやく使用開始できるようにします。ただし、作成後のイメージは変更できません。他のアプリケーションの追加、既存のアプリケーションの更新、またはイメージ設定の変更を行うには、イメージの作成に使用した Image Builder を起動して再接続する必要があります。この Image Builder が削除済みである場合は、イメージに基づく新しい Image Builder を起動します。次に、変更を反映して新しいイメージを作成します。詳細については、「[Image Builder を起動し、ストリーミングアプリケーションをインストールして設定する](tutorial-image-builder-create.md)」および「[チュートリアル: WorkSpaces アプリケーションコンソールを使用してカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-image-builder.md)」を参照してください。

使用可能なイメージは、WorkSpaces アプリケーションコンソールの**イメージレジストリ**に一覧表示されます。これらは、パブリック、プライベート、共有として分類されています。これらのイメージタイプのいずれかを使用して Image Builder を起動し、WorkSpaces Applications フリートをセットアップできます。共有イメージは、他の Amazon Web Services アカウントによって所有され、ユーザーと共有されるイメージです。自分と共有されているイメージに設定されているアクセス許可により、これらのイメージに対する操作が制限される場合があります。詳細については、「[Amazon WorkSpaces アプリケーションイメージの管理](administer-images.md)」を参照してください。

**Topics**
+ [Amazon WorkSpaces アプリケーションのデフォルトのアプリケーションと Windows の設定とアプリケーション起動パフォーマンス](customizing-appstream-images.md)
+ [WorkSpaces アプリケーションエージェントバージョンを管理する](base-images-agent.md)
+ [WorkSpaces アプリケーションエージェントのリリースノート](agent-software-versions.md)
+ [チュートリアル: WorkSpaces アプリケーションコンソールを使用してカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-image-builder.md)
+ [Amazon WorkSpaces アプリケーションイメージの管理](administer-images.md)
+ [Image Assistant CLI オペレーションを使用して Amazon WorkSpaces アプリケーションイメージをプログラムで作成する](programmatically-create-image.md)
+ [Linux ベースのイメージを作成する](create-linux-based-images.md)
+ [セッションスクリプトを使用して Amazon WorkSpaces アプリケーションのユーザーのストリーミングエクスペリエンスを管理する](use-session-scripts.md)

# Amazon WorkSpaces アプリケーションのデフォルトのアプリケーションと Windows の設定とアプリケーション起動パフォーマンス
<a name="customizing-appstream-images"></a>

 デフォルトのアプリケーションおよび Windows 設定を作成すると、ユーザーはすぐにアプリケーションの使用を開始できます。ユーザー自身が設定を作成または構成する必要はありません。

WorkSpaces Applications は、ユーザーのストリーミングセッションのアプリケーションの起動パフォーマンスを最適化します。このプロセスにすべての必須ファイルを含めるには、最適化のマニフェストに従って特定のファイルやフォルダを手動で追加する必要があります。

**Topics**
+ [WorkSpaces アプリケーションユーザーのデフォルトのアプリケーションおよび Windows 設定の作成](creating-default-app-Windows-settings.md)
+ [Amazon WorkSpaces アプリケーションでのアプリケーション起動パフォーマンスの最適化](optimizing-app-launch-performance.md)

# WorkSpaces アプリケーションユーザーのデフォルトのアプリケーションおよび Windows 設定の作成
<a name="creating-default-app-Windows-settings"></a>

Windows ユーザープロファイルフォルダやユーザーレジストリハイブに保存されているアプリケーションのカスタマイズおよび Windows 設定をデフォルトとして設定できます。Image Assistant の**テンプレートユーザー**を使用してデフォルト設定を保存すると、WorkSpaces アプリケーションは Windows のデフォルトユーザープロファイルを設定したプロファイルに置き換えます。次に、この Windows デフォルトユーザープロファイルを使用して、フリートインスタンスにユーザーの初期設定が作成されます。設定したアプリケーションまたは Windows 設定がフリートで機能しない場合は、設定の保存先が Windows ユーザープロファイルになっていることを確認してください。詳細については、[チュートリアル: WorkSpaces アプリケーションコンソールを使用してカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-image-builder.md) の Step 3: Create Default Application and Windows Settings を参照してください。

デフォルト設定として作成および設定できる項目は、以下のとおりです。
+ アプリケーション設定 (ブラウザのホームページ、ツールバーのカスタマイズ、セキュリティの設定など)。
+ アプリケーションデータ設定 (ブラウザブックマーク、接続プロファイルなど)。
+ Windows エクスペリエンスの設定 (ファイル拡張子の表示や非表示のフォルダなど)。

さらに、Internet Explorer のセキュリティ設定 (ESC: セキュリティ強化の構成など) を変更または無効化できます。詳細については、「[Amazon WorkSpaces アプリケーションで Internet Explorer 拡張セキュリティ設定を無効にする](customize-fleets-disable-ie-esc.md)」を参照してください。

# Amazon WorkSpaces アプリケーションでのアプリケーション起動パフォーマンスの最適化
<a name="optimizing-app-launch-performance"></a>

イメージを作成する場合、WorkSpaces Applications では、ユーザーのストリーミングセッションに合わせてアプリケーションの起動パフォーマンスを最適化する必要があります。このプロセス中にアプリケーションが開いている場合は、ユーザーに必要な初期コンポーネントがアプリケーションで使用されていることを確認します。これにより、これらのコンポーネントは最適化プロセスでキャプチャされます。場合によっては、最適化に必要なファイルの一部が検出されないことがあります。これらのファイルの例として、Image Builder で開いていないプラグインやコンポーネントなどが挙げられます。アプリケーションに必要なすべてのファイルを確実にキャプチャするには、これらを最適化のマニフェストに含めることができます。ファイルを最適化のマニフェストに追加すると、フリートインスタンスを作成してユーザーに公開するまでの所要時間が長くなる場合があります。ただし、こうすることで、アプリケーションがフリートインスタンスで最初に起動されるまでにかかる時間が短縮されます。

フォルダ内のすべてのファイルを最適化するには、PowerShell を開いて次の PowerShell コマンドを使用します。

```
dir -path "C:\Path\To\Folder\To\Optimize" -Recurse -ErrorAction SilentlyContinue | %{$_.FullName} | Out-File "C:\ProgramData\Amazon\Photon\Prewarm\PrewarmManifest.txt" -encoding UTF8 -append
```

デフォルトでは、Image Assistant の**最適化**ステップを実行するたびに、アプリケーション最適化マニフェストが置き換えられます。フォルダ内のすべてのファイルを最適化するには、PowerShell コマンドを実行する必要があります。
+ **最適化**ステップが実行されるたびに。
+ [**Disconnect and create image (接続を解除してイメージを作成する)**] を選択する前に、Image Assistant [**Review (確認)**] ページでイメージを作成します。

または、Image Assistant のコマンドラインインターフェイス (CLI) オペレーションを使用して、アプリケーションごとに最適化マニフェストを指定できます。Image Assistant CLI オペレーションを使用して最適化マニフェストを指定すると、WorkSpaces Applications は指定されたアプリケーション最適化マニフェストを Image Assistant **Optimize** ステップで識別されるファイルとマージします。詳細については、「[Image Assistant CLI オペレーションを使用して Amazon WorkSpaces アプリケーションイメージをプログラムで作成する](programmatically-create-image.md)」を参照してください。

# WorkSpaces アプリケーションエージェントバージョンを管理する
<a name="base-images-agent"></a>

WorkSpaces Applications エージェントは、ストリーミングインスタンスで実行され、ユーザーがアプリケーションをストリーミングできるようにするソフトウェアです。新しいイメージを作成すると、[**Always use latest agent version (常に最新バージョンのエージェントを使用)**] オプションがデフォルトで選択されます。このオプションを選択すると、イメージから起動された新しい Image Builder またはフリートインスタンスは常に最新の WorkSpaces Applications エージェントバージョンを使用します。エンドユーザーにデプロイする前に、エージェントの更新を制御して、ソフトウェアとの互換性を確保したり、更新された環境を認定したりできます。

次の手順では、WorkSpaces Applications エージェントのバージョンを管理する方法について説明します。

**Topics**
+ [WorkSpaces アプリケーションエージェントの最新バージョンを常に使用するイメージを作成する](create-image-that-always-uses-latest-agent.md)
+ [特定のバージョンの WorkSpaces アプリケーションエージェントを使用するイメージを作成する](create-image-that-uses-specific-agent.md)
+ [WorkSpaces アプリケーションエージェントの新しいバージョンを使用するイメージを作成する](create-image-that-uses-newer-agent.md)

# WorkSpaces アプリケーションエージェントの最新バージョンを常に使用するイメージを作成する
<a name="create-image-that-always-uses-latest-agent"></a>

イメージが常に最新の WorkSpaces Applications エージェントバージョンを使用するように設定されている場合、ストリーミングインスタンスは、新しいエージェントバージョンがリリースされた AWS ときに から利用できる最新の機能、パフォーマンスの向上、およびセキュリティ更新プログラムで自動的に更新されます。

**注記**  
場合によっては、新しい WorkSpaces Applications エージェントのバージョンがソフトウェアと競合することがあります。本番稼働用フリートにデプロイする前に、新しい WorkSpaces Applications エージェントバージョンを認定することをお勧めします。

**常に最新バージョンの WorkSpaces Applications エージェントを使用するイメージを作成するには**

1. [https://console.aws.amazon.com/appstream2/home](https://console.aws.amazon.com/appstream2/home) で WorkSpaces アプリケーションコンソールを開きます。

1. 次のいずれかを実行します。
   + 既存の Image Builder を使用してイメージを作成する場合は、この Image Builder を起動して接続します。Image Builder が最新バージョンの WorkSpaces Applications エージェントを実行していない場合は、Image Builder を最新のエージェントで起動するかどうかを選択するように求められます。このオプションを必ず選択し、[**Start (起動)**] を選択して、Image Builder に接続します。
   + イメージの作成に使用できる Image Builder がない場合は、新しい Image Builder を起動します。**ステップ 1: イメージ **を選択し、 AWS ベースイメージまたはカスタムイメージを選択します。**ステップ 2: Image Builder を設定する**で、選択したイメージが最新バージョンの WorkSpaces Applications エージェントを実行していない場合は、**WorkSpaces Applications** セクションが表示されます。[**Agent version (エージェントのバージョン)**] リストで、エージェントの最新バージョンを選択します。残りのステップを完了して Image Builder を作成し、これに接続します。詳細については、「[Image Builder を起動し、ストリーミングアプリケーションをインストールして設定する](tutorial-image-builder-create.md)」を参照してください。

1. Image Builder のデスクトップで、Image Assistant を開き、手順に従って新しいイメージを作成します。[**Configure Image (イメージを設定する)**] ステップで、[**Always use the latest agent version (常に最新バージョンのエージェントを使用)**] が選択されていることを確認します。詳細については、「[チュートリアル: WorkSpaces アプリケーションコンソールを使用してカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-image-builder.md)」を参照してください。

   後で最新バージョンの WorkSpaces アプリケーションエージェントを常に使用するわけではないと判断した場合は、新しいイメージを作成し、そのオプションをクリアする必要があります。

1. 新しいフリートを作成するか、既存のフリートを変更します。フリートを設定するときに、作成した新しいイメージを選択します。詳細については、「[Amazon WorkSpaces アプリケーションフリートとスタックを作成する](set-up-stacks-fleets.md)」を参照してください。

1. 新しいスタックを作成するか、既存のスタックを変更して、フリートと関連付けます。

# 特定のバージョンの WorkSpaces アプリケーションエージェントを使用するイメージを作成する
<a name="create-image-that-uses-specific-agent"></a>

互換性を最初にテストできるように、常に最新バージョンを使用するのではなく、WorkSpaces Applications エージェントの更新を制御できます。使用する WorkSpaces アプリケーションエージェントのバージョンがストリーミングアプリケーションと互換性があることを確実にするために、エージェントソフトウェアの特定のバージョンを使用するイメージを作成できます。次に、適格性確認テストを別個のフリートで実行し、その後で本番稼働用フリートにデプロイします。

新しいイメージを作成するときに、[**Always use latest agent version (常に最新バージョンのエージェントを使用)**] オプションが選択されていないことを確認します。これにより、常に最新バージョンを使用するのではなく、Image Builder の起動時に選択したバージョンの WorkSpaces Applications エージェントにイメージがピン留めされます。適格性確認テストが完了したら、本番稼働用フリートを更新してイメージを反映できます。

**WorkSpaces Applications エージェントの特定のバージョンを使用するイメージを作成するには**

1. [https://console.aws.amazon.com/appstream2/home](https://console.aws.amazon.com/appstream2/home) で WorkSpaces アプリケーションコンソールを開きます。

1. 次のいずれかを実行します。
   + 既存の Image Builder を使用してイメージを作成する場合は、この Image Builder を起動して接続します。
   + イメージの作成に使用できる Image Builder がない場合は、新しい Image Builder を起動します。**ステップ 1: イメージ **を選択し、 AWS ベースイメージまたはカスタムイメージを選択します。**ステップ 2: Image Builder を設定する**で、選択したイメージが最新バージョンの WorkSpaces Applications エージェントを実行していない場合は、**WorkSpaces Applications** セクションが表示されます。[**Agent version (エージェントのバージョン)**] リストで、エージェントの最新バージョンを選択しません。残りのステップを完了して Image Builder を作成し、これに接続します。詳細については、「[Image Builder を起動し、ストリーミングアプリケーションをインストールして設定する](tutorial-image-builder-create.md)」を参照してください。

1. Image Builder のデスクトップで、Image Assistant を開き、手順に従って新しいイメージを作成します。Image Assistant の [**Configure Image (イメージを設定する)**] ステップで、[**Always use the latest agent version (常に最新バージョンのエージェントを使用)**] が選択されていないことを確認します。詳細については、「[チュートリアル: WorkSpaces アプリケーションコンソールを使用してカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-image-builder.md)」を参照してください。

   後で常に最新バージョンの WorkSpaces Applications エージェントを使用する場合は、新しいイメージを作成し、そのオプションを選択する必要があります。

1. 新しいフリートを作成するか、既存のフリートを変更します。フリートを設定するときに、作成した新しいイメージを選択します。詳細については、「[Amazon WorkSpaces アプリケーションフリートとスタックを作成する](set-up-stacks-fleets.md)」を参照してください。

1. 新しいスタックを作成するか、既存のスタックを変更して、フリートと関連付けます。

1. フリートに接続して、アプリケーションの互換性をテストします。

# WorkSpaces アプリケーションエージェントの新しいバージョンを使用するイメージを作成する
<a name="create-image-that-uses-newer-agent"></a>

イメージを特定の WorkSpaces Applications エージェントバージョンに固定する場合は、新しいイメージを作成して新しいバージョンに更新する必要があります。これにより、エージェントの各更新の互換性をテストしてから、フリートの増分更新を行うことができます。

新しいイメージを作成するときに、[**Always use latest agent version (常に最新バージョンのエージェントを使用)**] オプションが選択されていないことを確認します。イメージを作成したら、適格性確認テストを別個のフリートで実行し、その後で本番稼働用フリートにデプロイします。適格性確認テストが完了したら、本番稼働用フリートを更新してイメージを反映できます。

**WorkSpaces Applications エージェントの新しいバージョンを使用するイメージを作成するには**

1. [https://console.aws.amazon.com/appstream2/home](https://console.aws.amazon.com/appstream2/home) で WorkSpaces アプリケーションコンソールを開きます。

1. 次のいずれかを実行します。
   + 既存の Image Builder を使用してイメージを作成する場合は、この Image Builder を起動して接続します。Image Builder が最新バージョンの WorkSpaces Applications エージェントを実行していない場合は、Image Builder を最新のエージェントで起動するかどうかを選択するように求められます。このオプションを必ず選択し、[**Start (起動)**] を選択して、Image Builder に接続します。
   + イメージの作成に使用できる Image Builder がない場合は、新しい Image Builder を起動します。**ステップ 1: イメージ **を選択し、 AWS ベースイメージまたはカスタムイメージを選択します。**ステップ 2: Image Builder を設定する**で、選択したイメージが最新バージョンの WorkSpaces アプリケーションエージェントを実行していない場合、**WorkSpaces アプリケーション**セクションが表示されます。[**Agent version (エージェントのバージョン)**] リストで、エージェントの最新バージョンを選択します。残りのステップを完了して Image Builder を作成し、これに接続します。詳細については、「[Image Builder を起動し、ストリーミングアプリケーションをインストールして設定する](tutorial-image-builder-create.md)」を参照してください。

1. Image Builder のデスクトップで、Image Assistant を開き、手順に従って新しいイメージを作成します。Image Assistant の [**Configure Image (イメージを設定する)**] ステップで、[**Always use the latest agent version (常に最新バージョンのエージェントを使用)**] が選択されていないことを確認します。詳細については、「[チュートリアル: WorkSpaces アプリケーションコンソールを使用してカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-image-builder.md)」を参照してください。

   後で常に最新バージョンの WorkSpaces Applications エージェントを使用する場合は、新しいイメージを作成し、そのオプションを選択する必要があります。

1. 新しいフリートを作成するか、既存のフリートを変更します。フリートを設定するときに、作成した新しいイメージを選択します。詳細については、「[Amazon WorkSpaces アプリケーションフリートとスタックを作成する](set-up-stacks-fleets.md)」を参照してください。

1. 新しいスタックを作成するか、既存のスタックを変更して、フリートと関連付けます。

1. フリートに接続して、アプリケーションの互換性をテストします。

# WorkSpaces アプリケーションエージェントのリリースノート
<a name="agent-software-versions"></a>

Amazon WorkSpaces Applications エージェントソフトウェアはストリーミングインスタンスで実行され、エンドユーザーはストリーミングアプリケーションに接続して開始できます。2017 年 12 月 7 日以降、ストリーミングインスタンスは、利用可能な最新の機能、パフォーマンスの向上、およびセキュリティ更新プログラムで自動的に更新できます AWS。2017 年 12 月 7 日より前は、新しいベースイメージリリースにエージェントの更新プログラムが含まれていました。

最新の WorkSpaces Applications エージェントソフトウェアを使用するには、2017 年 12 月 7 日以降 AWS に によって公開された新しいベースイメージを使用してイメージを再構築する必要があります。この操作を行う場合、エージェントの自動更新を有効にするオプションが Image Assistant でデフォルトで選択されます。このオプションを選択したままにし、新しい Image Builder またはイメージから起動される新しいフリートインスタンスで、常に最新バージョンのエージェントが表示されるようにすることをお勧めします。詳細については、「[チュートリアル: WorkSpaces アプリケーションコンソールを使用してカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-image-builder.md)」を参照してください。

次の表は、Windows インスタンス用の WorkSpaces アプリケーションエージェントのリリースバージョンで利用可能な最新の更新を示しています。


| Amazon WorkSpaces Applications エージェントバージョン | 変更 | 
| --- | --- | 
| 02-09-2026 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 02-04-2026 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 12-06-2025 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 10-02-2025 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 09-30-2025 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 07-15-2025 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 05-29-2025 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 03-05-2025 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 02-07-2025 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 10-31-2024 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 10-21-2024 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 09-18-2024 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 05-21-2024 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 04-15-2024 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 01-17-2024 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 12-07-2023 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 09-06-2023 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 05-30-2023 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 05-08-2023 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 04-13-2023 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 03-21-2023 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 10-13-2022 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 06-20-2022 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 03-14-2022 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 02-21-2022 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 12-20-2021 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 10-19-2021 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 08-02-2021 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 07-01-2021 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 06-25-2021 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 05-17-2021 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2021 年 3 月 4 日 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2020 年 12 月 17 日 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2021 年 1 月 4 日 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2020 年 12 月 17 日 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2020 年 10 月 8 日 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2020 年 9 月 1 日 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2020 年 7 月 30 日 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 05-27-2020 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2020 年 4 月 20 日 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 02-19-2020 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 01-13-2020 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 11-13-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 10-08-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 09-23-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2019-09-03 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2019-08-08 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 07-26-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 06-19-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 05-07-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 04-02-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 03-07-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 01-22-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 01-08-2019 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 12-19-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 12-17-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 12-04-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 11-14-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 10-30-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 10-24-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 2018 年 10 月 1 日 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 08-29-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 07-26-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 06-19-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 06-06-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 05-31-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 05-21-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 03-19-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 01-24-2018 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 
| 12-07-2017 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/agent-software-versions.html)  | 

# チュートリアル: WorkSpaces アプリケーションコンソールを使用してカスタム WorkSpaces アプリケーションイメージを作成する
<a name="tutorial-image-builder"></a>

このチュートリアルでは、Microsoft Windows Server オペレーティングシステムに基づく WorkSpaces アプリケーションイメージを作成する方法について説明します。Amazon Linux 2、Rocky Linux、または Red Hat Enterprise Linux オペレーティングシステムに基づくカスタムイメージを作成する場合は、「[チュートリアル: Linux ベースのカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-create-linux-image.md)」を参照してください。

このチュートリアルでは、ユーザーにストリーミングできるアプリケーションを含むカスタム Amazon WorkSpaces アプリケーションイメージを作成する方法と、ユーザーがアプリケーションをすばやく開始できるようにするデフォルトのアプリケーションと Windows の設定について説明します。このチュートリアルを完了するには、事前に Image Builder が必要です。Image Builder がない場合は、「[Image Builder を起動し、ストリーミングアプリケーションをインストールして設定する](tutorial-image-builder-create.md)」を参照してください。

**重要**  
このチュートリアルに含まれている情報は、最新リリースのベースイメージに該当します。詳細については、「[WorkSpaces アプリケーションベースイメージとマネージドイメージ更新リリースノート](base-image-version-history.md)」を参照してください。

**Topics**
+ [ステップ 1: Image Builder でアプリケーションをインストールする](#tutorial-image-builder-install)
+ [ステップ 2: WorkSpaces アプリケーションアプリケーションカタログを作成する](#tutorial-image-builder-add)
+ [ステップ 3: デフォルトのアプリケーションと Windows の設定を作成する](#tutorial-image-builder-create-default-app-settings)
+ [ステップ 4: アプリケーションをテストする](#tutorial-image-builder-test-applications)
+ [ステップ 5: アプリケーションを最適化する](#tutorial-image-builder-optimize)
+ [ステップ 6: イメージの作成を完了する](#tutorial-image-builder-finish-create-image)
+ [ステップ 7 (オプション): イメージにタグを付け、コピーする](#tutorial-image-builder-tag-copy)
+ [ステップ 8: クリーンアップ](#tutorial-image-builder-finish)

## ステップ 1: Image Builder でアプリケーションをインストールする
<a name="tutorial-image-builder-install"></a>

このステップでは、Image Builder に接続し、Image Builder にアプリケーションをインストールします。

**重要**  
このステップを完了するには、Image Builder に、ローカル **Administrator** アカウントまたはローカル管理者権限を持つドメインアカウントでログインする必要があります。組み込まれたローカル **Administrator** アカウントの名前を変更したり、このアカウントを削除したりしないでください。このアカウントの名前変更や削除を行うと、Image Builder は起動せず、イメージの作成は失敗します。

**Image Builder にアプリケーションをインストールする**

1. 以下のいずれかを実行して、Image Builder に接続します。
   + [WorkSpaces アプリケーションコンソールを使用する](managing-image-builders-connect-console.md) (ウェブ接続のみ)
   + [ストリーミング URL を作成する](managing-image-builders-connect-streaming-URL.md) (ウェブまたは WorkSpaces アプリケーションクライアント接続用)
**注記**  
接続する Image Builder が Active Directory ドメインに参加していて、組織にスマートカードサインインが必要な場合は、ストリーミング URL を作成し、接続に WorkSpaces アプリケーションクライアントを使用する必要があります。スマートカードサインインの詳細については、「[スマートカード](feature-support-USB-devices-qualified.md#feature-support-USB-devices-qualified-smart-cards)」をご参照ください。

1. アプリケーションウェブサイトまたは他のダウンロードソースから取得したアプリケーションをインストールします。アプリケーションをインストールし、次のステップに進みます。
**注記**  
アプリケーションのダウンロードおよびインストールは、信頼済みサイトからのみ行います。

   アプリケーションで Windows オペレーティングシステムの再起動が必要な場合は、再起動します。オペレーティングシステムが再起動する前に、Image Builder から切断されます。再起動が完了したら、Image Builder に再接続し、アプリケーションのインストールを完了します。

## ステップ 2: WorkSpaces アプリケーションアプリケーションカタログを作成する
<a name="tutorial-image-builder-add"></a>

このステップでは、イメージのアプリケーション (*.exe*)、バッチスクリプト (*.bat*)、およびアプリケーションショートカット (*.lnk*) を指定して、WorkSpaces アプリケーションアプリケーションカタログを作成します。ストリーミングを計画するアプリケーションごとに、名前、表示名、起動する実行可能ファイルと表示するアイコンを指定できます。アプリケーションショートカットを選択した場合は、これらの値が設定されます。

**重要**  
このステップを完了するには、ローカル **Administrator** アカウントまたはローカル管理者権限を持つドメインアカウントで Image Builder にログインする必要があります。

**WorkSpaces アプリケーションカタログを作成するには**

1. Image Builder デスクトップから、Image Assistant を開きます。Image Assistant でイメージ作成プロセスを順番に実行します。  
![\[Row of icons representing different functions in Image Assistant interface.\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/images/Image-Builder-Desktop-Image-Assistant.png)

1. **[1. Add Apps]** (1. アプリケーションの追加) で **[\$1 Add App]** (アプリケーションの追加) を選択し、追加するアプリケーション、スクリプト、またはショートカットの場所に移動します。**開く** をクリックします。

1. [**App Launch Settings**] ダイアログボックスで、[**Name**]、[**Display Name**] および [**Icon Path**] のデフォルト設定をそのまま使用するか、変更します。必要に応じて、アプリケーションの起動パラメータ (起動したときにアプリケーションに渡される追加の引数) と作業ディレクトリを指定することができます。完了したら、[**Save **] を選択します。

   [**Display Name**] と [**Icon Path**] 設定で、アプリケーションカタログに、どのようにアプリケーション名とアイコンが表示されるのかを決定します。WorkSpaces アプリケーションストリーミングセッションにサインインすると、カタログがユーザーに表示されます。

1. Image Assistant で各アプリケーションに対してステップ 2 および 3 を繰り返し、アプリケーションが [**Add Apps**] タブに表示されていることを確認します。終了したら、[**Next**] を選択し、Image Assistant を使用してイメージの作成を続けます。

## ステップ 3: デフォルトのアプリケーションと Windows の設定を作成する
<a name="tutorial-image-builder-create-default-app-settings"></a>

このステップでは、WorkSpaces Applications ユーザーのデフォルトのアプリケーションと Windows 設定を作成します。これにより、ユーザーは WorkSpaces アプリケーションストリーミングセッション中にアプリケーションをすばやく使い始めることができます。これらの設定を自分で作成または設定する必要はありません。

**重要**  
このステップを完了するには、ローカル **Template User** アカウントまたはローカル管理者権限がないドメインユーザーアカウントで Image Builder にログインする必要があります。

**ユーザーに対してデフォルトのアプリケーションと Windows の設定を作成するには**

1. Image Assistant の **[2. Configure Apps]** (2. アプリケーションの設定) で、**[Switch user]** (ユーザーを切り替える) を選択します。これにより現在のセッションから切断され、ログインメニューが表示されます。

1. 次のいずれかを実行します。
   + Image Builder が Active Directory ドメインに参加していない場合、[**Local User**] タブで、[**Template User**] を選択します。このアカウントでは、ユーザーがデフォルトのアプリケーションと Windows の設定を作成できます。
   + Image Builder が Active Directory ドメインに参加している場合は、[**Directory User**] を選択し、ローカル管理者権限がないドメインユーザーとしてログインします。

1. Image Builder デスクトップから、Image Assistant を開きます。アプリケーションカタログを作成したときに追加したアプリケーションが表示されます。

1. デフォルトのアプリケーション設定を作成するアプリケーションを選択します。

1. アプリケーションが開いた後、必要に応じて、これらの設定を作成します。

1. 終了したら、アプリケーションを閉じ、Image Assistant に戻ります。

1. Image Assistant で複数のアプリケーションを指定した場合は、必要に応じてアプリケーションごとにステップ 4\$16 を繰り返します。

1. デフォルトの Windows 設定が必要な場合は、ここで作成します。終了したら、Image Assistant に戻ります。

1. [**Switch user**] を選択し、アプリケーションカタログを作成した際に使用した、同じアカウント (ローカル管理者権限を持つアカウント) でログインします。

1. Image Assistant の **[2. Configure Apps]** (2. アプリケーションの設定) で、以下のいずれかを実行します。
   + Image Builder が Active Directory ドメインに参加していない場合は、[**Save settings**] を選択します。
   + Image Builder が Active Directory ドメインに参加している場合は、[**Choose which user settings to copy**] リストで、デフォルトのアプリケーションおよび Windows 設定を作成したときに Image Builder にログインするために使用したのと同じアカウントを選択し、[**Save settings**] を選択します。

     **[コピーする設定を選択]** リストに、Image Builder に設定が現在保存されているアカウントが表示されます。

1. 終了したら、[**Next**] を選択し、イメージの作成を続行します。

## ステップ 4: アプリケーションをテストする
<a name="tutorial-image-builder-test-applications"></a>

このステップでは、追加したアプリケーションが、正しく開き、予想どおり動作することを確認します。確認するには、対象ユーザーと同じアクセス権限を持つユーザーとして新規に Windows セッションを開始します。

**重要**  
このステップを完了するには、**[Test User]** アカウントまたはローカル管理者権限がないドメインアカウントで Image Builder にログインする必要があります。

**アプリケーションをテストするには**

1. Image Assistant の **[3. Test]** (3. テスト) で、以下のいずれかを行います。
   + Image Builder が Active Directory ドメインに参加していない場合は、[**Switch user**] を選択します。
   + Image Builder が Active Directory ドメインに参加しており、アプリケーションをテストするためにドメインアカウントが必要であり、かつユーザーの設定が Image Builder に既にある場合は、そのユーザーのアプリケーション設定をリセットする必要があります。これを行うには、[**User to reset**] リストからユーザーを選択し、[**Reset**] を選択します。完了したら、[**Switch user**] を選択します。
**注記**  
Image Builder が新規作成され、Image Builder に設定を持っているユーザーがない場合は、リストにユーザーが表示されません。

1. テストに使用するユーザーを選択し、次のいずれかを実行します。
   + Image Builder が Active Directory ドメインに参加していない場合、[**Test User**] を選択します。このアカウントにより、対象ユーザーと同じポリシーおよびアクセス権限を使用してアプリケーションをテストすることができます。
   + Image Builder が Active Directory ドメインに参加している場合は、**[ディレクトリユーザー]** を選択し、ローカル管理者権限がないドメインアカウントの認証情報を指定して、**[ログイン]** を選択します。

1. Image Builder デスクトップから、Image Assistant を開きます。アプリケーションカタログを作成したときに指定したアプリケーションが表示されます。

1. テストするアプリケーションを選択し、正しく開くこと、作成したデフォルトのアプリケーション設定が適用されていることを確認します。

1. アプリケーションが開いたら、必要に応じてテストします。終了したら、アプリケーションを閉じ、Image Assistant に戻ります。

1. Image Assistant で複数のアプリケーションを指定した場合は、必要に応じてテストするアプリケーションごとにステップ 4\$15 を繰り返します。

1. 終了したら、[**Switch user**] を選択し、次のいずれかの操作を行います。
   + Image Builder が Active Directory ドメインに参加していない場合、[**Local User**] タブで、[**Administrator**] を選択します。
   + Image Builder が Active Directory ドメインに参加しており、Image Assistant でアプリケーションを指定するためローカル管理者権限を持つドメインユーザーとしてログインした場合、そのユーザーとしてログインします。

1. [**Next**] を選択し、イメージの作成を続行します。

## ステップ 5: アプリケーションを最適化する
<a name="tutorial-image-builder-optimize"></a>

このステップでは、Image Assistant でアプリケーションを 1 つずつ開き、起動の依存関係を識別し、アプリケーションがすばやく起動するように最適化を実行します。これらは、リスト内のすべてのアプリケーションで実行する必要があるステップです。

**アプリケーションを最適化するには**

1. Image Assistant の **[4. Optimize]** (4. 最適化) で **[Launch]** (起動) を選択します。

1. WorkSpaces Applications は、リスト内の最初のアプリケーションを自動的に起動します。アプリケーションの起動が完了したら、アプリケーションの初回実行エクスペリエンスを実行するために必要な情報を入力します。たとえば、ウェブブラウザが完全に起動して実行される前に、設定をインポートするように求められることがあります。

1. 初回実行エクスペリエンスが完了し、予想どおりにアプリケーションが動作することを確認してから、[**Continue**] を選択します。複数のアプリケーションをイメージに追加した場合は、各アプリケーションが自動的に開きます。必要に応じてアプリケーションごとに、このステップを繰り返し、すべてのアプリケーションを実行状態にします。

1. 終了したら、Image Assistant の次のタブ、**[5. Configure Image]** (5. イメージの設定) が自動的に表示されます。

## ステップ 6: イメージの作成を完了する
<a name="tutorial-image-builder-finish-create-image"></a>

このステップでは、イメージの名前を選択してイメージの作成を完了します。

**イメージを作成する**

1. 一意のイメージ名、およびオプションのイメージ表示名と説明を入力します。イメージ名は「Amazon」、「AWS」、または「AppStream」で始めることはできません。

   イメージに 1 つ以上のタグを追加することもできます。そのためには、[**タグの追加**] を選択し、タグのキーと値を入力します。さらにタグを追加するには、この手順を繰り返します。詳細については、「[Amazon WorkSpaces アプリケーションリソースのタグ付け](tagging-basic.md)」を参照してください。終了したら、**[次へ]** を選択します。
**注記**  
2017 年 12 月 7 日以降 AWS に によって公開されるベースイメージを選択した場合、オプション**「常に最新のエージェントバージョンを使用する**」がデフォルトで選択されて表示されます。このオプションを選択したままにし、イメージから起動されるストリーミングインスタンスで、常に最新バージョンのエージェントを使用するようにします。このオプションを無効にすると、イメージの作成完了後に再度有効にすることはできません。WorkSpaces Applications エージェントの最新リリースについては、「」を参照してください[WorkSpaces アプリケーションエージェントのリリースノート](agent-software-versions.md)。

1. **[6. Review]** (6. 確認) で、イメージの詳細を確認します。設定を変更するには、[**Previous**] を選択し、適切な Image Assistant タブに移動します。変更を加えた後、必要に応じて Image Assistant の各手順を実行します。

1. イメージの詳細の確認が完了した後、[**Disconnect and Create Image**] を選択します。

1. 数秒以内に、リモートセッションが切断されます。[**Lost Connectivity**] メッセージが表示されたら、ブラウザタブを閉じます。イメージが作成されると、Image Builder のステータスが [**Snapshotting**] と表示されます。このプロセスが終了するまで Image Builder に接続することはできません。

1. コンソールに戻り、[**Images**]、[**Image Registry**] の順に移動します。新しいイメージがリストに表示されていることを確認します。

   イメージが作成中であるときは、コンソールのイメージレジストリでイメージのステータスが [**Pending**] と表示され、そのイメージに接続することはできません。

1. ステータスを更新するには、定期的に [**Refresh**] アイコンを選択します。イメージが作成されたら、イメージのステータスは [**Available**] に変わり、Image Builder が自動的に停止されます。

    イメージの作成を続行するには、Image Builder を開始してコンソールから接続するか、新しい Image Builder を作成することができます。

**注記**  
イメージの作成後、Windows オペレーティングシステムの更新プログラムの維持はユーザーの責任になります。そのためには、マネージド WorkSpaces アプリケーションイメージの更新を使用できます。ユーザーは、アプリケーションとその依存関係の更新を維持する責任も担います。詳細については、「[Amazon WorkSpaces アプリケーションイメージUp-to-Date状態に保つ](keep-image-updated.md)」を参照してください。  
他のアプリケーションの追加、既存のアプリケーションの更新、またはイメージ設定の変更を行うには、イメージの作成に使用した Image Builder を起動して再接続する必要があります。または、その Image Builder を削除したという場合は、イメージに基づいた新しい Image Builder を起動します。次に、変更を反映して新しいイメージを作成します。

## ステップ 7 (オプション): イメージにタグを付け、コピーする
<a name="tutorial-image-builder-tag-copy"></a>

イメージの作成中または作成後に 1 つ以上のタグをイメージに追加できます。イメージは、同じリージョン内でコピーする、または同じ Amazon Web Services アカウント内の新しいリージョンにコピーすることもできます。ただし、ソースイメージをコピーすると、送信先イメージは同一でも区別されます。 AWS はユーザー定義タグをコピーしません。また、コピーできるのは独自に作成したカスタムイメージのみであり、 AWSが提供するベースイメージはコピーできません。

**注記**  
同時に 2 つのイメージをコピー先にコピーできます。イメージのコピー先がイメージの制限に達している場合は、エラーが発生します。この場合にイメージをコピーするには、最初にコピー先からイメージを削除する必要があります。コピー先がイメージのクォータ（制限とも呼ばれます）を下回ったら、ソースリージョンからイメージのコピーを開始します。詳細については、「[Amazon WorkSpaces Applications Service Quotas](limits.md)」を参照してください。

**既存のイメージにタグを追加するには**

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージのリストで、タグを追加するイメージを選択します。

1. [**Tags**]、[**Add/Edit Tags**]、[**Add Tag**] の順に選択し、タグのキーと値を指定して、[**Save**] を選択します。

詳細については、「[Amazon WorkSpaces アプリケーションリソースのタグ付け](tagging-basic.md)」を参照してください。

**イメージをコピーするには**

地理的に異なるリージョン間でイメージをコピーすると、同じイメージに基づいて複数のリージョンからアプリケーションをストリーミングできます。ユーザーの近くでアプリケーションをストリーミングすることで、WorkSpaces アプリケーションを使用してユーザーのストリーミングアプリケーションエクスペリエンスを向上させることができます。

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージのリストで、コピーするイメージを選択します。

1. **[アクション]**、**[コピー]** の順に選択します。

1. [**Copy Image (イメージのコピー)**] ダイアログボックスで、以下の情報を指定し、[**Copy Image (イメージのコピー)**] を選択します。
   + [**送信先リージョン**] で、新しいイメージのコピー先となるリージョンを選択します。
   + [**名前**] に、イメージが送信先にコピーされるときの名前を指定します。
   + [**説明**] (オプション) に、イメージが送信先にコピーされるときの説明を指定します。

1. コピー操作の進行状況を確認するには、コンソールに戻り、[**イメージ**]、[**イメージレジストリ**] に移動します。ナビゲーションバーを使用して、コピー先のリージョンに切り替え (該当する場合)、新しいイメージがイメージのリストに表示されることを確認します。

   新しいイメージは、コンソールのイメージレジストリで、最初のステータスが**コピー中**として表示されます。イメージが正常に作成されると、イメージのステータスが [**Available**] に変わります。つまり、イメージを使用してスタックを起動し、アプリケーションをストリーミングすることができます。

## ステップ 8: クリーンアップ
<a name="tutorial-image-builder-finish"></a>

最後に、実行中の Image Builder を停止してリソースを解放し、アカウントに意図しない料金が発生するのを避けます。使用していない、実行中の Image Builder を停止することをお勧めします。詳細については、[WorkSpaces アプリケーションの料金](https://aws.amazon.com/appstream2/pricing/)」を参照してください。

**実行中の Image Builder を停止するには**

1. ナビゲーションペインで、[**Images**]、[**Image Builders**] の順に選択し、実行中の Image Builder インスタンスを選択します。

1. [**Actions**]、[**Stop**] の順に選択します。

# Amazon WorkSpaces アプリケーションイメージの管理
<a name="administer-images"></a>

使用可能なイメージは、WorkSpaces アプリケーションコンソールの**イメージレジストリ**に一覧表示され、可視性によって次のように分類されます。
+ **パブリック** — によって所有され、利用可能になるベースイメージ AWS。ベースイメージには、最新の Windows オペレーティングシステムと WorkSpaces Applications エージェントソフトウェアが含まれます。これらのベースイメージを使用して、ユーザー独自のアプリケーションを含む新しいイメージを作成できます。によってリリースされるベースイメージの詳細については AWS、「」を参照してください[WorkSpaces アプリケーションベースイメージとマネージドイメージ更新リリースノート](base-image-version-history.md)。
+ **プライベート** — 作成して所有し、他の AWS アカウントと共有していないイメージ。
+ **他のユーザーと共有** — 作成して所有し、同じ AWS リージョン内の 1 つ以上の AWS アカウントと共有したイメージ。イメージを別の AWS アカウントと共有する場合、イメージを Image Builder (新しいイメージを作成）、フリート、またはその両方に使用できるかどうかを指定できます。
+ **自分と共有 — **同じ AWS リージョン内の別の AWS アカウントによって作成および所有され、自分の AWS アカウントと共有されているイメージ。自分のアカウントでイメージを共有するときに所有者が指定したアクセス許可に応じて、このイメージは Image Builder、フリート、またはその両方で使用できます。

**Topics**
+ [Amazon WorkSpaces アプリケーションでプライベートイメージを削除する](delete-private-image.md)
+ [所有しているイメージを Amazon WorkSpaces アプリケーションの別の AWS リージョンにコピーする](copy-image-different-region.md)
+ [Amazon WorkSpaces アプリケーションの別の AWS アカウントで所有しているイメージを共有する](share-image-with-another-account.md)
+ [Amazon WorkSpaces アプリケーションで所有しているイメージの共有を停止する](stop-sharing-image-with-all-accounts.md)
+ [Amazon WorkSpaces アプリケーションイメージUp-to-Date状態に保つ](keep-image-updated.md)
+ [Amazon WorkSpaces アプリケーションの Windows Update およびウイルス対策ソフトウェア](windows-update-antivirus-software.md)
+ [Amazon WorkSpaces アプリケーションで新しいイメージをプログラムで作成する](create-image-programmatically.md)
+ [Amazon WorkSpaces アプリケーションのイメージでライセンス込みアプリケーションを管理する](license-included-applications.md)
+ [イメージのインポート](import-image.md)
+ [イメージのエクスポート](export-image.md)

# Amazon WorkSpaces アプリケーションでプライベートイメージを削除する
<a name="delete-private-image"></a>

不要になったプライベートイメージは削除できます。フリートで使用されているイメージや、他の AWS アカウントと共有されているイメージを削除することはできません。フリートで使用されているイメージや共有されているイメージを削除するには、最初に、フリートからのイメージの削除とすべてのイメージ共有アクセス権限の削除を行う必要があります。削除したイメージは回復できません。

**プライベートイメージを削除するには**

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージのリストで、削除するプライベートイメージを選択します。

1. [**Actions (アクション)**]、[**Delete (削除)**] の順に選択し、[**Delete (削除)**] を再度選択します。

   イメージはイメージレジストリから除去されて削除されます。

# 所有しているイメージを Amazon WorkSpaces アプリケーションの別の AWS リージョンにコピーする
<a name="copy-image-different-region"></a>

**重要**  
アジアパシフィック (マレーシア）、欧州 (ミラノ）、欧州 (スペイン）、イスラエル (テルアビブ) AWS リージョンの場合: クロスリージョンイメージコピーは、2025 年 10 月 2 日以降にリリースされた WorkSpaces Applications エージェントバージョンを使用するイメージ、または 2025 年 9 月 5 日以降にリリースされたマネージド更新を使用するイメージでのみサポートされます。古いバージョンは、リージョン間でコピーすることはできません。これらの最小バージョン要件を満たすようにイメージを更新して、クロスリージョンコピー機能を有効にします。

所有しているイメージを別の AWS リージョンにコピーできます。異なる AWS リージョンで同じイメージを使用すると、WorkSpaces アプリケーションへのアプリケーションのグローバルデプロイを簡素化できます。ユーザーに最も地理的に近い AWS リージョンにアプリケーションをデプロイすることで、ユーザーにより応答性の高いエクスペリエンスを提供できます。

**所有しているイメージを別の AWS リージョンにコピーするには**

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージリストで、別の AWS リージョンにコピーするイメージを選択します。

1. **[アクション]**、**[コピー]** の順に選択します。

1. **イメージのコピー**ダイアログボックスの**宛先リージョン**で、イメージのコピー先の AWS リージョンを選択します。

1. イメージの一意の名前と説明 (オプション) を [**Destination region (コピー先リージョン)**] に入力します。

1. [**Copy Image (イメージのコピー)**] を選択します。

# Amazon WorkSpaces アプリケーションの別の AWS アカウントで所有しているイメージを共有する
<a name="share-image-with-another-account"></a>

WorkSpaces Applications イメージはリージョンリソースであるため、所有しているイメージを同じ AWS リージョン内の他の AWS アカウントと共有できます。イメージの共有は、さまざまなシナリオで役立つことがあります。たとえば、異なる AWS アカウントを使用して開発リソースと本番稼働用リソースを分離する場合、開発アカウントを使用してイメージを作成できます。次に、本番稼働用アカウントでイメージを共有できます。所属組織が独立系ソフトウェアベンダー (ISV) である場合は、最適化したイメージを顧客と共有できます。最適化したイメージには必要なアプリケーションがインストールおよび設定済みであるため、顧客はアプリケーションを自分でインストールして設定する必要がなく、アプリケーションをすぐに使い始めることができます。

イメージを別の AWS アカウントと共有する場合、送信先アカウントがフリート内のイメージを使用できるか、Image Builder を作成して新しいイメージを作成できるかを指定します。共有イメージの所有権は自分に帰属します。これにより、共有イメージのアクセス権限の追加、変更、または削除を必要に応じて行うことができます。

イメージを別のアカウントと共有して、このアカウントにフリートへのアクセス権限を付与すると、共有イメージを使用して当該アカウントのフリートを作成または更新できます。これらのアクセス権限を後で削除すると、アカウントではイメージを使用できなくなります。共有イメージを使用するアカウントのフリートの場合、希望する容量を 0 に設定すると、新しいフリートインスタンスは作成されません。ストリーミングセッションが終了するまで既存のセッションが続行されます。新規作成するフリートインスタンスの場合は、そのアカウントのフリートを有効なイメージで更新する必要があります。

イメージを別のアカウントと共有して、このアカウントに Image Builder へのアクセス権限を付与すると、共有イメージを使用して当該アカウントの Image Builder およびイメージを作成できます。これらのアクセス権限を後で削除しても、自分のイメージから作成した Image Builder やイメージは影響を受けません。

**重要**  
イメージを別のアカウントと共有した後で、このアカウントでこのイメージから作成した Image Builder やイメージをコントロールすることはできません。このため、アカウントに対して Image Builder へのアクセス権限を付与するのは、イメージのコピーを作成することをアカウントに許可する場合に限ります。また、イメージの共有を停止した後のコピーへのアクセス権は保持します。

**所有しているイメージを別の AWS アカウントと共有するには**

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージのリストで、共有するイメージを選択します。

1. [**Actions (アクション)**]、[**Edit (編集)**] の順に選択します。

1. [**Share image (イメージの共有)**] ダイアログボックスで、[**Add account (アカウントの追加)**] を選択します。

1. イメージを共有するアカウントの 12 桁の AWS アカウント ID を入力し、アカウントが次のいずれかまたは両方を実行できるかどうかを選択します。
   + イメージを使用して Image Builder を起動する (新しいイメージを作成する場合)。
   + イメージをフリートで使用する。

   イメージを共有する先のアカウントのリストからアカウントを削除するには、削除するアカウントの行で [**Use for fleet (フリートで使用)**] オプションの右側にある [X] アイコンを選択します。

1. より多くの AWS アカウントとイメージを共有するには、イメージを共有するアカウントごとにステップ 6 を繰り返します。

1. [**Share Image (イメージの共有)**] を選択します。

**所有しているイメージに対してイメージ共有アクセス権限を追加または更新するには**

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージのリストで、アクセス権限を変更するイメージを選択します。

1. イメージのリストの下で、選択したイメージの [**Permissions (アクセス権限)**] タブを選択し、[**Edit (編集)**] を選択します。

1. **画像アクセス許可の編集**ダイアログボックスで、1 つ以上の AWS アカウントで必要に応じて、次の画像共有オプションのいずれかまたは両方を選択またはクリアします。アカウントで両方のオプションを選択解除すると、そのアカウントではイメージが共有されなくなります。
   + イメージを使用して Image Builder を起動する (新しいイメージを作成する場合)。
   + イメージをフリートで使用する。

   イメージを共有する先のアカウントのリストからアカウントを削除するには、削除するアカウントの行で [**Use for fleet (フリートで使用)**] オプションの右側にある [X] アイコンを選択します。

1. さらに多くの AWS アカウントのイメージ共有アクセス許可を編集するには、アクセス許可を更新するアカウントごとにステップ 5 を繰り返します。

1. [**Update image sharing permissions (イメージ共有アクセス権限の更新)**] を選択します。

# Amazon WorkSpaces アプリケーションで所有しているイメージの共有を停止する
<a name="stop-sharing-image-with-all-accounts"></a>

所有しているイメージを他の AWS アカウントとの共有を停止するには、次の手順に従います。

**所有しているイメージを他の AWS アカウントとの共有を停止するには**

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージのリストで、アクセス権限を変更するイメージを選択します。

1. イメージのリストの下で、選択したイメージの [**Permissions (アクセス権限)**] タブを選択し、[**Edit (編集)**] を選択します。

1. **イメージのアクセス許可の編集**ダイアログボックスで、イメージが共有されているすべての AWS アカウントの行で、フリー**トに使用する**オプションの右側にある X アイコンを選択します。

1. [**Update image sharing permissions (イメージ共有アクセス権限の更新)**] を選択します。

# Amazon WorkSpaces アプリケーションイメージUp-to-Date状態に保つ
<a name="keep-image-updated"></a>

WorkSpaces アプリケーションイメージをup-to-date状態に保つには、次のいずれかを実行します。
+ [Managed WorkSpaces アプリケーションイメージの更新を使用してイメージを更新する](keep-image-updated-managed-image-updates.md) – この更新メソッドは、最新のオペレーティングシステムの更新とドライバーの更新、および最新の WorkSpaces Applications エージェントソフトウェアを提供します。
+ [マネージド WorkSpaces アプリケーションエージェントバージョンを使用して WorkSpaces アプリケーションエージェントソフトウェアを更新する](keep-image-updated-manage-image-versions.md) – この更新メソッドは、最新の WorkSpaces Applications エージェントソフトウェアを提供します。

# Managed WorkSpaces アプリケーションイメージの更新を使用してイメージを更新する
<a name="keep-image-updated-managed-image-updates"></a>

WorkSpaces Applications は、最新のオペレーティングシステムの更新、ライセンス込みのアプリケーションの更新、ドライバーの更新、WorkSpaces Applications エージェントソフトウェアを使用してイメージを自動的に更新する方法を提供します。マネージド WorkSpaces アプリケーションイメージの更新では、更新するイメージを選択します。WorkSpaces Applications は、同じ AWS アカウントとリージョンに Image Builder を作成し、更新をインストールして新しいイメージを作成します。新しいイメージを作成したら、本番稼働前のフリートでテストしてから、本番稼働用フリートを更新したり、他の AWS アカウントとイメージを共有したりできます。

**注記**  
Managed WorkSpaces Applications Image Updates は、Microsoft Windows Server、Red Hat Enterprise Linux、Rocky Linux オペレーティングシステムで使用できます。

**注記**  
新しいイメージが作成されたら、オペレーティングシステムの更新を維持する責任があります。そのためには、マネージド WorkSpaces アプリケーションイメージの更新を引き続き使用できます。  
Amazon EC2 Windows Paravirtual (PV) ドライバー、ENA ドライバー、 AWS NVMe ドライバーの更新を維持する責任があります。ドライバーを更新する方法の詳細については、「[EC2 インスタンスのデバイスドライバーを管理する](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-device-drivers.html)」を参照してください。  
ユーザーは、アプリケーションとその依存関係を維持する責任も負います。他のアプリケーションの追加、既存のアプリケーションの更新、またはイメージ設定の変更を行うには、イメージの作成に使用した Image Builder を起動して再接続する必要があります。または、その Image Builder を削除したという場合は、イメージに基づいた新しい Image Builder を起動します。次に、変更を反映して新しいイメージを作成します。

## 前提条件
<a name="keep-image-updated-managed-image-updates-prerequisites"></a>

マネージド型イメージの更新を使用する際の前提条件と考慮事項を以下に示します。
+ WorkSpaces Applications アカウントのクォータ (制限とも呼ばれます) が、新しい Image Builder と新しいイメージの作成をサポートするのに十分であることを確認します。クォータの引き上げをリクエストするには、[https://console.aws.amazon.com/servicequotas/](https://console.aws.amazon.com/servicequotas/) の [Service Quotas] コンソールを使用します。デフォルトの WorkSpaces アプリケーションのクォータについては、「」を参照してください[Amazon WorkSpaces Applications Service Quotas](limits.md)。
+ 更新するイメージは自分が所有している必要があります。自分が共有先になっているイメージを更新することはできません。
+ WorkSpaces Applications が最新のオペレーティングシステムの更新、ドライバーの更新、WorkSpaces Applications エージェントソフトウェアをインストールするための Image Builder を作成し、新しいイメージを作成すると、更新中に Image Builder インスタンスに対して課金されます。
+ サポートされるイメージは、2017-07-24T00:00:00Z 以降にリリースされたベースイメージから作成する必要があります。
+ サポートされる表示言語は、英語と日本語です。詳細については、「[デフォルトの表示言語を指定する](configure-default-display-language.md)」を参照してください。
+ SSM Agent の最新バージョンを使用してください。バージョンについては、「[WorkSpaces アプリケーションベースイメージとマネージドイメージ更新リリースノート](base-image-version-history.md)」を参照してください。インストールの詳細については、「[Windows Server の EC2 インスタンスに SSM Agent を手動でインストールする](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-install-win.html)」を参照してください。

## Managed WorkSpaces アプリケーションイメージの更新を使用してイメージを更新する方法
<a name="keep-image-updated-managed-image-updates-how-to-update-image"></a>

WorkSpaces Applications イメージを最新のパッチ、ドライバーの更新、WorkSpaces Applications エージェントソフトウェアで更新するには、次の手順を実行します。

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージのリストで、更新するイメージを選択します。イメージのステータスが **Available** になっていることを確認します。

1. **[アクション]**、**[更新]** の順に選択します。

1. **[イメージの更新]** ダイアログボックスで、次の操作を行います。
   + **新しいイメージ名**には、 AWS アカウントとリージョン内で一意のイメージ名を入力します。イメージ名を「Amazon」、「AWS」、または「AppStream」で始めることはできません。
   + **[新しいイメージ表示名]** には、オプションでこのイメージについて表示する名前を入力できます。
   + **[新しいイメージの説明]** には、オプションでこのイメージの説明を入力できます。
   + **[タグ]** では、**[タグの追加]** を選択し、タグのキーと値を入力します。さらにタグを追加するには、この手順を繰り返します。詳細については、「[Amazon WorkSpaces アプリケーションリソースのタグ付け](tagging-basic.md)」を参照してください。

1. **[イメージの更新]** を選択します。

   現在のイメージが既に最新である場合は、メッセージで通知されます。

1. ナビゲーションペインで、**[イメージ]**、**[Image Builder]** の順に選択します。

1. Image Builder 一覧で、新しい Image Builder が **[更新中]** 状態になっていることを確認します。Image Builder の名前には 10 桁のランダムなサフィックスが含まれます。

   Image Builder は、ステップ 5 で新しいイメージ用に選択したインスタンスファミリーの中で最小のサイズです。Image Builder は仮想プライベートクラウド (VPC) に接続していないため、サブネットは指定されていません。

1. **[イメージレジストリ]** を選択し、新しいイメージがリストに表示されていることを確認します。

   イメージの作成中、イメージのステータスは、コンソールのイメージレジストリに **[作成中]** と表示されます。

1. イメージが作成されると、WorkSpaces Applications は認定プロセスを実行して、イメージが期待どおりに動作することを確認します。

   この間、このプロセスにも使用される Image Builder が、**[Image Builder]** リストに **[認定待ち]** のステータスで表示されます。

1. 認定プロセスが正常に完了すると、コンソールの上部に **[成功]** メッセージが表示され、イメージレジストリにイメージステータスが **[使用可能]** と表示されます。

   さらに、WorkSpaces アプリケーションが作成した Image Builder は自動的に削除されます。
**注記**  
オペレーティングシステムの更新の量によっては、イメージの更新が完了するまでに数時間かかる場合があります。問題によりイメージを更新できない場合、イメージ名の横に感嘆符の付いた赤いアイコンが表示され、イメージレジストリのイメージステータスが **[失敗]** と表示されます。このような場合は、イメージを選択し、**[通知]** タブを選択して、エラー通知を確認してください。詳細については、通知コードのトラブルシューティングに関するドキュメントの [イメージの内部サービス](troubleshooting-notification-codes.md#troubleshooting-notification-codes-image) セクションの情報を参照してください。  
認定プロセスが成功しなかった場合でも、WorkSpaces アプリケーションが作成した Image Builder は自動的に削除されます。

1. WorkSpaces Applications が新しいイメージを作成したら、本番稼働前のフリートでイメージをテストします。アプリケーションが想定どおりに動作することを確認したら、新しいイメージで本番稼働用フリートを更新します。

# マネージド WorkSpaces アプリケーションエージェントバージョンを使用して WorkSpaces アプリケーションエージェントソフトウェアを更新する
<a name="keep-image-updated-manage-image-versions"></a>

WorkSpaces Applications は、新しい WorkSpaces Applications エージェントソフトウェアで Image Builder を自動的に更新する方法を提供します。この方法では、新しいバージョンのエージェントがリリースされるたびに新しいイメージを作成できます。その後、本番稼働用フリートを更新する前にイメージをテストできます。WorkSpaces Applications エージェントソフトウェアを管理する方法の詳細については、「」を参照してください[WorkSpaces アプリケーションエージェントバージョンを管理する](base-images-agent.md)。

**注記**  
Windows オペレーティングシステムの更新、アプリケーション、それらの依存関係のインストールとメンテナンスは、お客様の責任で行います。

WorkSpaces アプリケーションイメージを最新の Windows オペレーティングシステムの更新で更新し続けるには、次のいずれかを実行します。
+ 新しいイメージがリリースされるたびに、最新のベースイメージにアプリケーションをインストールする。
+ Windows オペレーティングシステムの更新プログラム、お客様のアプリケーション、それらの依存関係を既存のイメージビルダーにインストールする。
+ Windows オペレーティングシステムの更新プログラム、お客様のアプリケーション、それらの依存関係を既存のイメージから新しいイメージビルダーにインストールする。

最新の Windows オペレーティングシステム、アプリケーションとその依存関係、WorkSpaces Applications エージェントソフトウェアを使用して新しいイメージを作成したら、開発フリートでイメージをテストします。アプリケーションが想定どおりに動作することを確認したら、新しいイメージで本番稼働用フリートを更新します。

# Amazon WorkSpaces アプリケーションの Windows Update およびウイルス対策ソフトウェア
<a name="windows-update-antivirus-software"></a>

WorkSpaces アプリケーションストリーミングインスタンスは非永続的です。ユーザーストリーミングセッションが終了すると、WorkSpaces アプリケーションはセッションで使用されるインスタンスを終了し、スケーリングポリシーに応じて、フリートで置き換えるために新しいインスタンスをプロビジョニングします。すべてのフリートインスタンスは、同じイメージからプロビジョニングされます。イメージは一度作成すると変更できないため、ユーザーストリーミングセッションで使用されるすべてのフリートインスタンスには、イメージの作成時に基になるイメージにインストールされていた Windows とアプリケーションの更新のみが含まれます。さらに、ストリーミングセッションに使用されるフリートインスタンスはセッションの終了時に終了するため、ストリーミングセッション中にインスタンス上の Windows またはアプリケーションに対して行われた更新は、同じユーザーや他のユーザーによる以降のセッションでは保持されません。

**注記**  
スタックのアプリケーション設定の永続化を有効にした場合、WorkSpaces Applications は、同じユーザーの将来のセッションに対してユーザーが行った Windows およびアプリケーション設定の変更を、ユーザーの Windows プロファイルに保存すると、保持します。ただし、アプリケーション設定の永続化機能は、Windows およびアプリケーション構成設定のみを保持します。ストリーミングインスタンス上の Windows またはアプリケーションに対するソフトウェア更新は保持されません。

このような理由から、WorkSpaces アプリケーションは、WorkSpaces アプリケーションインスタンスの Windows Update およびウイルス対策ソフトウェアに次のアプローチを採用しています。

## Windows 更新
<a name="windows-update-antivirus-software-wu"></a>

Windows Update は、WorkSpaces Applications ベースイメージではデフォルトで有効になっていません。イメージビルダーで Windows Update を有効にしてからイメージを作成しようとすると、Image Assistant によって警告が表示され、イメージ作成プロセス中は Windows Update が無効になります。フリートインスタンスに最新の Windows 更新プログラムが確実にインストールされるようにするには、イメージビルダーに Windows 更新プログラムをインストールし、新しいイメージを作成して、その新しいイメージでフリートを定期的に更新することをお勧めします。

## ウイルス対策ソフトウェア
<a name="windows-update-antivirus-software-av"></a>

イメージにウイルス対策ソフトウェアをインストールする場合は、ウイルス対策ソフトウェアの自動更新を有効にしないことをお勧めします。そうしないと、ウイルス対策ソフトウェアがユーザーセッション中に最新の定義ファイルまたはその他の更新でソフトウェア自体を更新しようとします。これは、パフォーマンスに影響を与える可能性があります。さらに、ウイルス対策ソフトウェアに加えられた更新は、現在のユーザーセッションを超えて保持されません。フリートインスタンスに常に最新のウイルス対策ソフトウェアの更新を適用するには、次のいずれかを実行することをお勧めします。
+ イメージビルダーを更新し、定期的に新しいイメージを作成します (たとえば [Image Assistant CLI オペレーション](https://docs.aws.amazon.com/appstream2/latest/developerguide/programmatically-create-image.html)を使用)。
+ スキャンやその他のオペレーションを常に最新の状態にある外部サーバーに委任するウイルス対策アプリケーションを使用します。

**注記**  
ウイルス対策ソフトウェアの自動更新を有効にしていない場合でも、ウイルス対策ソフトウェアがユーザーセッション中にハードドライブスキャンやその他の操作を実行し、フリートインスタンスのパフォーマンスに影響を与えることがあります。

2019 年 9 月 10 日以降に公開された WorkSpaces アプリケーション Windows Server 2025/2022/2019/2016 ベースイメージでは、Windows Defender はデフォルトで有効になっていません。2019 年 6 月 24 日に発行された WorkSpaces Applications Windows Server 2016 および Windows Server 2019 ベースイメージでは、Windows Defender はデフォルトで有効になっています。

**Windows Defender を手動で有効にするには**

ベースイメージで Windows Defender が有効になっていない場合は、手動で有効にすることができます。これには、以下のステップを実行します。

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. 左側のナビゲーションペインで、**[Images]** (イメージ)、**[Image Builder]** の順に選択します。

1. Windows Defender を有効にするイメージビルダーを選択し、そのイメージが [**実行中**] 状態であることを確認して、[**接続**] を選択します。

1. Image Builder に、ローカル **Administrator** アカウントまたはローカル管理者権限を持つドメインアカウントを使用してログインします。

1. レジストリエディタを開きます。

1. レジストリ内の [**HKLM\$1SOFTWARE\$1Policies\$1Microsoft\$1Windows Defender\$1DisableAntiSpyware**] に移動します。

1. このレジストリキーを編集するには、そのレジストリキーをダブルクリックするか、レジストリキーを右クリックして [**変更**] を選択します。

1. [**Edit DWORD (32-bit) Value (DWORD（32 ビット）値の編集)**] ダイアログボックスの [**値のデータ**] で [**1**] を [**0**] に変更します。

1. [**OK**] を選択してください。

1. レジストリエディタを閉じます。

1. Microsoft 管理コンソール (MMC) **サービス**スナップイン (`services.msc`) を開きます。

1. サービスのリストで、次のいずれかを行います。

   Microsoft Windows Server 2022/2025 を使用している場合は、次のいずれかを実行します。
   + **[Microsoft Defender ウイルス対策サービス]** を右クリックし、**[スタート]** を選択します。
   + **[Microsoft Defender ウイルス対策サービス]** をダブルクリックし、プロパティダイアログボックスで **[スタート]** を選択し、**[OK]** を選択します。

   Microsoft Windows Server 2019 または 2016 を使用している場合は、次のいずれかを実行します。
   + [**Windows Defender ウイルス対策サービス**] を右クリックし、[**スタート**] を選択します。
   + [**Windows Defender ウイルス対策サービス**] をダブルクリックし、プロパティダイアログボックスで [**スタート** ] を選択し、[**OK**] を選択します。

1. **サービス**スナップインを閉じます。

# Amazon WorkSpaces アプリケーションで新しいイメージをプログラムで作成する
<a name="create-image-programmatically"></a>

WorkSpaces Applications イメージをプログラムで作成するには、Image Builder に接続し、Image Assistant コマンドラインインターフェイス (CLI) オペレーションを使用します。詳細については、「[Image Assistant CLI オペレーションを使用して Amazon WorkSpaces アプリケーションイメージをプログラムで作成する](programmatically-create-image.md)」を参照してください。

# Amazon WorkSpaces アプリケーションのイメージでライセンス込みアプリケーションを管理する
<a name="license-included-applications"></a>

WorkSpaces アプリケーションを使用して、次の Microsoft ライセンス込みアプリケーションをストリーミングできます。これらのアプリケーションを Windows イメージにインストールし、このカスタムイメージを使用してフリートを作成して、アプリケーションをストリーミングできます。次のアプリケーションはすべて、32 ビットおよび 64 ビットアーキテクチャで使用できます。
+ Microsoft Office LTSC Professional Plus 2021/2024
+ Microsoft Visio LTSC Professional 2021/2024
+ Microsoft Project Professional 2021/2024
+ Microsoft Office LTSC Standard 2021/2024
+ Microsoft Visio LTSC Standard 2021/2024
+ Microsoft プロジェクトスタンダード 2021/2024
**重要**  
Microsoft Office、Visio、および Project は同じバージョンとする必要があります。例えば、2021 アプリケーションと 2024 アプリケーションを混在させることはできません。
Microsoft Office、Visio、および Project は同じアーキテクチャとする必要があります。例えば、32 ビットアプリケーションを 64 ビットアプリケーションと混在させることはできません。
Microsoft Office、Visio、Project 2021 Standard/Professional バージョンは、Microsoft Windows Server 2019/2022/2025 でサポートされています。Microsoft Office、Visio、Project 2024 Standard/Professional バージョンは、Microsoft Windows Server 2022 および 2025 でサポートされています。
この機能を有効にするには、2025 年 10 月 2 日以降にリリースされた WorkSpaces Applications エージェントを使用する WorkSpaces Applications Image Builder を使用する必要があります。詳細については、「[WorkSpaces アプリケーションエージェントバージョンを管理する](base-images-agent.md)」を参照してください。または、イメージは、2025 年 10 月 3 日以降にリリースされたマネージド WorkSpaces アプリケーションイメージ更新を使用する必要があります。詳細については、「[Amazon WorkSpaces アプリケーションイメージUp-to-Date状態に保つ](keep-image-updated.md)」を参照してください。
ポート 1688 のアウトバウンド TCP は、すべてのストリーミングインスタンスの管理ネットワークインターフェイスで開いている必要があります。
1 つ以上のライセンスされたアプリケーションを含むイメージを利用したフリートを介してストリーミングするすべてのユーザーには、使用量に関係なく、これらのアプリケーションに対して毎月課金されます。アプリケーション使用権限機能により、特定のユーザーのアクセスは制限されません。
Image Builder のライセンス込みアプリケーションは、管理目的でインストールされているため、アクティブ化されません。アクティブ化されるのは、ユーザーがフリートインスタンスをストリーミングするときです。

**Topics**
+ [イメージにインストールされているライセンス込みアプリケーションのリストを表示する](view-list-image.md)
+ [Image Builder でライセンス込みアプリケーションのリストを表示する](view-list-apps.md)
+ [ライセンス込みアプリケーションをインストールまたはアンインストールする](install-uninstall-apps.md)
+ [Image Builder でライセンス込みアプリケーションの更新を有効にする](updates-image-builder.md)
+ [Powershell を使用して Image Builder でライセンス込みアプリケーションの更新を有効にする](enable-updates-managed-powershell.md)
+ [マネージドイメージの更新を使用して Image Builder でライセンス込みアプリケーションの更新を有効にする](enable-updates-managed.md)

# イメージにインストールされているライセンス込みアプリケーションのリストを表示する
<a name="view-list-image"></a>

**イメージにインストールされているライセンス込みアプリケーションのリストを表示する**

イメージにインストールされているライセンス込みアプリケーションのリストを表示するには、以下のステップに従います。

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. 左のナビゲーションペインで **[イメージ]** を選択し、**[イメージレジストリ]** を選択します。

1. イメージを選択し、**[詳細の表示]** を選択します。

1. **[ライセンス込みアプリケーション]** で、インストール済みのすべてのアプリケーションのリストを確認します。

# Image Builder でライセンス込みアプリケーションのリストを表示する
<a name="view-list-apps"></a>

**Image Builder でライセンス込みアプリケーションのリストを表示する**

Image Builder でライセンス込みアプリケーションのリストを表示するには、以下のステップに従います。

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインで、**[イメージ]** を選択し、**[Image Builder]** タブを選択します。

1. Image Builder を選択し、**[詳細の表示]** を選択します。

1. **[ライセンス込みアプリケーション]** で、アプリケーションとそのステータスのリストを確認します。

# ライセンス込みアプリケーションをインストールまたはアンインストールする
<a name="install-uninstall-apps"></a>

**ライセンス込みアプリケーションをインストールまたはアンインストールする**

イメージに 1 つ以上のライセンス込みアプリケーションをインストールまたはアンインストールするには、以下のステップに従います。

1. 次のいずれかのオプションを完了します。
   + Image Builder を起動し、ライセンス込みアプリケーションを設定します。詳細については、「[Image Builder を起動し、ストリーミングアプリケーションをインストールして設定する](tutorial-image-builder-create.md)」を参照してください。
   + Image Builder でライセンス込みアプリケーションを管理します。詳細については、「[サードパーティーの SAML 2.0 アイデンティティプロバイダーを使用した属性ベースのアプリケーションの使用権限](application-entitlements-saml.md)」を参照してください。

1. 1 つ以上のライセンス込みアプリケーションで作成されたイメージがある場合、このイメージを使用してフリートを作成できます。このフリートに接続するユーザーは、これらのアプリケーションにアクセスできます。
**重要**  
1 つ以上のライセンスされたアプリケーションを含むイメージを利用したフリートを介してストリーミングするすべてのユーザーには、使用量に関係なく、これらのアプリケーションに対して毎月課金されます。アプリケーションの使用権限機能により、特定のユーザーのアクセスは制限されません。

ライセンス込みアプリケーションのインストールまたはアンインストール中にエラーが発生した場合は、Image Builder の詳細ページにエラーステータスが表示されます。このような問題をトラブルシューティングするために、Image Builder に接続し、詳細なログ記録を有効にすることをお勧めします。詳細については、「[Microsoft 365 Apps for Enterprise のログ記録を有効にする方法](https://learn.microsoft.com/en-us/troubleshoot/microsoft-365-apps/diagnostic-logs/how-to-enable-office-365-proplus-uls-logging)」を参照してください。ログの確認とトラブルシューティング後も問題が解決しない場合は、 AWS サポート にお問い合わせください。

# Image Builder でライセンス込みアプリケーションの更新を有効にする
<a name="updates-image-builder"></a>

**Image Builder でライセンス込みアプリケーションの更新を有効にする**

すべてのライセンス込みアプリケーションの更新は、デフォルトで無効になっています。これらのアプリケーションの 1 つ以上を含むイメージを使用して、Image Builder でこれらのアプリケーションの更新を有効にできます。セッションのセットアップ中のインストールを防止するため、フリートインスタンスの更新は無効のままになります。

Image Builder でライセンス込みアプリケーションの更新を有効にするには、3 つのオプションがあります。

アプリケーションメニューを使用して Image Builder でライセンス込みアプリケーションの更新を有効にするには、以下のステップに従います。

1. ライセンス込みアプリケーションを開きます。

1. **[ファイル]**、**[アカウント]**、**[更新オプション]**、**[更新を有効にする]** の順に選択します。

# Powershell を使用して Image Builder でライセンス込みアプリケーションの更新を有効にする
<a name="enable-updates-managed-powershell"></a>

Powershell を使用して Image Builder でライセンス込みアプリケーションの更新を有効にするには、以下のステップに従います。
+ 管理者として PowerShell で次のコマンドを実行します。

  `Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration" -Name UpdatesEnabled -Value True `

# マネージドイメージの更新を使用して Image Builder でライセンス込みアプリケーションの更新を有効にする
<a name="enable-updates-managed"></a>

マネージドイメージの更新を使用して Image Builder でライセンス込みアプリケーションの更新を有効にするには、以下のステップに従います。
+  マネージドイメージの更新を使用して、Microsoft ライセンス込みアプリケーションに関する更新を受け取ります。詳細については、以下を参照してください。

  [Managed WorkSpaces アプリケーションイメージの更新を使用してイメージを更新する](keep-image-updated-managed-image-updates.md).

# イメージのインポート
<a name="import-image"></a>

カスタマイズされた EC2 AMIs をインポートすることで、WorkSpaces アプリケーションイメージを作成できます。処理の流れ

1. EC2 [Image Builder などの任意の方法を使用して EC2 ](https://docs.aws.amazon.com/imagebuilder/)AMI をカスタマイズします。

1. カスタマイズされた AMI を WorkSpaces アプリケーションにインポートして WorkSpaces アプリケーションイメージを作成する

1. オプションで、Image Builder を使用してイメージをさらにカスタマイズする

AMI のインポートによって作成されたイメージは で`type = "custom"`、WorkSpaces アプリケーションが提供するイメージは です`type = "native"`。

でイメージに stream.\$1 インスタンスタイプを使用できます`type = "native"`。次のいずれかのインスタンスタイプを使用するには、AMI をインポートし、 でイメージを作成する必要があります`type = "custom"`。
+ GeneralPurpose.\$1
+ MemoryOptimized.\$1
+ ComputeOptimized.\$1
+ Accelerated。\$1

## イメージのインポートの前提条件
<a name="import-image-prerequisites"></a>

これらの前提条件はすべて、ワークフローの実行を成功させるために重要です。サポートされている AMI 設定およびその他の必須要件を以下に示します。

### 必要な AMI プロパティ
<a name="required-ami-properties"></a>

EBS  
+ 500GB 以下のサイズ
  + < 200 GB の AMI をインポートできますが、インポートされたイメージでは最低 200GB が使用されます。
+ GP2
  + gp2 または gp3 EBS ボリュームタイプの AMI をインポートできますが、インポートされたイメージは gp2 を使用します。
+ イメージあたり 1 ボリューム
+ `/dev/sda1` ルートデバイス名
+ イメージタイプ: マシン
+ アーキテクチャ: x86\$164
+ 仮想化タイプ: HVM
+ ブートモード: UEFI
+ TPM サポート: v2.0。これは必須です。TPM が有効な AMI を見つけるには、[https://docs.aws.amazon.com/ec2/latest/windows-ami-reference/ami-windows-tpm.html\$1ami-windows-tpm-find](https://docs.aws.amazon.com/ec2/latest/windows-ami-reference/ami-windows-tpm.html#ami-windows-tpm-find) を参照してください。
+ ENA サポート: true
+ プラットフォーム: Windows
+ プラットフォームの詳細: Windows

### オペレーティングシステムのプロパティ
<a name="operating-system-properties"></a>

Windows Server 2022/2025 **フルベース**  
+ Windows Server **Core** はサポートされていません
+ Windows と SQL Server はサポートされていません

[エージェント]     
+ EC2 起動 V2 バージョン >= 2.1.1
+ SSM エージェントが必要です

ドライバー  
+ EC2 ENA ドライバーバージョン >= 2.9.0
+ EC2 NVMe ドライバーバージョン >= 1.6.0

ライブラリのサポート  
+ .NET Framework 4.8 以降
  + Windows Server 2022/2025 にデフォルトでインストール
+ PowerShell 5.1 以降
  + Windows Server 2022/2025 にデフォルトでインストール
+ Windows の機能: リモートデスクトップサービスのライセンスとリモートデスクトップサービスのセッションホストをインストールしないでください
+ ポート: ポート 8000、8300、8443 はブロック解除および占有解除する必要があります
+ ブートモード: UEFI

Accelerated.g4dn、 Accelerated.g5、 Accelerated.G6、 Accelerated.G6e などのグラフィックスインスタンスでイメージを使用する場合は、AMI に適切な GRID ドライバーをインストールします。詳細については、[https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nvidia-GRID-driver.html](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nvidia-GRID-driver.html) を参照してください。ただし、ドライバーが正しく設定されていない場合、ストリーミングは機能します。グラフィックカードは使用できない場合があります。

**重要**  
AMI の「所有者アカウント ID」はAWSアカウント ID である必要があります。パブリック EC2 AMI をインポートすることはできません。  
イメージをインポートする前に、Windows 更新を実行し、Windows 自動更新を無効にします。  
暗号化された EC2 AMIs のインポートは現在サポートされていません

### IAM ロールの要件
<a name="iam-role-requirements"></a>

**重要**  
「イメージのインポートに使用する以下のアクセス許可を持つ IAM ロールを作成します。

```
{  
    "Version": "2012-10-17",		 	 	   
    "Statement": [  
        {  
            "Sid": "AllowModifyImageAttributeWithTagCondition",  
            "Effect": "Allow",  
            "Action": "ec2:ModifyImageAttribute",  
            "Resource": "*"  
        },  
        {  
            "Sid": "AllowDescribeImages",  
            "Effect": "Allow",  
            "Action": "ec2:DescribeImages",  
            "Resource": "*"  
        }  
    ]  
}
```

この IAM ロールに次の信頼関係を追加します。

```
{  
    "Version": "2012-10-17",		 	 	   
    "Statement": [  
        {  
            "Effect": "Allow",  
            "Principal": {  
                "Service": "appstream.amazonaws.com"  
            },  
            "Action": "sts:AssumeRole"  
        }  
    ]  
}
```

## イメージをインポートするには
<a name="import-image-procedure"></a>

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. 左側のナビゲーションペインで、**画像**を選択し、**画像レジストリ**を選択します。

1. **イメージのインポート** を選択します。

1. **AMI ID** - WorkSpaces アプリケーションにインポートする AMI の AMI ID を入力します。このフィールドを使用して AMI を検索することもできます。

1. **イメージ名** - インポートオペレーションのために作成されるイメージの一意の名前を入力します。

1. **表示名** *(オプション)* - イメージに表示する を入力します。

1. **説明** *(オプション)* – イメージの説明を入力します。

1. **IAM ロール** - イメージのインポート用に作成した IAM ロールを選択します。詳細については、「」を参照してください[IAM ロールの要件](#iam-role-requirements)。

1. **WorkSpaces Applications エージェントの管理** – 常に最新の WorkSpaces Applications エージェントバージョンを使用する場合、ストリーミングインスタンスは、新しいエージェントバージョンがリリースされたAWSときに から利用できる最新の機能、パフォーマンスの向上、およびセキュリティ更新プログラムで自動的に更新されます。

1. **ランタイム検証** *(オプション)*: このオプションを選択すると、サービスはインポートされるイメージを使用してインスタンスをプロビジョニングし、ストリーミングテストを実行します。
   + 
**注記**  
これらのストリーミングテストはバックグラウンドで実行されるため、WorkSpaces Applications クライアントを介してこのインスタンスに接続することはできません。
   + イメージが WorkSpaces アプリケーションに適しているという信頼性を高めるには、このオプションを使用することをお勧めします。
   + そのインスタンスの時間料金が請求されます。
   + ストリーミングテストに影響を与えない可能性のある小さな変更を行った後に AMI を再インポートする場合や、ランタイム検証が最後に合格した場合に、この AMI をインポートした場合、ランタイム検証の実行を回避できます。
   + **インスタンスタイプを選択** *(オプション)*: ストリーミングテストを実行する適切なインスタンスファミリー、タイプ、サイズを選択します。フリートの作成に使用する予定のインスタンスと同じインスタンスを使用することをお勧めします。

1. **アプリケーションカタログと起動パフォーマンスマニフェスト** *(オプション)*: エンドユーザー向けのアプリケーションカタログを作成し、アプリケーションの起動パフォーマンスを向上させるための詳細を提供します。
   + **アプリケーションカタログ**: アプリケーションカタログを作成するには、イメージをインストールしたアプリケーションの詳細を指定します。ストリーミングを計画するアプリケーションごとに、名前、表示名、起動する実行可能ファイルと表示するアイコンを指定できます。
   + **起動パフォーマンス**: アプリケーション最適化マニフェストにファイルを追加すると、アプリケーションが新しいフリートインスタンスで初めて起動するまでにかかる時間が短縮されます。最適化マニフェストは、アプリケーションごとの行区切りテキストファイルです。

   詳細については、「」を参照してください[アプリケーションの詳細](applications-details.md)。

1. **タグ** *(オプション)* - **タグの追加**を選択し、タグのキーと値を入力します。さらにタグを追加するには、この手順を繰り返します。詳細については、「[Amazon WorkSpaces アプリケーションリソースのタグ付け](tagging-basic.md)」を参照してください。

1. **イメージのインポート** – 入力したすべての情報を確認し、**イメージのインポート**を選択します。サービスは互換性チェックを実行して、AMI が WorkSpaces アプリケーションと互換性があることを確認します。
   + 静的チェックが失敗すると、すぐにエラーが表示されます。
   + 静的チェックに合格すると、インポートリクエストが送信され、選択したオプションによっては、 を使用して新しい WorkSpaces アプリケーションイメージを作成するのに 30～60 分かかる場合があります。 `type = "custom"`

# アプリケーションの詳細
<a name="applications-details"></a>

アプリケーションの詳細には、事前ウォーミングマニフェストとアプリケーションカタログ設定に関する情報が含まれています。

## Application PreWarm マニフェスト
<a name="application-prewarm-manifests"></a>

WorkSpaces アプリケーションイメージを作成するときに、ユーザーが利用できるようにアプリケーションを指定できます。アプリケーションの起動時間を短縮するには、PreWarm マニフェストを準備します。これは基本的に、ユーザーがアプリケーションを起動するときにアプリケーションが起動する必要があるファイルのカタログです。インスタンスのプロビジョニング中、これらのファイルはセッション接続の前に準備され、ユーザーセッションでのアプリケーションの起動時間を短縮します。

事前ウォーミングマニフェストは、WorkSpaces アプリケーション環境にインポートする前に AMI で事前に作成する必要があります。共通のプリウォームマニフェストファイルを 1 つ作成するか、アプリケーションごとに 1 つ作成するかを選択できます。これにより、後で AMI をインポートする方法が変更されます。

### 一般的な事前ウォームマニフェスト
<a name="common-prewarm-manifest"></a>

事前ウォーミングするアプリケーションごとに、アプリケーションを起動し、ユーザーが実行する初期インタラクションを実行します。次に、アプリケーションデータが保存されているディレクトリをターゲットにして、次のコマンドを使用します。

```
dir -path "C:\Path\To\Folder\To\Optimize" -Recurse -ErrorAction SilentlyContinue | %{$_.FullName} | Out-File "C:\ProgramData\Amazon\Photon\Prewarm\PrewarmManifest.txt" -encoding UTF8 -append
```

これにより、各アプリケーション用に最適化するファイルが共通`C:\\ProgramData\\Amazon\\Photon\\Prewarm\\PrewarmManifest.txt`ファイルに追加されます。アプリケーションの事前ウォーミングを実行するために必要な追加のアクションはありません。WorkSpaces Applications は、上記の場所にあるプリウォームファイルを探し、存在する場合はそれを使用します。

このプロセスはオプションであり、プリウォームマニフェストのサイズが増えると、フリートのプロビジョニング時間も長くなります。したがって、最適化とフリートプロビジョニングのバランスをとるように注意してください。

### アプリケーション固有のマニフェスト
<a name="application-specific-manifests"></a>

イメージのインポート中に、アプリケーションごとに事前ウォーミングアセットを簡単に追跡できるように、アプリケーションごとに個別のアプリケーションマニフェストファイルを指定できます。これを行うには、上記と同じ手順を実行しますが、共通`C:\\ProgramData\\Amazon\\Photon\\Prewarm\\PrewarmManifest.txt`ファイルを作成する代わりに、AMI 上のアプリケーションごとにファイルを作成します。

事前ウォーミングするアプリケーションごとに、アプリケーションを起動し、ユーザーが実行する初期インタラクションを実行します。次に、アプリケーションデータが保存されているディレクトリをターゲットにして、次のコマンドを使用します。

```
dir -path "C:\Path\To\Folder\To\Optimize" -Recurse -ErrorAction SilentlyContinue | %{$_.FullName} | Out-File "C:\Path\To\My\<ApplicationName>PreWarm.txt" -encoding UTF8 -append
```

これらのアプリケーションプリウォームファイルは、イメージのインポートプロセス中に使用します。繰り返しになりますが、これは完全にオプションです。このメソッド、Common Prewarm Manifest メソッド、または Prewarm マニフェストをまったく使用しないことを選択できます。

## Application Catalog の設定
<a name="application-catalog-configs"></a>

`AppCatalogConfig` これにより、AMI のインポート中に WorkSpaces アプリケーションイメージに登録するアプリケーションを指定できます。`AppCatalogConfig` は、次の構造のアプリケーション設定オブジェクトの JSON リストです。

```
[  
    {  
        "Name": "Rufus", //Required and must be unique among the list of applications  
        "DisplayName": "Rufus",  
        "AbsoluteAppPath": "Rufus", //Required  
        "AbsoluteIconPath": "Rufus",  
        "AbsoluteManifestPath": "Rufus",  
        "WorkingDirectory": "Rufus",  
        "LaunchParameters": "Rufus"  
    }  

    ...  

    // Up to 50 applications total  
 ]
```

アプリケーションあたりの必須フィールドは、 `Name`と のみです`AbsoluteAppPath`。各フィールドの詳細は次のとおりです。

名前 [**必須**]  
+ アプリケーションを識別するための特定の名前
+ 1～100 文字
+ 使用できる文字正規表現 `^[a-zA-Z0-9][a-zA-Z0-9_.-]{0,99}$`
+ 特定の AppCatalogConfig で一意である必要があります

DisplayName  
+ ユーザーに表示する特定のアプリケーションの表示名
+ 0～100 文字
+ 使用できる文字正規表現 `^[a-zA-Z0-9][a-zA-Z0-9_. -]{0,99}$`

AbsoluteAppPath [**必須**]  
+ アプリケーションを起動するための実行可能ファイルへのパス
  + これは、ユーザーがアプリケーションを選択したときに起動される実行可能ファイルです。
+ 1～32,767 文字
  + この文字長の上限は、Windows で拡張ファイルパスをサポートすることです。260 文字を超えるファイルパスを使用する場合は、Windows 拡張ファイルパスをサポートするように AMI とアプリケーションが正しく設定されていることを確認します。
+ などのエスケープされたファイルパス文字列を使用する
  + `"C:\\Windows\\System32\\notepad.exe"`

AbsoluteManifestPath  
+ を使用している場合のみ該当します。 [アプリケーション固有のマニフェスト](#application-specific-manifests)
+ このアプリケーションのマニフェストファイルを事前ウォーミングするパス
+ 0～32,767 文字
  + この文字長の上限は、Windows で拡張ファイルパスをサポートすることです。260 文字を超えるファイルパスを使用する場合は、Windows 拡張ファイルパスをサポートするように AMI とアプリケーションが正しく設定されていることを確認します。
+ などのエスケープされたファイルパス文字列を使用する
  + `"C:\\Path\\To\\PrewarmManifest.txt"`

AbsoluteIconPath  
+ アプリケーションに使用する AMI のアイコンファイルへのパス。
  + このアイコンは、このイメージにストリーミングするときにユーザーに表示されます。
  + 何も指定しない場合、アイコンは実行可能ファイル自体から派生します。
  + ユーザーにとって良好なクライアントエクスペリエンスを実現するために、バックグラウンドの透明性が適切に処理されたアイコンファイルを選択するように注意する
    + PNG イメージを使用する
+ 1～32,767 文字
  + この文字長の上限は、Windows で拡張ファイルパスをサポートすることです。260 文字を超えるファイルパスを使用する場合は、Windows 拡張ファイルパスをサポートするように AMI とアプリケーションが正しく設定されていることを確認します。
+ などのエスケープされたファイルパス文字列を使用する
  + `"C:\\Path\\To\\ApplicationIcon.png"`

WorkingDirectory  
+ でアプリケーションを起動する作業ディレクトリ
+ 0～32,767 文字
  + この文字長の上限は、Windows で拡張ファイルパスをサポートすることです。260 文字を超えるファイルパスを使用する場合は、Windows 拡張ファイルパスをサポートするように AMI とアプリケーションが正しく設定されていることを確認します。
+ などのエスケープされたファイルパス文字列を使用する
  + `"C:\\Path\\To\\Working\\Directory"`

LaunchParameters  
+ で指定された実行可能ファイルの起動パラメータとして使用する文字列 `AbsoluteAppPath`
+ 0～1024 文字
+ アプリケーションとして PowerShell 実行可能ファイルを使用してアプリケーションとして PowerShell スクリプトを使用する方法を示す次の例のように、必要な起動パラメータの完全なリストを含むエスケープされた文字列を使用します。 PowerShell 
  + AbsoluteAppPath
    + `"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe"`
  + LaunchParameters
    + `"-File \"C:\\Path\\To\\App\\Script.ps1\""`

### AppCatalogConfig のサンプル
<a name="sample-appcatalogconfig"></a>

これは、AppCatalogConfig for Notepad、Google Chrome、および Mozilla Firefox のベアボーンの例です。

```
[  
    {  
        "Name": "Notepad",  
        "DisplayName": "Notepad",  
        "AbsoluteAppPath": "C:\\Windows\\System32\\notepad.exe"
    },  
    {  
        "Name": "Chrome",  
        "DisplayName": "Chrome",  
        "AbsoluteAppPath": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe",
        "LaunchParameters": "https://www.amazon.com/"  
    },  
    {  
        "Name": "Firefox",  
        "DisplayName": "Firefox",  
        "AbsoluteAppPath": "C:\\Program Files\\Mozilla Firefox\\firefox.exe",
        "LaunchParameters": "https://aws.amazon.com/"  
    }  
 ]
```

# イメージのエクスポート
<a name="export-image"></a>

イメージをエクスポートして EC2 AMIs を作成できます。後で、[イメージのインポート](import-image.md)これらの AMIs に戻って WorkSpaces アプリケーションイメージを作成できます。これにより、独自の AMI カスタマイズツールを使用してイメージをカスタマイズできます。

**注記**  
エクスポート中に、以下のコンポーネントがイメージから削除されます。  
WorkSpaces Applications エージェント
Image Builder を使用して追加された Microsoft ライセンス込みアプリケーション
Microsoft Windows Server 2022 および 2025 イメージのみをエクスポートできます。

## IAM ロールの要件
<a name="export-image-iam-requirements"></a>

**重要**  
エクスポートのインポートに使用する以下のアクセス許可を持つ IAM ロールを作成します。

```
{  
    "Version": "2012-10-17",		 	 	   
    "Statement": [  
        {  
            "Sid": "AllowCopyImage",  
            "Effect": "Allow",  
            "Action": "ec2:CopyImage",  
            "Resource": "*"  
        },  
        {  
            "Sid": "AllowDescribeImages",  
            "Effect": "Allow",  
            "Action": "ec2:DescribeImages",  
            "Resource": "*"  
        },  
        {  
            "Sid": "AllowCreateTags",  
            "Effect": "Allow",  
            "Action": "ec2:CreateTags",  
            "Resource": "*"  
        }  
    ]  
}
```

この IAM ロールに次の信頼関係を追加します。

```
{  
    "Version": "2012-10-17",		 	 	   
    "Statement": [  
        {  
            "Effect": "Allow",  
            "Principal": {  
                "Service": "appstream.amazonaws.com"  
            },  
            "Action": "sts:AssumeRole"  
        }  
    ]  
}
```

## イメージをエクスポートするには
<a name="export-image-procedure"></a>

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージリストで、エクスポートするプライベートイメージを選択します。

1. **アクション**、**エクスポート** を選択します。

1. **イメージのエクスポート**ダイアログボックスで、一意の **AMI 名**と、オプションで **AMI の説明**を入力します。

1. **IAM ロール** - イメージのエクスポート用に作成した IAM ロールを選択します。

1. 必要に応じて、**エクスポートのタグのコピーチェックボックスをオンにして、イメージから AMI にタグ**をコピーします。

1. **イメージのエクスポート**を選択します。

# Image Assistant CLI オペレーションを使用して Amazon WorkSpaces アプリケーションイメージをプログラムで作成する
<a name="programmatically-create-image"></a>

Amazon WorkSpaces アプリケーションイメージを作成するには、Image Builder に接続し、Image Assistant グラフィカルユーザーインターフェイス (GUI) またはコマンドラインインターフェイス (CLI) オペレーションを使用します。Image Assistant CLI オペレーションは、Image Assistant GUI と同様の機能を提供します。これらのオペレーションでは、次の操作をプログラムで実行できます。
+ イメージに含まれているアプリケーションを管理する。
+ デフォルトのアプリケーション設定を保存、更新、リセットする。
+ WorkSpaces Applications 動的アプリケーションフレームワークを有効または無効にします。
+ タグを指定する。
+ イメージを作成する。

 これらのオペレーションを使用して、WorkSpaces アプリケーションイメージの作成を継続的な統合またはデプロイソフトウェア開発プロセスと統合できます。

Image Assistant CLI オペレーションを使用するには、任意のコマンドラインシェルをイメージビルダーで使用します。たとえば、Windows コマンドプロンプトや PowerShell を使用できます。

**注記**  
Image Builder は、2019 年 7 月 26 日以降にリリースされたバージョンの WorkSpaces アプリケーションエージェントを使用する必要があります。イメージビルダーがない場合は、作成する必要があります。詳細については、「[Image Builder を起動し、ストリーミングアプリケーションをインストールして設定する](tutorial-image-builder-create.md)」を参照してください。

**Topics**
+ [Image Assistant CLI 操作を使用したデフォルトのアプリケーション設定と Windows 設定の作成](create-default-app-windows-settings-image-assistant.md)
+ [Image Assistant CLI オペレーションによるアプリケーションの起動パフォーマンスの最適化](optimize-app-launch-performance-image-assistant-cli.md)
+ [Amazon WorkSpaces アプリケーションイメージをプログラムで作成するためのプロセスの概要](process-overview-creating-image-programmatically-image-assistant-cli.md)
+ [Amazon WorkSpaces アプリケーションイメージを作成および管理するための Image Assistant CLI オペレーション](cli-operations-managing-creating-image-image-assistant.md)

# Image Assistant CLI 操作を使用したデフォルトのアプリケーション設定と Windows 設定の作成
<a name="create-default-app-windows-settings-image-assistant"></a>

ユーザーがアプリケーションをすぐに使い始められるように、デフォルトのアプリケーションおよび Windows 設定を作成できます。これらの設定を作成すると、WorkSpaces Applications は Windows のデフォルトのユーザープロファイルを設定したプロファイルに置き換えます。次に、この Windows デフォルトユーザープロファイルを使用して、フリートインスタンスにユーザーの初期設定が作成されます。Image Assistant CLI オペレーション、アプリケーションインストーラ、またはオートメーションを使用してこれらの設定を作成する場合は、Windows デフォルトユーザープロファイルを直接変更する必要があります。

Windowsのデフォルトユーザープロファイルを別の Windows ユーザーのプロファイルで上書きするには、Image Assistant `update-default-profile` CLI オペレーションを使用することもできます。

デフォルトのアプリケーションと Windows の設定の詳細については、「」の*WorkSpaces アプリケーションユーザーのデフォルトのアプリケーションと Windows の設定の作成*」を参照してください[Amazon WorkSpaces アプリケーションのデフォルトのアプリケーションと Windows の設定とアプリケーション起動パフォーマンス](customizing-appstream-images.md)。

# Image Assistant CLI オペレーションによるアプリケーションの起動パフォーマンスの最適化
<a name="optimize-app-launch-performance-image-assistant-cli"></a>

WorkSpaces Applications を使用すると、ユーザーのストリーミングセッション用にアプリケーションの起動パフォーマンスを最適化できます。Image Assistant CLI オペレーションを使用してこれを行う場合、アプリケーションの起動に最適化するファイルを指定できます。アプリケーション最適化マニフェストにファイルを追加すると、新しいフリートインスタンスでアプリケーションを初めて起動するのにかかる時間が短縮されます。ただし、これにより、ユーザーがフリートインスタンスを利用できるようになるまでの時間が長くなります。最適化マニフェストは、アプリケーションごとの行区切りテキストファイルです。

**注記**  
Image Assistant CLI オペレーションと Image Assistant GUI の両方を使用してアプリケーション最適化マニフェストをオンボードすると、マニフェストが結合されます。

以下は、アプリケーション最適化マニフェストファイルの例です。

```
C:\Program Files (x86)\Notepad++\autoCompletion
C:\Program Files (x86)\Notepad++\localization
C:\Program Files (x86)\Notepad++\plugins
C:\Program Files (x86)\Notepad++\themes
C:\Program Files (x86)\Notepad++\updater
C:\Program Files (x86)\Notepad++\userDefineLangs
C:\Program Files (x86)\Notepad++\change.log
C:\Program Files (x86)\Notepad++\config.xml
C:\Program Files (x86)\Notepad++\contextMenu.xml
C:\Program Files (x86)\Notepad++\doLocalConf.xml
C:\Program Files (x86)\Notepad++\functionList.xml
C:\Program Files (x86)\Notepad++\langs.model.xml
C:\Program Files (x86)\Notepad++\license.txt
C:\Program Files (x86)\Notepad++\notepad++.exe
C:\Program Files (x86)\Notepad++\readme.txt
C:\Program Files (x86)\Notepad++\SciLexer.dll
C:\Program Files (x86)\Notepad++\shortcuts.xml
C:\Program Files (x86)\Notepad++\stylers.model.xml
```

詳細については、[Amazon WorkSpaces アプリケーションのデフォルトのアプリケーションと Windows の設定とアプリケーション起動パフォーマンス](customizing-appstream-images.md)で「*アプリケーションの起動パフォーマンスの最適化*」を参照してください。

# Amazon WorkSpaces アプリケーションイメージをプログラムで作成するためのプロセスの概要
<a name="process-overview-creating-image-programmatically-image-assistant-cli"></a>

アプリケーションのインストールオートメーションで Image Assistant CLI オペレーションを使用して、完全にプログラムされた WorkSpaces アプリケーションイメージ作成ワークフローを作成できます。アプリケーションのインストールの自動化が完了した後、イメージが作成される前に、Image Assistant CLI オペレーションを使用して以下を指定します。
+ ユーザーが起動できる実行可能ファイル
+ アプリケーション用の最適化マニフェスト
+ その他の WorkSpaces アプリケーションイメージメタデータ

次の概要では、WorkSpaces アプリケーションイメージをプログラムで作成するプロセスについて説明します。

1. アプリケーションインストールの自動化を使用して、イメージビルダーに必要なアプリケーションをインストールします。このインストールには、ユーザーが起動するアプリケーション、依存関係、およびバックグラウンドアプリケーションが含まれる場合があります。

1. 最適化するファイルとフォルダーを決定します。

1. 必要に応じて、Image Assistant `add-application` CLI オペレーションを使用して、WorkSpaces アプリケーションイメージのアプリケーションメタデータと最適化マニフェストを指定します。

1. WorkSpaces アプリケーションイメージに追加のアプリケーションを指定するには、必要に応じてアプリケーションごとにステップ 1～3 を繰り返します。

1. 該当する場合は、Image Assistant `update-default-profile` CLI オペレーションを使用して、デフォルトの Windows プロファイルを上書きし、ユーザーのデフォルトのアプリケーションと Windows 設定を作成します。

1. Image Assistant `create-image` CLI オペレーションを使用してイメージを作成します。

# Amazon WorkSpaces アプリケーションイメージを作成および管理するための Image Assistant CLI オペレーション
<a name="cli-operations-managing-creating-image-image-assistant"></a>

このセクションでは、WorkSpaces アプリケーションイメージの作成と管理に使用できる Image Assistant CLI オペレーションについて説明します。

Windows Image Builder では、C:\$1Program Files\$1Amazon\$1Photon\$1ConsoleImageBuilder\$1Image-Assistant.exe にコマンドラインインターフェイスが含まれる実行可能ファイルがあります。便宜上、この実行可能ファイルは Windows PATH 変数に含まれています。これにより、実行可能ファイルへの絶対パスを指定せずに Image Assistant CLI オペレーションを呼び出すことができます。これらのオペレーションを呼び出すには、**image-assistant.exe** コマンドを入力します。

Linux Image Builder では、/usr/local/appstream/image-assistant/AppStreamImageAssistant に Image Assistant ツールがあり、シンボリックリンクは /bin/appstreamImageAsistant にあります。

## `help` オペレーション
<a name="help-operation-image-assistant-cli"></a>

すべての Image Assistant CLI オペレーションのリストを取得します。リスト内の各オペレーションについて、説明と使用構文が提供されます。特定のオペレーションのヘルプを表示するには、オペレーションの名前を入力し、**--help** パラメータを指定します。次に例を示します。

```
add-application --help
```

**概要**

```
help
```

**出力**

利用可能なオペレーションのリストとその機能の説明を標準出力します。

## `add-application` オペレーション
<a name="add-application-operation-image-assistant-cli"></a>

WorkSpaces Applications ユーザーのアプリケーションリストにアプリケーションを追加します。このリストのアプリケーションは、アプリケーションカタログに含まれています。アプリケーションカタログは、ユーザーが WorkSpaces アプリケーションストリーミングセッションにサインインすると表示されます。

**注記**  
アプリケーションの設定を変更する必要がある場合は、そのアプリケーションを削除した上で、新たな設定のアプリケーションを追加します。

**概要**

```
add-application
--name <value>
--absolute-app-path <value>
[--display-name <value>]
[--absolute-icon-path <value>]
[--working-directory <value>]
[--launch-parameters <""-escaped value>]
[--absolute-manifest-path <value>]
```

**オプション**

**`--name` (文字列)**  
アプリケーションの一意の名前。最大長は 256 文字です。最大 50 個のアプリケーションを追加できます。空白文字を使用することはできません。

**`--absolute-app-path` (文字列)**  
アプリケーションの実行可能ファイル、バッチファイル、またはスクリプトへの絶対パス。有効なファイルのパスを指定する必要があります。

**`--display-name` (文字列)**  
アプリケーションカタログに表示されるアプリケーションの名前。表示名を指定しない場合、WorkSpaces Applications は実行可能ファイル名から派生した名前を作成します。名前は、ファイル拡張子なしで、スペースの代わりにアンダースコアを使用して作成されます。最大長は 256 文字です。

**`--absolute-icon-path` (文字列)**  
アプリケーションのアイコンへの絶対パスです。パスは、.jpg、.png、または .bmp のいずれかのタイプの有効なアイコンファイルを指している必要があります。最大サイズは、256 px x 256 px です。パスを指定しない場合、実行可能ファイルのデフォルトアイコンが使用可能であれば使用されます。実行可能ファイルでデフォルトのアイコンを使用できない場合は、デフォルトの WorkSpaces アプリケーションアイコンが使用されます。

**`--working-directory` (文字列)**  
アプリケーション起動時のアプリケーションの最初の作業ディレクトリ。

**`--absolute-manifest-path` (文字列)**  
改行で区切られた新しいテキストファイルへのパス。このファイルは、ユーザーがフリートインスタンスをストリーミングできるようにする前に最適化するファイルの絶対パスを指定します。有効なテキストファイルのパスを指定する必要があります。

**メッセージ出力**


| 終了コード | 標準出力に出力されるメッセージ | 説明 | 
| --- | --- | --- | 
| 0 |  \$1"status": 0, "message": "Success"\$1  |  アプリケーションが正常に追加されました。 | 
| 1 |  \$1"status": 1, "message": "Name is not unique"\$1  |  オペレーションを完了するには、管理者権限が必要です。 | 
| 1 |  \$1"status": 1, "message": "Unable to add more than 50 apps to the catalog."\$1  |  WorkSpaces アプリケーションカタログに追加できるアプリケーションの最大数は 50 であるため、アプリケーションを追加できませんでした。 | 
| 1 |  \$1"status": 1, "message": "Name is not unique"\$1  |  その名前のアプリケーションはWorkSpaces アプリケーションカタログに既に存在します。 | 
| 1 |  \$1"status": 1, "message": "File not found (absolute-app-path)"\$1  |  absolute-app-path で指定されたファイルが見つかりませんでした。 | 
| 1 |  \$1"status": 1, "message": "Unsupported file extension"\$1  |  Absolute-app-path パラメーターは、.exe および .bat のファイルタイプのみをサポートしています。 | 
| 1 |  \$1"status": 1, "message": "Directory not found (working-directory)" |  working-directory に指定されたディレクトリが見つかりませんでした。 | 
| 1 |  \$1"status": 1, "message": "Optimization-manifest not found: <filename>"\$1  |  optimization-manifest で指定されたファイルが見つかりませんでした。 | 
| 1 |  \$1"status": 1, "message": "File not found: <filename>"\$1  |  最適化マニフェスト内で指定されたファイルが見つかりませんでした。 | 
| 255 |  \$1"status": 255, "message": <error message>\$1  |  予期しないエラーが発生しました。リクエストを再試行してください。エラーが解決しない場合は、 AWS サポート にお問い合わせください。詳細については、「[AWS サポート サポートセンター](https://console.aws.amazon.com/support/home#/)」を参照してください。 | 

## `remove-application` オペレーション
<a name="remove-application-operation-image-assistant-cli"></a>

WorkSpaces Applications イメージのアプリケーションリストからアプリケーションを削除します。アプリケーションはアンインストールまたは変更されませんが、ユーザーは WorkSpaces アプリケーションカタログから起動できません。

**概要**

```
remove-application
--name <value>
```

**オプション**

**`--name` (文字列)**  
削除するアプリケーションの一意の識別子。

**メッセージ出力**


| 終了コード | 標準出力に出力されるメッセージ | 説明 | 
| --- | --- | --- | 
| 0 |  \$1"status": 0, "message": "Success"\$1  |  アプリケーションが正常に削除されました。 | 
| 1 |  \$1"status": 1, "message": "Name is not unique"\$1  |  オペレーションを完了するには、管理者権限が必要です。 | 
| 1 |  \$1"status": 0, "message": "Success"\$1  |  指定されたアプリケーションは、WorkSpaces アプリケーションカタログで見つかりませんでした。 | 
| 255 |  \$1"status": 255, "message": <error message>\$1  |  予期しないエラーが発生しました。リクエストを再試行してください。エラーが解決しない場合は、 AWS サポート にお問い合わせください。詳細については、「[AWS サポート サポートセンター](https://console.aws.amazon.com/support/home#/)」を参照してください。 | 

## `list-applications` オペレーション
<a name="list-applications-operation-image-assistant-cli"></a>

アプリケーションカタログで指定されているすべてのアプリケーションを一覧表示します。

**概要**

```
list-applications
```

**メッセージ出力**


| 終了コード | 標準出力に出力されるメッセージ | 説明 | 
| --- | --- | --- | 
| 0 |  \$1"status": 0, "message": "Success", "applications": [ \$1..app1.. \$1, \$1 ..app2.. \$1]\$1  |  WorkSpaces アプリケーションカタログ内のアプリケーションのリスト。 | 
| 255 |  \$1"status": 255, "message": <error message>\$1  |  予期しないエラーが発生しました。リクエストを再試行してください。エラーが解決しない場合は、 AWS サポート にお問い合わせください。詳細については、「[AWS サポート サポートセンター](https://console.aws.amazon.com/support/home#/)」を参照してください。 | 

## `update-default-profile` オペレーション
<a name="update-default-profile-image-assistant-cli"></a>

指定された Windows ユーザーのプロファイルをWindows のデフォルトのユーザープロファイルにコピーします。ストリームする新しいユーザーは、この指定されたプロファイルの設定を継承します。

**注記**  
Linux Image Assistant CLI ツールでは、この操作はサポートされていません。

**概要**

```
update-default-profile
[--profile <value>]
```

**オプション**

**`--profile` (文字列)**  
Windows プロファイルが Windowsのデフォルトのユーザープロファイルにコピーされるユーザーの名前。名前には次の形式を使用します。  
"<domain>\$1<username>"  
イメージビルダーが Microsoft Active Directory ドメインに結合されていない場合は、ドメインの代わりにピリオド「.」を入力します。ユーザーを指定しない場合、WorkSpaces アプリケーションテンプレートユーザーアカウントが使用されます。

**メッセージ出力**


| 終了コード | 標準出力に出力されるメッセージ | 説明 | 
| --- | --- | --- | 
| 0 |  \$1"status": 0, "message": "Success"\$1  |  ユーザー設定はデフォルトの Windows プロファイルに正常にコピーされました。 | 
| 1 |  \$1"status": 1, "message": "Name is not unique"\$1  |  オペレーションを完了するには、管理者権限が必要です。 | 
| 1 |  \$1"status": 1, "message": "Unable to copy file or folder: <path>. <reason>"\$1  |  ファイルまたはフォルダーが使用できないため、ユーザー設定をコピーできませんでした。 | 
| 1 |  \$1"status": 1, "message": "Cannot copy a domain user when not joined to a domain""\$1  |  Microsoft Active Directory ドメインユーザーは指定されましたが、イメージビルダーが Active Directory ドメインに結合されていません。 | 
| 255 |  \$1"status": 255, "message": <error message>\$1  |  予期しないエラーが発生しました。リクエストを再試行してください。エラーが解決しない場合は、 AWS サポート にお問い合わせください。詳細については、「[AWS サポート サポートセンター](https://console.aws.amazon.com/support/home#/)」を参照してください。 | 

## `reset-user-profile` オペレーション
<a name="reset-user-profile-image-assistant-cli"></a>

指定されたユーザーの Windows ユーザープロファイルを削除します。

**注記**  
Linux Image Assistant CLI ツールでは、この操作はサポートされていません。

**概要**

```
reset-user-profile
[--profile <value>]
```

**オプション**

**`--profile` (文字列)**  
Windows プロファイルが削除される Windows ユーザーの名前。名前には次の形式を使用します。  
"<domain>\$1<username>"  
イメージビルダーが Microsoft Active Directory ドメインに結合されていない場合は、ドメインの代わりにピリオド「.」を入力します。

**メッセージ出力**


| 終了コード | 標準出力に出力されるメッセージ | 説明 | 
| --- | --- | --- | 
| 0 |  \$1"status": 0, "message": "Success"\$1  |  指定されたユーザー設定の削除が完了しました。 | 
| 1 |  \$1"status": 1, "message": "Name is not unique"\$1  |  オペレーションを完了するには、管理者権限が必要です。 | 
| 1 |  \$1"status": 1, "message": "Unable to copy file or folder: <path>. <reason>"\$1  |  ファイルまたはフォルダーが使用できないため、ユーザー設定をリセットできませんでした。 | 
| 1 |  \$1"status": 1, "message": "Cannot copy a domain user when not joined to a domain""\$1  |  Microsoft Active Directory ドメインユーザーは指定されましたが、イメージビルダーが Active Directory ドメインに結合されていません。 | 
| 255 |  \$1"status": 255, "message": <error message>\$1  |  予期しないエラーが発生しました。リクエストを再試行してください。エラーが解決しない場合は、 AWS サポート にお問い合わせください。詳細については、「[AWS サポート サポートセンター](https://console.aws.amazon.com/support/home#/)」を参照してください。 | 

## `create-image` オペレーション
<a name="create-image-operation-image-assistant-cli"></a>

イメージ作成ワークフローを開始し、WorkSpaces アプリケーションフリートに使用できる WorkSpaces アプリケーションイメージを作成します。

**概要**

```
create-image
--name <value>
[--description <value>]
[--display-name <value>]
[--enable-dynamic-app-catalog] | [--no-enable-dynamic-app-catalog]
[--use-latest-agent-version] | [--no-use-latest-agent-version]            
[--tags <value>]
[--dry-run]
```

**オプション**

**`--name` (文字列)**  
WorkSpaces アプリケーションイメージの名前。名前は、Amazon Web Services アカウントと AWS リージョン内で一意である必要があります。最大長は 100 文字です。使用できる文字は次のとおりです。  
a～z、A～Z、0～9、アンダースコア (\$1)、ハイフン (-)、ピリオド (.)  
イメージ名は、「aws」、「appstream」、「amazon」のいずれのプレフィックスでも始めることはできません。これらのプレフィックスは AWS 用に予約されています。

**`--description` (文字列)**  
イメージの説明を表示します。最大長は 256 文字です。

**`--display-name` (文字列)**  
イメージの名前を表示します。最大長は 256 文字です。

**`--enable-dynamic-app-catalog` \$1 `--no-enable-dynamic-app-catalog`**  
WorkSpaces アプリケーション動的アプリケーションフレームワークのサポートを有効または無効にします。パラメータを指定しない場合、動的アプリケーションフレームワークのサポートは有効化されません。  
動的アプリケーションフレームワークは、動的アプリケーションプロバイダーを構築するために使用できる WorkSpaces アプリケーションストリーミングインスタンス内のオペレーションを提供します。動的アプリケーションプロバイダーは、提供されているオペレーションを使用して、ユーザーがリアルタイムでアクセスできるアプリケーションのカタログを変更できます。詳細については、「[WorkSpaces アプリケーション動的アプリケーションフレームワークを使用して動的アプリケーションプロバイダーを構築する](build-dynamic-app-provider.md)」を参照してください。

**`--use-latest-agent-version` \$1 `--no-use-latest-agent-version`**  
現在インストールされている WorkSpaces Applications エージェントのバージョンにイメージを固定するか、常に最新のエージェントバージョンを使用するかを指定します。どちらのパラメータも指定しない場合、イメージは現在インストールされている WorkSpaces Applications エージェントのバージョンに固定されます。詳細については、「[WorkSpaces アプリケーションエージェントバージョンを管理する](base-images-agent.md)」を参照してください。

**`--tags` (文字列)**  
イメージに関連付けるタグ。タグはキーと値のペアで構成されます。次の形式を使用します。  
--tags "mykey" "myval" "mykey2" "myval2"  
タグの詳細については、「[Amazon WorkSpaces アプリケーションリソースのタグ付け](tagging-basic.md)」を参照してください。

**`--dry-run` (文字列)**  
イメージを作成せずに検証を実行します。このコマンドを使用して、作成する前にイメージに問題があるかどうかを確認します。

**メッセージ出力**


| 終了コード | 標準出力に出力されるメッセージ | 説明 | 
| --- | --- | --- | 
| 0 |  \$1"status": 0, "message": "Success"\$1  |  イメージを作成するワークフローが正常に開始されました。 | 
| 1 |  \$1"status": 1, "message": "Name is not unique"\$1  |  オペレーションを完了するには、管理者権限が必要です。 | 
| 1 |  \$1"status": 1, "message": "An image with the given name already exists"\$1  |  指定された名前を使用しているイメージは、Amazon Web Services アカウントに既に存在しています。 | 
| 1 |  \$1"status": 1, "message": "Invalid value (tags)"\$1  |  指定されたタグは有効ではありません。 | 
| 255 |  \$1"status": 255, "message": <error message>\$1  |  予期しないエラーが発生しました。リクエストを再試行してください。エラーが解決しない場合は、 AWS サポート にお問い合わせください。詳細については、「[AWS サポート サポートセンター](https://console.aws.amazon.com/support/home#/)」を参照してください。 | 

# Linux ベースのイメージを作成する
<a name="create-linux-based-images"></a>

Linux ベースの Amazon WorkSpaces アプリケーションイメージを作成するには、Linux Image Builder に接続し、必要なアプリケーションをインストールし、デフォルトのアプリケーション設定と環境変数を作成し、コマンドラインインターフェイス (CLI) ツールまたは Image Assistant (GUI) ツールを使用してこれらのアプリケーションをアプリケーションカタログに追加します。GUI ツールを開くには、アプリケーションのリストで [**Image Assistant**] を見つけます。

**Topics**
+ [ユーザー用のデフォルトアプリケーション設定の作成](create-default-app-settings.md)
+ [Linux ユーザー用のデフォルト環境変数の作成](create-default-variables-linux.md)
+ [Linux アプリケーションの起動パフォーマンスの最適化](optimize-launch-performance.md)
+ [セッションスクリプトの作成](create-session-scripts.md)
+ [Linux 用の Image Assistant CLI ツールの使用](image-assistant-cli.md)
+ [ウェブカメラのサポートの有効化と無効化](webcam-support.md)
+ [ホームフォルダのヘビーファイル同期モードの有効化と無効化](heavy-file-sync.md)
+ [チュートリアル: Linux ベースのカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-create-linux-image.md)
+ [Linux イメージの日本語サポートを有効にする](enable-japanese-support-linux.md)

# ユーザー用のデフォルトアプリケーション設定の作成
<a name="create-default-app-settings"></a>

ユーザーに対してデフォルトのアプリケーション設定を作成するには、以下の手順に従います。

**Topics**
+ [ステップ 1: Image Builder に Linux アプリケーションをインストールする](#app-settings-image-install)
+ [ステップ 2: TemplateUser アカウントを作成する](#app-settings-template-user)
+ [ステップ 3: デフォルトのアプリケーション設定を作成する](#app-settings-image-create-default-app-settings)
+ [ステップ 4: デフォルトのアプリケーション設定を保存する](#app-settings-image-save-default-app-settings)
+ [ステップ 5: デフォルトのアプリケーション設定をテストする (オプション)](#app-settings-image-test-applications)
+ [ステップ 6: クリーンアップ](#app-settings-image-finish)

## ステップ 1: Image Builder に Linux アプリケーションをインストールする
<a name="app-settings-image-install"></a>

このステップでは、Linux Image Builder を接続して、Image Builder にアプリケーションをインストールします。

**Image Builder にアプリケーションをインストールする**

1. 以下のいずれかを実行して、Image Builder に接続します。
   + [WorkSpaces アプリケーションコンソールを使用する](managing-image-builders-connect-console.md) (ウェブ接続のみ)
   + [ストリーミング URL を作成する](managing-image-builders-connect-streaming-URL.md) (ウェブまたは WorkSpaces アプリケーションクライアント接続用)
**注記**  
Amazon Linux GNOME デスクトップには ImageBuilderAdmin ユーザーとしてログインされ、ルート管理者権限が付与されます。

1. 必要なアプリケーションをインストールします。例えば、パブリック yum リポジトリから Chromium ブラウザをインストールするには、まず Terminal アプリケーションを開いてから、以下のコマンドを実行します。

   **[ImageBuilderAdmin]\$1 sudo yum update && sudo yum install chromium.x86\$164** 

## ステップ 2: TemplateUser アカウントを作成する
<a name="app-settings-template-user"></a>

このステップでは、TemplateUser アカウントを作成します。これにより、ストリーミングユーザー用のデフォルトのアプリケーション設定が作成されます。

**TemplateUser アカウントを作成するには**

1. root 権限がない TemplateUser アカウントを作成します。例えば、[Terminal] (ターミナル) ウィンドウで以下のコマンドを実行して、Image Builder に TemplateUser を作成します。

   **[ImageBuilderAdmin]\$1 sudo useradd -m TemplateUser** 

   **[ImageBuilderAdmin]\$1 echo -e '<*password*>\$1n<*password*>\$1n' \$1 sudo passwd TemplateUser**

1. TemplateUser アカウントに切り替えます。

   **[ImageBuilderAdmin]\$1 su - TemplateUser** 

## ステップ 3: デフォルトのアプリケーション設定を作成する
<a name="app-settings-image-create-default-app-settings"></a>

このステップでは、WorkSpaces Applications ユーザーのデフォルトのアプリケーション設定を作成します。これにより、ユーザーは WorkSpaces アプリケーションストリーミングセッション中にアプリケーションをすばやく開始できます。これらの設定を自分で作成または設定する必要はありません。

**ユーザーに対してデフォルトのアプリケーション設定を作成するには**

1. デフォルト設定を作成するアプリケーションを起動します。例えば、Terminal ウィンドウで以下のコマンドを実行して、Chromium ブラウザを起動します。

    **[TemplateUser]\$1 chromium-browser**

1. アプリケーションの設定を行う 例えば、Chromium ブラウザのホームページを **https://aws.amazon.com** に設定します。

1. アプリケーションを閉じます。

1. ログアウト:

   **[TemplateUser]\$1 logout** 

## ステップ 4: デフォルトのアプリケーション設定を保存する
<a name="app-settings-image-save-default-app-settings"></a>

このステップでは、**/etc/skel/** ディレクトリに追加したデフォルトのアプリケーション設定をコピーし、ストリーミングユーザーが利用できるようにします。

**デフォルトのアプリケーション設定を保存するには**
+ ターミナルウィンドウで次のコマンドを実行して、ストリーミングユーザー用のデフォルトのアプリケーション設定をコピーします。

   **[ImageBuilderAdmin]\$1 sudo cp -r -f /home/TemplateUser/. /etc/skel**

## ステップ 5: デフォルトのアプリケーション設定をテストする (オプション)
<a name="app-settings-image-test-applications"></a>

このステップでは、追加したアプリケーションが正しく実行され、デフォルトのアプリケーション設定が期待どおりに動作することを検証します。

**Image Builder でアプリケーションとデフォルト設定をテストする**

1. root 権限がないテストユーザーを作成します。例えば、**[Terminal]** (ターミナル) ウィンドウで以下のコマンドを実行して、Image Builder に **test-user** を作成します。

   **[ImageBuilderAdmin]\$1 sudo useradd -m test-user**

   **[ImageBuilderAdmin]\$1 echo -e '*password*>\$1n<*password*>\$1n' \$1 sudo passwd test-user** 

1. テストユーザーに切り替えます。

   **[ImageBuilderAdmin]\$1 su - test-user**

1. アプリケーション (Chromium など) をテストユーザーとして起動します。

   **[test-user]\$1 /usr/bin/chromium-browser** 

1. テストユーザーに対してデフォルト設定が利用可能であることを検証します (Chromium ホームページが https://aws.amazon.com/ であるなど)。

1. ログアウト:

   **[test-user]\$1 logout**

## ステップ 6: クリーンアップ
<a name="app-settings-image-finish"></a>

最後のステップは、クリーンアップです。

**次をクリーンアップするには：**

1. TemplateUser を削除する:

   **[ImageBuilderAdmin]\$1 sudo killall -u TemplateUser**

   **[ImageBuilderAdmin]\$1 sudo userdel -r TemplateUser**

1. test-user を削除する (ステップ 5 をスキップした場合は不要):

   **[ImageBuilderAdmin]\$1 sudo killall -u test-user**

   **ImageBuilderAdmin]\$1 sudo userdel -r test-user**

# Linux ユーザー用のデフォルト環境変数の作成
<a name="create-default-variables-linux"></a>

Linux Image Builder インスタンスに環境変数を作成することができます。環境変数を作成すると、そのイメージから作成されたストリーミングインスタンスでそれらを使用できるようになります。

**注記**  
Linux フリートインスタンスで、Image Assistant (GUI) ツールを使用して設定された環境変数とデフォルトのシステム環境変数は、/etc/profile.d/appstream\$1system\$1vars.sh スクリプトを通じてエクスポートされます。これらの環境変数にアクセスするには、アプリケーションで /etc/profile.d/appstream\$1system\$1vars.sh スクリプトを明示的にソースにする必要があります。

**ユーザー用の環境変数を作成する**

1. `/etc/profile` フォルダが存在しない場合は、以下のコマンドを実行してフォルダを作成します。

   **[ImageBuilderAdmin]\$1 sudo mkdir -p /etc/profile.d** 

1. このフォルダ内に新しいシェルスクリプトファイル (my-environment.sh など) を作成するには、以下のコマンドを実行します。

   **[ImageBuilderAdmin]\$1 vim my-environment.sh**

1. スクリプトファイルの最初の行に、以下のコンテンツを追加します。

   **\$1\$1/bin/sh **

1. 後続の各行に、イメージの環境変数を設定するための **export** コマンドを追加します。以下の例は、`PATH` 変数に `$HOME/bin` を追加します。

   **export PATH=”\$1HOME/bin:\$1PATH”**

1. **Esc** キーを押して vim のコマンドモードに戻ってから、以下のコマンドを実行してスクリプトを保存し、vim を終了します。

   **:x**

1. 以下のコマンドを実行して、プログラムとしてのスクリプトの実行を許可します。

   **[ImageBuilderAdmin]\$1 chmod \$1x my-environment.sh**

# Linux アプリケーションの起動パフォーマンスの最適化
<a name="optimize-launch-performance"></a>

Image Assistant GUI ツールを使用している場合、アプリケーションの起動パフォーマンスが自動的に最適化されます。

Image Assistant CLI を使用している場合は、以下のステップに従って起動パフォーマンスを手動で最適化します。アプリケーション最適化マニフェストを作成してファイルを追加すると、新しいフリートインスタンスでの初回起動時におけるアプリケーションの起動がより迅速になります。ただし、これにより、ユーザーがフリートインスタンスを利用できるようになるまでの時間が長くなります。最適化マニフェストは、アプリケーションごとに 1 つある行区切りのテキストファイルです。

マニフェストファイル (<*your-app*>-manifest.txt など) は、手動で作成する、または以下の手順に従って作成することができます。

**マニフェストファイルを作成する**

1. 最適化しようとしているアプリケーションが起動済みで実行中であることを確認します。

1. Linux Image Builder のターミナルから、以下のコマンドを実行します。

   **ps -ef \$1 grep <*application-process-name*>**

1. 最後のステップの出力で最小の PID 番号を検索します。これは、アプリケーションのルート親プロセスの PID です。

1. アプリケーションが実行されている状態を維持して、ユーザーが必要とする初期コンポーネントを使用するようにしてください。そうすることで、これらのコンポーネントが最適化プロセスによってキャプチャされることを確実にします。

1. 以下のコンテンツを使用して、スクリプトファイル (`~/getfilestool.sh` など) を作成します。

   ```
   #!/bin/bash
   ## usage getfilestool.sh $pid
   lsof -p $(pstree -p $1 | grep -o '([0-9]\+)' | grep -o '[0-9]\+' | tr '\012' ,)|grep REG | sed -n '1!p' | awk '{print $9}'|awk 'NF'
   ```

1. 以下のコマンドを使用して、ファイルが実行可能であることを確認します。

   **[ImageBuilderAdmin]\$1 chmod u\$1x \$1/getfilestool.sh**

1. 以下のコマンドを実行して、ステップ 3 で検索したルート親プロセスからの実行中ファイルのすべてをキャプチャし、一時的なマニフェストファイルに保存します。

   **[ImageBuilderAdmin]\$1 sudo \$1/getfilestool.sh <*root-parent-pid*> > /tmp/<y*our-app*>-manifest.txt **

1. 最適化マニフェストの内容を確認します。最適化マニフェストは、アプリケーションごとの行区切りテキストファイルです。

最適化マニフェストは、Image Assistant コマンドラインインターフェイス (CLI) ツールを使用して、アプリケーションごとに指定することができます。詳細については、「[Linux 用の Image Assistant CLI ツールの使用](image-assistant-cli.md)」を参照してください。

# セッションスクリプトの作成
<a name="create-session-scripts"></a>

WorkSpaces アプリケーションは、Windows ベースと Linux ベースの両方のストリーミングインスタンスでインスタンスセッションスクリプトを提供します。セッションスクリプトの詳細については、[セッションスクリプトを使用して Amazon WorkSpaces アプリケーションのユーザーのストリーミングエクスペリエンスを管理する](use-session-scripts.md) を参照してください。

セッションスクリプトは WorkSpaces アプリケーションイメージ内で指定されます。Linux インスタンス上のセッションスクリプト設定ファイルを見つけるには、`/opt/appstream/SessionScripts/config.json` に移動します。以下のコードは、「`test-session-start`」という名前のセッション開始スクリプトと、「`test-session-stop`」という名前のセッション終了スクリプトを、それらのランタイムパラメータと共に指定するサンプル `config.json` ファイルです。`config.json` で参照されているスクリプトに実行許可があり、コマンドインタプリタが定義されていることを確認します (例 : \$1\$1/bin/bash)。

```
{
     "SessionStart": {
          "Executables": [
               {
                    "Context": "system",
                    "Filename": "/opt/appstream/SessionScripts/test-session-start",
                    "Arguments": "arg1",
                    "S3LogEnabled": true
               }
          ],
          "WaitingTime": 30
     },
     "SessionTermination": {
          "Executables": [
               { 
                    "Context": "system",
                    "Filename": "/opt/appstream/SessionScripts/test-session-stop", 
                    "Arguments": "arg2", 
                    "S3LogEnabled": true
               }
          ],
          "WaitingTime": 30
     }
}
```

# Linux 用の Image Assistant CLI ツールの使用
<a name="image-assistant-cli"></a>

Linux ベースの Image Builder では、Image Assistant CLI ツール **AppStreamImageAssistant** を使用して WorkSpaces Applications イメージを作成および管理できます。このツールは `/usr/local/appstream/image-assistant/AppStreamImageAssistant` にあり、シンボリックリンクは `/bin/AppStreamImageAssistant` にあります。Linux 用のこの CLI ツールは、Windows 用の Image Assistant CLI ツールと同じ操作を多数サポートしています。これらの操作の詳細については、[Amazon WorkSpaces アプリケーションイメージを作成および管理するための Image Assistant CLI オペレーション](cli-operations-managing-creating-image-image-assistant.md) を参照してください。

# ウェブカメラのサポートの有効化と無効化
<a name="webcam-support"></a>

WorkSpaces Applications は、ローカルウェブカメラビデオ入力を WorkSpaces Applications ストリーミングセッションにリダイレクトすることで、リアルタイムオーディオビデオ (AV) をサポートします。この機能を使用すると、ユーザーは WorkSpaces アプリケーションストリーミングセッション内のビデオ会議や音声会議にローカルウェブカメラを使用できます。リアルタイム AV とリアルタイムオーディオのサポートにより、ユーザーは WorkSpaces アプリケーションストリーミングセッションを離れることなく、使い慣れたビデオおよびオーディオ会議アプリケーションを使用してコラボレーションできます。

この機能を使用するには、2022 年 9 月 21 日以降にリリースされた Linux WorkSpaces Applications エージェントを使用する Linux WorkSpaces Applications イメージを使用する必要があります。

**注記**  
リアルタイム AV は、Rocky Linux または Red Hat Enterprise Linux を利用した stream.standard.small インスタンスではサポートされていません。クライアントツールバーにカメラアイコンとマイクアイコンが表示されません。

リアルタイム AV 機能は、Linux ストリーミングセッションではデフォルトで有効になっています。Linux Image Builder でユーザーのウェブカメラのアクセス許可を設定するには、`/etc/appstream/appstream.conf` を作成し、次のコンテンツを追加します。

**注記**  
ウェブカメラを有効にする場合は **1** を、無効にする場合は **0** を指定します。

```
[webcam]
permission = 1
```

# ホームフォルダのヘビーファイル同期モードの有効化と無効化
<a name="heavy-file-sync"></a>

組織の Amazon Simple Storage Service ホームフォルダオプションを有効にできます。WorkSpaces アプリケーションスタックの Amazon S3 ホームフォルダを有効にすると、スタックのユーザーはアプリケーションストリーミングセッション中に永続的ストレージフォルダにアクセスできます。ユーザーがホームフォルダにアクセスするために必要な設定はありません。ユーザーがホームフォルダに保存しているデータは、 の Amazon S3 バケットに自動的にバックアップされ AWS アカウント、以降のセッションでそれらのユーザーが利用できるようになります。詳細については、「[WorkSpaces アプリケーションユーザーのホームフォルダの有効化と管理](home-folders.md)」を参照してください。

ユーザーがストリーミングインスタンスからホームフォルダに大きなテキストファイルを保存するときに一貫性のないファイル同期が発生する可能性のある、スムーズなエクスペリエンスと既存の制限に対応するために、WorkSpaces アプリケーション管理者は、WorkSpaces アプリケーションの使用中に Amazon S3 への大きなファイルのアップロードが一般的なユーザーシナリオである場合に **heavy\$1sync** 設定オプションを有効にできます。このオプションをオンにすると、ホームフォルダのファイル同期プロセスにレイテンシーが追加される可能性がありますが、Amazon S3 へのすべての同期の完全性が保証されます。

この機能は、2024 年 9 月 12 日以降にリリースされたすべての Red Hat Enterprise Linux イメージ、および Linux WorkSpaces Applications エージェントを使用する Linux WorkSpaces Applications イメージで使用できます。

Red Hat Enterprise Linux および Amazon Linux ストリーミングセッションでは、重同期機能はデフォルトで無効になっています。Red Hat Enterprise Linux または Amazon Linux Image Builder でユーザーの重同期のアクセス許可を設定するには、`/etc/appstream/appstream.conf` を作成し、次のコンテンツを追加します。

**注記**  
**1** を指定して重同期を有効にするか、**0** を指定して重同期を無効にします。

```
[storage]
heavy_sync = 1
```

# チュートリアル: Linux ベースのカスタム WorkSpaces アプリケーションイメージを作成する
<a name="tutorial-create-linux-image"></a>

このチュートリアルでは、ユーザーにストリーミングできるアプリケーションを含むカスタム Linux ベースの Amazon WorkSpaces アプリケーションイメージを作成する方法について説明します。

**重要**  
Image Builder で「as2-streaming-user」という名前のユーザーを作成しないでください。これは Fleet の予約ユーザー名です。WorkSpaces アプリケーションワークフローの外部でこのユーザー名を作成すると、フリートでストリーミングの問題が発生する可能性があります。

**Topics**
+ [ステップ 1: Image Builder に Linux アプリケーションをインストールする](#tutorial-linux-image-install)
+ [ステップ 2: アプリケーション最適化マニフェストファイルを生成する](#tutorial-linux-image-manifest)
+ [ステップ 3: WorkSpaces アプリケーションアプリケーションカタログを作成する](#tutorial-linux-image-catalog)
+ [ステップ 4: デフォルトのアプリケーション設定と環境変数を作成する](#tutorial-linux-image-create-default-app-settings)
+ [ステップ 5: アプリケーションと設定をテストする](#tutorial-linux-image-test-applications)
+ [ステップ 6: イメージの作成を完了する](#tutorial-linux-image-finish-create-image)
+ [ステップ 7 (オプション): イメージにタグを付け、コピーする](#tutorial-linux-image-tag-copy)
+ [ステップ 8: クリーンアップ](#tutorial-linux-image-finish)

## ステップ 1: Image Builder に Linux アプリケーションをインストールする
<a name="tutorial-linux-image-install"></a>

このステップでは、Linux Image Builder を接続して、Image Builder にアプリケーションをインストールします。

**Image Builder にアプリケーションをインストールする**

1. 以下のいずれかを実行して、Image Builder に接続します。
   + [WorkSpaces アプリケーションコンソールを使用する](managing-image-builders-connect-console.md) (ウェブ接続のみ)
   + [ストリーミング URL を作成する](managing-image-builders-connect-streaming-URL.md) (ウェブまたは WorkSpaces アプリケーションクライアント接続用)
**注記**  
Amazon Linux GNOME デスクトップには ImageBuilderAdmin ユーザーとしてログインされ、ルート管理者権限が付与されます。

1. 必要なアプリケーションをインストールします。例えば、パブリック yum リポジトリから Chromium ブラウザをインストールするには、まず Terminal アプリケーションを開いてから、以下のコマンドを実行します。

   **[ImageBuilderAdmin]\$1 sudo yum update && sudo yum install chromium.x86\$164** 
**注記**  
アプリケーションのダウンロードおよびインストールは、信頼済みサイトからのみ行います。

## ステップ 2: アプリケーション最適化マニフェストファイルを生成する
<a name="tutorial-linux-image-manifest"></a>

このステップでは、手順 1 でインストールしたアプリケーションごとにマニフェストファイルを生成します。

**アプリケーションの起動パフォーマンスを最適化するためのマニフェストファイルを生成する**

1. 最適化しようとしているアプリケーション (Chromium など) が起動済みで実行中であることを確認します。

1. Terminal ウィンドウで以下のコマンドを実行して、アプリケーションに関連するプロセスをリストします。

   **[ImageBuilderAdmin]\$1 ps -ef \$1 grep chromium **

1. 上記のコマンドの出力から、ルート親 PID を見つけます。以下はサンプル出力で、ルート親 PID は 16712 です。  
**Example**  

   ```
   [ImageBuilderAdmin]$ ps -ef | grep chromium
   
   ImageBu+ 16712 4128 0 Aug26 ? 00:00:44 /usr/lib64/chromium- browser/chromium-browser --enable-plugins --enable-extensions -- enable-user- scripts --enable-printing --enable-gpu-rasterization -- enable-sync --auto-ssl- client-auth
   
   ImageBu+ 16726 16712 0 Aug26 ? 00:00:00 /usr/lib64/chromium- browser/chromium-browser --type=zygote --no-zygote-sandbox ImageBu+ 16727 16712 0 Aug26 ? 00:00:00 /usr/lib64/chromium- browser/chromium- browser --type=zygote
   
   ImageBu+ 16731 16727 0 Aug26 ? 00:00:00 /usr/lib64/chromium- browser/chromium-browser --type=zygot
   ```

1. アプリケーションが実行されている状態を維持して、ユーザーが必要とする初期コンポーネントを使用するようにしてください。そうすることで、これらのコンポーネントが最適化プロセスによってキャプチャされることを確実にします。

1. 以下のコンテンツを使用して、スクリプトファイル (`~/getfilestool.sh` など) を作成します。

   ```
   #!/bin/bash
   ## usage getfilestool.sh $pid
   lsof -p $(pstree -p $1 | grep -o '([0-9]\+)' | grep -o '[0-9]\+' | tr '\012' ,)|grep REG | sed -n '1!p' | awk '{print $9}'|awk 'NF'
   ```

1. 以下のコマンドを実行して、ファイルが実行可能であることを検証します。

   **[ImageBuilderAdmin]\$1 chmod u\$1x \$1/getfilestool.sh** 

1. 以下のコマンドを実行して、上記のステップ 3 で見つかったルート親プロセスからの実行中ファイルをすべてキャプチャし、一時的なマニフェストファイルに保存します。

   **[ImageBuilderAdmin]\$1 sudo \$1/getfilestool.sh 16712 > /tmp/chromium-manifest.txt **

1. 最適化マニフェストの内容を確認します。最適化マニフェストは、アプリケーションごとの行区切りテキストファイルです。

## ステップ 3: WorkSpaces アプリケーションアプリケーションカタログを作成する
<a name="tutorial-linux-image-catalog"></a>

このステップでは、Image Builder `AppStreamImageAssistant`の CLI ツールを使用して、イメージのアプリケーションを指定して WorkSpaces アプリケーションカタログを作成します。ストリーミングする予定のアプリケーションごとに、名前、表示名、起動する実行可能ファイル、および表示するアイコンを指定できます。

**WorkSpaces アプリケーションカタログを作成するには**

1. Image Builder デスクトップで、サイドパネルから、またはアプリケーショングリッドを開いて **[Terminal]** (ターミナル) を開きます。

1. **AppStreamImageAssistant --help** を実行して、使用可能なコマンドのリストを表示します。これらのコマンドを使用して、アプリケーションを追加し、イメージを作成します。

1. 次のコマンドを実行して、インストールされたアプリケーション (Chromium など) を WorkSpaces Applications ユーザーのアプリケーションリストに追加します。

   ```
   AppStreamImageAssistant add-application \
    --name Chromium \
    --absolute-app-path /usr/lib64/chromium-browser/chromium-browser \
    --display-name Chromium \
    --absolute-icon-path /usr/share/icons/hicolor/256x256/apps/chromium-browser.png \
    --absolute-manifest-path /tmp/chromium-manifest.txt
   ```

   または、以下のコマンドを実行します。

   ```
   AppStreamImageAssistant add-application \
    --name="Chromium" \
    --absolute-app-path="/usr/lib64/chromium-browser/chromium-browser" \
    --display-name="Chromium" \
    --absolute-icon-path="/usr/share/icons/hicolor/256x256/apps/chromium-browser.png" \
    --absolute-manifest-path="/tmp/chromium-manifest.txt"
   ```

1. 他のアプリケーションを追加するには、追加のアプリケーションごとにステップ 3 を繰り返します。

1. カタログに追加されたアプリケーションのリストを、アイコンパスや起動パラメータといったメタデータと共に表示するには、以下のコマンドを実行します。

   **AppStreamImageAssistant list-applications**

1. アプリケーションをカタログから削除するには、以下のコマンドを実行します。

   **AppStreamImageAssistant remove-application –-name *application\$1name***

## ステップ 4: デフォルトのアプリケーション設定と環境変数を作成する
<a name="tutorial-linux-image-create-default-app-settings"></a>

このステップでは、WorkSpaces Applications ユーザーのデフォルトのアプリケーション設定と環境変数を作成します。これにより、ユーザーは WorkSpaces アプリケーションストリーミングセッション中にアプリケーションをすばやく開始できます。これらの設定を自分で作成または設定する必要はありません。

**ユーザー用のデフォルトのアプリケーション変数と環境変数を作成する**

1. デフォルト設定を作成するアプリケーションを起動します。例えば、Terminal ウィンドウで以下のコマンドを実行して、Chromium ブラウザを起動します。

    **[ImageBuilderAdmin]\$1 chromium-browser**

1. アプリケーションの設定を行う 例えば、Chromium ブラウザのホームページを **https://aws.amazon.com** に設定します。

1. Chromium アプリケーションが閉じられていることを確認し、次のコマンドを実行して Chromium の設定を **/etc/skel** にコピーします。

   **[ImageBuilderAdmin]\$1 sudo mkdir /etc/skel/.config**

   **[ImageBuilderAdmin]\$1 sudo cp -R \$1/.config/chromium /etc/skel/.config** 

1. 環境変数を設定して、スクリプトファイルに追加します。例えば、以下のコマンドを実行します。

   **[ImageBuilderAdmin]\$1 echo "export *FOO*=*BAR*" \$1 sudo tee -a /etc/profile.d/myenvvars.sh** 

   **[ImageBuilderAdmin]\$1 sudo chmod \$1x /etc/profile.d/myenvvars.sh** 

## ステップ 5: アプリケーションと設定をテストする
<a name="tutorial-linux-image-test-applications"></a>

このステップでは、追加したアプリケーションが正しく実行され、デフォルトのアプリケーション設定と環境変数が期待どおりに動作することを検証します。

**Image Builder でアプリケーションとデフォルト設定をテストする**

1. root 権限がないテストユーザーを作成します。例えば、**[Terminal]** (ターミナル) ウィンドウで以下のコマンドを実行して、Image Builder に **test-user** を作成します。

   **[ImageBuilderAdmin]\$1 sudo useradd -m test-user**

   **[ImageBuilderAdmin]\$1 echo -e 'Pa55w0rdas2\$1\$1\$1\$1nPa55w0rdas2\$1\$1\$1\$1n' \$1 sudo passwd test-user** 

1. テストユーザーに切り替えます。

   **[ImageBuilderAdmin]\$1 su - test-user**

1. アプリケーション (Chromium など) をテストユーザーとして起動します。

   **[test-user]\$1 /usr/bin/chromium-browser** 

1. テストユーザーに対してデフォルト設定が利用可能であることを検証します (Chromium ホームページが https://aws.amazon.com/ であるなど)。

1. テストユーザーに対して環境変数が利用可能であることを検証します。例えば、以下のコマンドを使用します。

   **[test-user]\$1 echo \$1*FOO***

   このコマンドは、Terminal に出力 ***BAR*** を表示します。

1. この Image Builder からイメージを作成する前に、以下のコマンドを実行してテストユーザーを削除します。

   **\$1 logout test user**

   **[test-user]\$1 logout**

   **\$1 kill test user's running processes**

   **[ImageBuilderAdmin]\$1 sudo killall -u test-user**

   **\$1 delete user**

   **[ImageBuilderAdmin]\$1 sudo userdel -r test-user**

## ステップ 6: イメージの作成を完了する
<a name="tutorial-linux-image-finish-create-image"></a>

このステップでは、イメージの名前を選択してイメージの作成を完了します。

**イメージを作成する**

1. **[Terminal]** (ターミナル) ウィンドウで **AppStreamImageAssistant create-image** を実行して、Image Builder からイメージを作成します。このイメージには、インストール済みかつ登録済みのアプリケーションに加えて、設定したセッションスクリプトとデフォルトのアプリケーション設定が含まれています。

   利用可能なオプションのリストを表示するには、**AppStreamImageAssistant create-image --help** を実行します。詳細については、[Image Assistant CLI オペレーションを使用して Amazon WorkSpaces アプリケーションイメージをプログラムで作成する](programmatically-create-image.md) で **create-image** 操作を参照してください。

1. 数秒後にリモートセッションが切断されます。[**Lost Connectivity**] メッセージが表示されたら、ブラウザタブを閉じます。イメージが作成されると、Image Builder のステータスが [**Snapshotting**] と表示されます。このプロセスが終了するまで Image Builder に接続することはできません。

1. コンソールに戻り、[**Images**]、[**Image Registry**] の順に移動します。新しいイメージがリストに表示されていることを確認します。

   イメージの作成中、イメージのステータスは、コンソールのイメージレジストリに [**Pending (保留中)**] と表示されます。**[Pending]** (保留中) ステータスのイメージに接続することはできません。status。

1. ステータスを更新するには、**[Refresh]** (更新) アイコンをクリックします。イメージが作成されたら、イメージのステータスは [**Available**] に変わり、Image Builder が自動的に停止されます。

   イメージの作成を続行するには、Image Builder を開始してコンソールから接続するか、新しい Image Builder を作成することができます。

## ステップ 7 (オプション): イメージにタグを付け、コピーする
<a name="tutorial-linux-image-tag-copy"></a>

イメージの作成中または作成後に 1 つ以上のタグをイメージに追加できます。イメージは、同じリージョン内でコピーする、または同じ Amazon Web Services アカウント内の新しいリージョンにコピーすることもできます。ただし、ソースイメージをコピーすると、送信先イメージは同一でも区別されます。 AWS はユーザー定義タグをコピーしません。また、コピーできるのは独自に作成したカスタムイメージのみであり、 AWSが提供するベースイメージはコピーできません。

**注記**  
同時に 2 つのイメージをコピー先にコピーできます。イメージのコピー先がイメージの制限に達している場合は、エラーが発生します。この場合にイメージをコピーするには、最初にコピー先からイメージを削除する必要があります。コピー先がイメージのクォータ（制限とも呼ばれます）を下回ったら、ソースリージョンからイメージのコピーを開始します。詳細については、「[Amazon WorkSpaces Applications Service Quotas](limits.md)」を参照してください。

**既存のイメージにタグを追加するには**

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージのリストで、タグを追加するイメージを選択します。

1. **[Tags]** (タグ)、**[Add/Edit Tags]** (タグの追加/編集) の順に選択してから、[**Add Tag**] (タグを追加する) をクリックします。タグのキーと値を指定してから、**[Save]** (保存) をクリックします。

詳細については、「[Amazon WorkSpaces アプリケーションリソースのタグ付け](tagging-basic.md)」を参照してください。

**イメージをコピーするには**

地理的に異なるリージョン間でイメージをコピーすると、同じイメージに基づいて複数のリージョンからアプリケーションをストリーミングできます。ユーザーの近くでアプリケーションをストリーミングすることで、WorkSpaces アプリケーションを使用してユーザーのストリーミングアプリケーションエクスペリエンスを向上させることができます。

1. ナビゲーションペインで、[**イメージ**]、[**イメージレジストリ**] の順に選択します。

1. イメージのリストで、コピーするイメージを選択します。

1. **[アクション]**、**[コピー]** の順に選択します。

1. [**Copy Image (イメージのコピー)**] ダイアログボックスで、以下の情報を指定し、[**Copy Image (イメージのコピー)**] を選択します。
   + [**送信先リージョン**] で、新しいイメージのコピー先となるリージョンを選択します。
   + [**名前**] に、イメージが送信先にコピーされるときの名前を指定します。
   + [**説明**] (オプション) に、イメージが送信先にコピーされるときの説明を指定します。

1. コピー操作の進行状況を確認するには、コンソールに戻り、[**イメージ**]、[**イメージレジストリ**] に移動します。ナビゲーションバーを使用して、コピー先のリージョンに切り替え (該当する場合)、新しいイメージがイメージのリストに表示されることを確認します。

   新しいイメージは、コンソールのイメージレジストリで、最初のステータスが**コピー中**として表示されます。イメージが正常に作成されると、イメージのステータスが [**Available**] に変わります。つまり、イメージを使用してスタックを起動し、アプリケーションをストリーミングすることができます。

## ステップ 8: クリーンアップ
<a name="tutorial-linux-image-finish"></a>

最後に、実行中の Image Builder を停止してリソースを解放し、アカウントに意図しない料金が発生しないようにすることができます。使用していない、実行中の Image Builder を停止することをお勧めします。詳細については、[WorkSpaces アプリケーションの料金](https://aws.amazon.com/appstream2/pricing/)」を参照してください。

**実行中の Image Builder を停止するには**

1. ナビゲーションペインで、[**Images**]、[**Image Builders**] の順に選択し、実行中の Image Builder インスタンスを選択します。

1. [**Actions**]、[**Stop**] の順に選択します。

# Linux イメージの日本語サポートを有効にする
<a name="enable-japanese-support-linux"></a>

このチュートリアルでは、Linux イメージの日本語サポートを有効にする方法について説明します。これにより、イメージ上のアプリケーションは日本語の文字を表示でき、ストリーミングユーザーはイメージからのストリーミングセッションで日本語入力方法を使用できるようになります。

**Topics**
+ [ステップ 1: 日本語フォントと入力方法をインストールする](#tutorial-japanese-font)
+ [ステップ 2: システムタイムゾーンを設定する](#tutorial-japanese-zone)
+ [ステップ 3: システムロケールと表示言語を設定する](#tutorial-japanese-locale)
+ [ステップ 4: 入力方法を設定する](#tutorial-japanese-input)
+ [ステップ 5: キーボードレイアウトを設定する](#tutorial-japense-keyboard)
+ [ステップ 6: Image Builder で検証を行う](#tutorial-japense-verify)
+ [ステップ 7: イメージを作成する](#tutorial-japanese-create)

## ステップ 1: 日本語フォントと入力方法をインストールする
<a name="tutorial-japanese-font"></a>

このステップでは、Linux Image Builder に接続し、任意のフォントパッケージと入力方法パッケージをインストールします。

**日本語フォントと入力方法をインストールするには**

1. 以下のいずれかを実行して、Image Builder に接続します。
   + [WorkSpaces アプリケーションコンソールを使用する](managing-image-builders-connect-console.md) (ウェブ接続のみ)
   + [ストリーミング URL を作成する](managing-image-builders-connect-streaming-URL.md) (ウェブまたは WorkSpaces アプリケーションクライアント接続用)
**注記**  
Amazon Linux GNOME デスクトップには ImageBuilderAdmin ユーザーとしてログインされ、ルート管理者権限が付与されます。

1. 必要なフォントと入力方法をインストールします。これを行うには、ターミナルアプリケーションを開き、次のコマンドを実行します。

   **sudo yum install vlgothic-p-fonts.noarch**

   **sudo yum install ibus-kkc.x86\$164**

1. 上記のコマンドに加えて、Rocky Linux および Red Hat Enterprise Linux では、次のコマンドを実行します。

   **sudo yum install glibc-langpack-ja**

## ステップ 2: システムタイムゾーンを設定する
<a name="tutorial-japanese-zone"></a>

システムタイムゾーンを設定するには、次のコマンドを実行します。

**sudo timedatectl set-timezone "Asia/Tokyo"**

## ステップ 3: システムロケールと表示言語を設定する
<a name="tutorial-japanese-locale"></a>

システムロケールと表示言語を設定するには、次のコマンドを実行します。

**システムロケールと表示言語を設定するには**

1. **sudo vim /etc/cloud/cloud.cfg** コマンドを実行して `cloud-init config` ファイルを更新し、[**ロケール**] を [**locale: ja\$1jp.utf8**] に変更し、ファイルを保存して閉じます。

1. **sudo localectl set-locale LANG=ja\$1JP.utf8** を実行してシステム設定を更新します。

1. **sudo gsettings set org.gnome.system.locale region "ja\$1JP.utf8"** を実行して Gnome シェル設定を更新します。

## ステップ 4: 入力方法を設定する
<a name="tutorial-japanese-input"></a>

イメージに追加するアプリケーションの入力方法を設定します。アプリケーションのインストール方法、マニフェストファイルの生成方法、およびデフォルト設定の作成方法の詳細については、「[チュートリアル: Linux ベースのカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-create-linux-image.md)」を参照してください。このステップでは、`/usr/local/firefox/firefox` にある Firefox アプリケーションが既にインストールされていることを前提としています。

**入力方法を設定するには**

1. **sudo vim /usr/local/bin/update-input-method.sh** コマンドを実行してスクリプトを作成します。スクリプトに次のコンテンツを追加します。

   ```
   #!/bin/bash
   
   function start_process()
   {
       command=$1
       process_name=$2
   
       process_count=$(pgrep $process_name -c)
       echo "$(date) current $process_name count: $process_count"
       while [ $process_count -lt 1 ]
       do
           echo "$(date) starting $process_name"
           eval $command
           sleep 1
           process_count=$(pgrep $process_name -c)
       done
       echo "$(date) $process_name started"
   }
   
   start_process "ibus-daemon --xim &" "ibus-daemon"
   start_process "/usr/libexec/ibus-engine-kkc --ibus &" "ibus-engine-kkc"
   
   gsettings set org.gnome.desktop.input-sources sources "[('ibus','kkc'), ('xkb', 'us')]"
   gsettings set org.gnome.desktop.wm.keybindings switch-input-source "['<Control>space']"
   gsettings set org.gnome.desktop.wm.keybindings switch-input-source-backward "['<Shift><Control>space']"
   
   echo "$(date) updated input source and switch shortcut"
   ```

   上記のスクリプトでは、最初の入力ソース ('ibus', 'kkc') がデフォルトの入力方法です。デフォルトの入力方法を変更するには、入力ソースの順序を変更します。また、入力方法を切り替えるためのショートカットキーの組み合わせとして、Control \$1 Space と Shift \$1 Control \$1 Space が指定されています。ユーザーがストリーミングセッション中に入力方法を切り替えるために使用できる、独自のキーの組み合わせを指定できます。

1. イメージに追加するアプリケーション (Firefox) を起動するためのスクリプトを作成します。これを行うには、コマンド を実行し**sudo vim /usr/local/bin/firefox-jp.sh**、スクリプトに次のコンテンツを追加します。

   ```
   #!/bin/bash
   
   # Gather required environment variables from the GNOME shell session
   while IFS= read -r -d $'\0' env_var; do
       case "$env_var" in
           DBUS_SESSION_BUS_ADDRESS=*|\
           GTK_IM_MODULE=*|\
           QT_IM_MODULE=*|\
           XMODIFIERS=*|\
           XAUTHORITY=*)
               echo "$env_var"
               export "$env_var"
               ;;
       esac
   done < "/proc/$(pgrep -u as2-streaming-user gnome-shell | head -n1)/environ"
   
   /usr/local/bin/update-input-method.sh > /var/tmp/update-input-method.log 2>&1 &
   
   /usr/local/firefox/firefox &
   ```

1. 次のコマンドを実行して、両方のスクリプトに実行許可を追加します。

   **sudo chmod \$1x /usr/local/bin/update-input-method.sh**

   **sudo chmod \$1x /usr/local/bin/firefox-jp.sh**

1. アプリケーションの最適化マニフェストファイルを既に作成している場合は、次のコマンドを実行して、アプリケーション起動スクリプトをアプリケーションカタログに追加します。

   ```
   sudo AppStreamImageAssistant add-application \
   --name firefox \
   --absolute-app-path /usr/local/bin/firefox-jp.sh \
   --display-name firefox \
   --absolute-icon-path /usr/local/firefox/browser/chrome/icons/default/default128.png \
   --absolute-manifest-path /tmp/firefox-manifest.txt
   ```

または、update-input-method.sh スクリプトをイメージのアプリケーションカタログに別のアプリケーションとして追加して、入力方法を設定することもできます。ストリーミングセッション中、ユーザーはこのアプリケーションを起動して日本語入力を有効にし、同じセッション内で指定したショートカットキーを使用して入力方法を切り替えることができます。

## ステップ 5: キーボードレイアウトを設定する
<a name="tutorial-japense-keyboard"></a>

ストリーミングセッション中にユーザーが使用するキーボードに合わせてキーボードレイアウトを設定します。**localectl list-keymaps** コマンドを使用して、使用可能なすべてのキーマップを一覧表示し、**sudo localectl set-keymap jp106** コマンドを使用して、106 キーなどの日本語キーボードにキーマップを設定できます。

## ステップ 6: Image Builder で検証を行う
<a name="tutorial-japense-verify"></a>

Image Builder で検証を行うには、最初に **sudo shutdown -r now** コマンドを実行して Image Builder を再起動します。再起動後、Image Builder に再度接続し、タイムゾーン、ロケール、言語、入力方法などのすべてが想定どおりに機能することを確認します。

## ステップ 7: イメージを作成する
<a name="tutorial-japanese-create"></a>

Image Builder にイメージを作成します。詳細については、「[チュートリアル: Linux ベースのカスタム WorkSpaces アプリケーションイメージを作成する](tutorial-create-linux-image.md)」を参照してください。必ず、先ほど指定したリージョン設定を含む、デフォルトのアプリケーション設定を作成します。詳細については、[Linux ベースのイメージを作成する](create-linux-based-images.md)の「ユーザー用のデフォルトアプリケーション設定の作成」を参照してください。

このイメージから作成されたすべての Linux フリートインスタンスは、イメージに対して設定したデフォルトのタイムゾーン、ロケール、言語、および入力方法の設定と同じになります。

# セッションスクリプトを使用して Amazon WorkSpaces アプリケーションのユーザーのストリーミングエクスペリエンスを管理する
<a name="use-session-scripts"></a>

WorkSpaces アプリケーションは、インスタンスセッションスクリプトを提供します。ユーザーのストリーミングセッションで特定のイベントが発生したときに、これらのスクリプトを使用して独自のカスタムスクリプトを実行できます。たとえば、カスタムスクリプトを使用して、ユーザーのストリーミングセッションを開始する前に WorkSpaces アプリケーション環境を準備できます。ユーザーがストリーミングセッションを完了した後に、カスタムスクリプトを使用してストリーミングインスタンスをクリーンアップすることもできます。

セッションスクリプトは WorkSpaces アプリケーションイメージ内で指定されます。これらのスクリプトはユーザーコンテキストまたはシステムコンテキスト内で実行されます。セッションスクリプトが情報、エラー、またはデバッグメッセージの書き込みに標準出力を使用する場合は、オプションで、それらを Amazon Web Services アカウント内の Amazon S3 バケットに保存することができます。

**Topics**
+ [ストリーミングセッションの開始前にスクリプトを実行する](run-scripts-before-streaming-sessions-begin.md)
+ [ストリーミングセッションの終了後にスクリプトを実行する](run-scripts-after-streaming-sessions-end.md)
+ [セッションスクリプトを作成および指定する](create-specify-session-scripts.md)
+ [セッションスクリプト設定ファイル](session-script-configuration-file.md)
+ [Windows PowerShell ファイルの使用](using-powershell-files-with-session-scripts.md)
+ [セッションスクリプト出力のログ記録](logging-session-output.md)
+ [セッションスクリプトでストレージコネクタを使用する](use-storage-connectors-with-session-scripts.md)
+ [セッションスクリプトログに対して Amazon S3 バケットストレージを有効にする](enable-S3-bucket-storage-session-script-logs.md)
+ [マルチセッションフリートでセッションスクリプトを使用する](session-scripts-multi-session-fleets.md)

# ストリーミングセッションの開始前にスクリプトを実行する
<a name="run-scripts-before-streaming-sessions-begin"></a>

ユーザーのアプリケーションが起動されてストリーミングセッションが開始されるまでに最大 60 秒間実行されるようにスクリプトを設定できます。これにより、ユーザーがアプリケーションのストリーミングを開始する前に WorkSpaces アプリケーション環境をカスタマイズできます。セッションスクリプトが実行されると、読み込みスピナーがユーザーに表示されます。スクリプトが正常に完了するか、最大待機時間が経過すると、ユーザーのストリーミングセッションが開始されます。スクリプトが正常に完了しなかった場合は、エラーメッセージがユーザーに表示されます。ただし、ユーザーはストリーミングセッションの使用を禁止されません。

Windows インスタンスでファイル名を指定するときは、ダブルバックスラッシュを使用する必要があります。例えば、次のようになります。

C:\$1\$1Scripts\$1\$1Myscript.bat

二重のバックスラッシュを使用しないと、.json ファイル形式が正しくないことを示すエラーが表示されます。

**注記**  
スクリプトは正常に完了したら、値 0 を返します。スクリプトが 0 以外の値を返した場合、WorkSpaces Applications はユーザーにエラーメッセージを表示します。

ストリーミングセッションが開始される前にスクリプトを実行し、WorkSpaces アプリケーション動的アプリケーションフレームワークが有効になっていない場合、次のプロセスが発生します。

![\[WorkSpaces Applications workflow diagram showing connection, application selection, and session launch steps.\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/images/session-scripts-without-DAF-non-domain-joined2.png)


1. ユーザーは、ドメインに参加していない WorkSpaces アプリケーションフリートインスタンスに接続します。この接続には、以下のいずれかのアクセス方法を使用します。
   + WorkSpaces アプリケーションユーザープール
   + SAML 2.0
   + WorkSpaces アプリケーション API

1. アプリケーションカタログが WorkSpaces アプリケーションポータルに表示され、ユーザーは起動するアプリケーションを選択します。

1. 以下のいずれかのプロセスが発生します。
   + ユーザーに対してアプリケーション設定の永続化が有効になっている場合は、ユーザーのカスタマイズ内容と Windows の設定内容を保存しているアプリケーション設定の Virtual Hard Disk (VHD) ファイルがダウンロードされてマウントされます。この場合は、Windows ユーザーのログインが必要です。

     アプリケーション設定の永続化については、[WorkSpaces アプリケーションユーザーのアプリケーション設定の永続化を有効にする](app-settings-persistence.md) を参照してください。
   + アプリケーション設定の永続化が有効になっていない場合、Windows ユーザーはすでにログインしています。

1. セッションスクリプトが起動されます。ユーザーに対して永続的ストレージが有効になっている場合は、ストレージコネクタのマウントも開始されます。永続的ストレージについては、[WorkSpaces アプリケーションユーザーの永続的ストレージの有効化と管理](persistent-storage.md) を参照してください。
**注記**  
ストリーミングセッションを開始するためにストレージコネクタのマウントを完了する必要はありません。セッションスクリプトが完了したとき、まだストレージコネクタのマウントが完了していなくても、ストリーミングセッションは開始されます。  
ストレージコネクタのマウント状況のモニタリングについては、[セッションスクリプトでストレージコネクタを使用する](use-storage-connectors-with-session-scripts.md) を参照してください。

1. セッションスクリプトは完了するかタイムアウトします。

1. ユーザーのストリーミングセッションが開始されます。

1. ユーザーが選択したアプリケーションが起動されます。

WorkSpaces Applications 動的アプリケーションフレームワークの詳細については、「」を参照してください[WorkSpaces アプリケーション動的アプリケーションフレームワークを使用して動的アプリケーションプロバイダーを構築する](build-dynamic-app-provider.md)。

ストリーミングセッションが開始される前にスクリプトを実行し、WorkSpaces アプリケーション動的アプリケーションフレームワークが有効になっている場合、次のプロセスが発生します。

![\[WorkSpaces Applications workflow from user login to application launch, including SAML authentication and session scripts.\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/images/session-scripts-with-DAF-domain-joined2.png)


1. ユーザーは組織の SAML 2.0 アプリケーションポータルにアクセスし、WorkSpaces アプリケーションスタックを選択します。

1. ドメインに参加している WorkSpaces アプリケーションフリートインスタンスに接続します。

1. ユーザーに対してアプリケーション設定の永続化が有効になっている場合は、ユーザーのカスタマイズ内容と Windows の設定内容を保存しているアプリケーション設定の VHD ファイルがダウンロードされてマウントされます。

1. Windows ユーザーのログオンが発生します。

1. アプリケーションカタログが WorkSpaces アプリケーションポータルに表示され、ユーザーは起動するアプリケーションを選択します。

1. セッションスクリプトが起動されます。ユーザーに対して永続的ストレージが有効になっている場合は、ストレージコネクタのマウントも開始されます。
**注記**  
ストリーミングセッションを開始するためにストレージコネクタのマウントを完了する必要はありません。セッションスクリプトが完了したとき、まだストレージコネクタのマウントが完了していなくても、ストリーミングセッションは開始されます。  
ストレージコネクタのマウント状況のモニタリングについては、[セッションスクリプトでストレージコネクタを使用する](use-storage-connectors-with-session-scripts.md) を参照してください。

1. セッションスクリプトは完了するかタイムアウトします。

1. ユーザーのストリーミングセッションが開始されます。

1. ユーザーが選択したアプリケーションが起動されます。

# ストリーミングセッションの終了後にスクリプトを実行する
<a name="run-scripts-after-streaming-sessions-end"></a>

ユーザーのストリーミングセッションの終了後にスクリプトを実行するように設定することもできます。たとえば、ユーザーが WorkSpaces アプリケーションツールバーから**セッションの終了**を選択した場合、またはセッションの最大許容期間に達した場合にスクリプトを実行できます。これらのセッションスクリプトを使用して、ストリーミングインスタンスが終了する前に WorkSpaces アプリケーション環境をクリーンアップすることもできます。たとえば、スクリプトを使用してファイルロックを解除したり、ログファイルをアップロードしたりできます。ストリーミングセッションの終了後にスクリプトを実行すると、以下のプロセスが発生します。

![\[Flowchart showing WorkSpaces Applications session termination process with scripts and storage actions.\]](http://docs.aws.amazon.com/ja_jp/appstream2/latest/developerguide/images/session-scripts-termination.png)


1. ユーザーの WorkSpaces アプリケーションストリーミングセッションは終了します。

1. セッション終了スクリプトが起動されます。

1. セッション終了スクリプトが完了またはタイムアウトします。

1. Windows ユーザーのログアウトが発生します。

1. 以下のうち該当する一方が実行されるか、両方が同時に実行されます。
   + ユーザーに対してアプリケーション設定の永続化が有効になっている場合、ユーザーのカスタマイズ内容と Windows 設定内容を保存しているアプリケーション設定の VHD ファイルがマウント解除され、アカウントの Amazon S3 バケットにアップロードされます。
   + ユーザーに対して永続的ストレージが有効になっている場合、ストレージコネクタは最後の同期を完了し、マウント解除されます。

1. フリートインスタンスは削除されます。

# セッションスクリプトを作成および指定する
<a name="create-specify-session-scripts"></a>

常時オン、オンデマンド、および Elastic フリートのセッションスクリプトを設定および指定できます。

**常時オンおよびオンデマンドフリートのセッションスクリプトを設定および指定するには**

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインで、[**Images (イメージ)**]、[**Image Builder (イメージビルダー)**] の順に選択します。

1. [**実行中**] 状態のイメージビルダーを選択してから、[**接続**] を選択します。

1. プロンプトが表示されたら、[**管理者**] を選択します。

1. `C:\AppStream\SessionScripts` に移動し、`config.json` 設定ファイルを開きます。

   セッションスクリプトパラメータについては、[セッションスクリプト設定ファイル](session-script-configuration-file.md) を参照してください。

1. 変更が終了したら、`config.json` ファイルを保存して閉じます。

1. Image Builder デスクトップから、**Image Assistant** を開きます。

1. (オプション) イメージに含める他のアプリケーションを指定します。

1. Image Assistant で、必要な手順に従って、イメージの作成を完了します。

   セッションスクリプトの設定の検証でエラーになる場合 (.json ファイルの形式が正しくない場合など)、[**Disconnect and create image (イメージの接続解除と作成)**] を選択してイメージを作成すると、通知されます。
**注記**  
Linux ベースの Image Builder 向けのセッションスクリプト設定ファイルを見つけるには、`/opt/appstream/SessionScripts/config.json` に移動します。

**Elastic フリートのセッションスクリプトを設定および指定するには**

1. セッションスクリプトと config.json ファイルを含む zip ファイルを作成します。スクリプトファイルは、次の場所にコピーされます。config.json には、これらの場所を使用する必要があります。
   + Windows の場合は `C:\AppStream\SessionScripts\SessionScript` を使用します。
   + Linux の場合は `/opt/appstream/SessionScripts/SessionScript` を使用します。
**注記**  
セッションスクリプトファイルを実行するには、.zip ファイルに、含まれているフォルダではなくセッションスクリプトと `config.json` ファイルのみが含まれていることを確認します。詳細については、「[セッションスクリプト設定ファイル](session-script-configuration-file.md)」を参照してください。

1. ZIP ファイルを、アカウントの Amazon S3 バケットにアップロードします。
**注記**  
VPC は Amazon S3 バケットに対するアクセス権を提供する必要があります。詳細については、「[WorkSpaces アプリケーションの機能に Amazon S3 VPC エンドポイントを使用する WorkSpaces](managing-network-vpce-iam-policy.md)」を参照してください。  
S3 バケットと WorkSpaces Applications フリートが同じ にある必要があります AWS リージョン。  
Amazon S3 バケット内のセッションスクリプトオブジェクトで `S3:GetObject` アクションを実行するための IAM 許可が必要です。Amazon S3 バケットでのセッションスクリプトの保存に関する詳細については、「[S3 バケットにアプリケーションアイコン、セットアップスクリプト、セッションスクリプト、および VHD を保存する](store-s3-bucket.md)」を参照してください。

1. [https://console.aws.amazon.com/appstream2](https://console.aws.amazon.com/appstream2) で WorkSpaces アプリケーションコンソールを開きます。

1. ナビゲーションペインの [**Fleets**] を選択します。

1. 更新する Elastic フリートを選択し、[**View Details**] (詳細を表示) を選択します。

1. [**Session scripts settings**] (セッションスクリプトの設定) タブで、[**編集**] を選択します。

1. [**Session scripts object in S3**] (S3 のセッションスクリプトオブジェクト) で、セットアップスクリプトオブジェクトを表す S3 URI を入力するか、[**Browse S3**] (S3 を参照する) を選択して S3 バケットに移動し、セットアップスクリプトオブジェクトを見つけます。

1. 変更が完了したら、[**Save Changes**] (変更を保存) を選択します。

1. この時点で、セッションスクリプトは起動されたすべてのフリートインスタンスで使用できます。
**注記**  
新しい Elastic フリートを作成するときに、セッションスクリプトを設定することもできます。

# セッションスクリプト設定ファイル
<a name="session-script-configuration-file"></a>

Windows インスタンスのセッションスクリプト設定ファイルを見つけるには、C:\$1AppStream\$1SessionScripts\$1config.json に移動してください。Linux インスタンスでは、/opt/appStream/sessionScripts/config.json に移動してください。ファイル形式は次のとおりです。

**注記**  
設定ファイルは .json 形式です。このファイルに入力したテキストが有効な .json 形式であることを確認します。

```
{
  "SessionStart": {
    "executables": [
      {
        "context": "system",
        "filename": "",
        "arguments": "",
        "s3LogEnabled": true
      },
      {
        "context": "user",
        "filename": "",
        "arguments": "",
        "s3LogEnabled": true
      }
    ],
    "waitingTime": 30
  },
  "SessionTermination": {
    "executables": [
      {
        "context": "system",
        "filename": "",
        "arguments": "",
        "s3LogEnabled": true
      },
      {
        "context": "user",
        "filename": "",
        "arguments": "",
        "s3LogEnabled": true
      }
    ],
    "waitingTime": 30
  }
}
```

セッションスクリプト設定ファイルでは、以下のパラメータを使用できます。

***SessionStart/SessionTermination ***  
オブジェクトの名前に基づいて該当するセッションイベントで実行するセッションスクリプト。  
**型**: 文字列  
**必須:** いいえ  
**使用できる値:** **SessionStart**、**SessionTermination**

***WaitingTime***  
セッションスクリプトの最大期間 (秒単位)。  
**タイプ:** 整数  
**必須:** いいえ  
**制約**: 最大期間は 60 秒です。セッションスクリプトは、この期間内に完了しない場合、停止されます。スクリプトを引き続き実行する必要がある場合は、別のプロセスとして起動してください。

***Executables***  
実行するセッションスクリプトの詳細。  
**型**: 文字列  
**必須**: はい  
**制約**: セッションイベントごとに実行できるスクリプトの最大数は 2 です (1 つはユーザーコンテキスト用、もう 1 つはシステムコンテキスト用)。

***Context***  
セッションスクリプトを実行するコンテキスト。  
**型**: 文字列  
**必須**: はい  
**使用できる値:** **user**、**system**

***Filename***  
実行するセッションスクリプトへの完全パス。このパラメータを指定しない場合、セッションスクリプトは実行されません。  
**型**: 文字列  
**必須:** いいえ  
**制約**: ファイル名と完全パスの最大長は 1,000 文字です。  
**使用できる値:** **.bat**、**.exe**、**.sh**  
Windows PowerShell ファイルを使用することもできます。詳細については、「[Windows PowerShell ファイルの使用](using-powershell-files-with-session-scripts.md)」を参照してください。

***引数***  
セッションスクリプトまたは実行可能ファイルの引数。  
**型**: 文字列  
**必須:** いいえ  
**長さの制限**: 最大長は 1,000 文字です。

***S3LogEnabled***  
このパラメータの値が **True** に設定されていると、セッションスクリプトによって作成されたログを保存するための S3 バケットが Amazon Web Services アカウント内に作成されます。デフォルトではこの値は **True** に設定されます。詳細については、このトピックの後半の「*セッションスクリプト出力のログ記録*」セクションを参照してください。  
型: ブール  
**必須:** いいえ  
**使用できる値:** **True**、**False**

# Windows PowerShell ファイルの使用
<a name="using-powershell-files-with-session-scripts"></a>

Windows PowerShell ファイルを使用するには、**filename** パラメータに PowerShell ファイルへの絶対パスを指定します。

```
"filename": 
"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
```

次に、**arguments** パラメータにセッションスクリプトを指定します。

```
"arguments": "-File \"C:\\path\\to\\session\\script.ps1\"",
```

最後に、PowerShell 実行ポリシーで PowerShell ファイルの実行が許可されていることを確認します。

# セッションスクリプト出力のログ記録
<a name="logging-session-output"></a>

設定ファイルでこのオプションを有効にすると、WorkSpaces Applications は標準出力に書き込まれたセッションスクリプトからの出力を自動的にキャプチャします。この出力はアカウントの Amazon S3 バケットにアップロードされます。トラブルシューティングやデバッグの目的でログファイルを確認できます。

**注記**  
ログファイルは、セッションスクリプトが値を返したときか、**WaitingTime** に設定された時間を経過したときの、どちらか早いほうでアップロードされます。

# セッションスクリプトでストレージコネクタを使用する
<a name="use-storage-connectors-with-session-scripts"></a>

WorkSpaces Applications ストレージコネクタを有効にすると、セッション開始スクリプトの実行時にマウントが開始されます。スクリプトがマウントされているストレージコネクタに依存している場合は、コネクタが使用可能になるまで待つことができます。WorkSpaces Applications は、Windows インスタンスの Windows レジストリのストレージコネクタのマウントステータスを次のキーで維持します。

HKEY\$1LOCAL\$1MACHINE\$1SOFTWARE\$1Amazon\$1AppStream\$1Storage\$1<provided user name>\$1<Storage connector>

レジストリキーの値は以下のとおりです。
+ 提供されたユーザー名 — アクセスモードで提供されたユーザー ID。アクセスモードと各モードの値は以下のとおりです。
  + ユーザープール — ユーザーの E メールアドレス。
  + ストリーミング URL — ユーザー ID。
  + SAML — NameID。ユーザー名にスラッシュが含まれる場合 (ドメインユーザーの SAMAccountName が含まれる場合など)、スラッシュは「-」文字に置き換えられます。
+ ストレージコネクタ — ユーザーに対して有効になっている永続的ストレージオプションに対応するコネクタ。ストレージコネクタの値は以下のとおりです。
  + HomeFolder
  + GoogleDrive
  + OneDrive

ストレージコネクタの各レジストリキーには **MountStatus** DWORD 値が含まれています。次の表は、**MountStatus** に指定できる値の一覧です。

**注記**  
これらのレジストリキーを表示するには、イメージに Microsoft .NET Framework バージョン 4.7.2 以降がインストールされている必要があります。


| 値 | 説明 | 
| --- | --- | 
| 0 |  ストレージコネクタはこのユーザーに対して有効になっていない  | 
| 1 |  ストレージコネクタのマウントが進行中  | 
| 2 |  ストレージコネクタのマウントに成功した  | 
| 3 |  ストレージコネクタのマウントに失敗した  | 
| 4 |  ストレージコネクタのマウントは有効ですが、まだマウントされていません  | 

Linux インスタンスでは、file \$1/.config/appstream-home-folder/appstream-home-folder-mount-status にある appstream\$1home\$1folder\$1mount\$1status の値を調べることによって、ホームフォルダのマウントステータスを確認できます。


| 値 | 説明 | 
| --- | --- | 
| 正 |  ホームフォルダが正常にマウントされています  | 
| 誤 | ホームフォルダがまだマウントされていません | 

# セッションスクリプトログに対して Amazon S3 バケットストレージを有効にする
<a name="enable-S3-bucket-storage-session-script-logs"></a>

セッションスクリプト設定で Amazon S3 ログ記録を有効にすると、WorkSpaces アプリケーションはセッションスクリプトからの標準出力をキャプチャします。出力は、Amazon Web Services アカウント内の S3 バケットに定期的にアップロードされます。WorkSpaces Applications は、すべての AWS リージョンについて、アカウントとリージョンに固有のバケットをアカウントに作成します。

これらの S3 バケットを管理するための設定タスクを実行する必要はありません。これらは WorkSpaces Applications サービスによって完全に管理されます。各バケットに保存されているログファイルは、転送時には Amazon S3 の SSL エンドポイントを使用して暗号化され、保管時には Amazon S3 管理の暗号化キーを使用して暗号化されます。バケットは、以下にあるような特定の形式で命名されます。

```
appstream-logs-region-code-account-id-without-hyphens-random-identifier
```

***region-code***  
これは、セッションスクリプトログに対して Amazon S3 バケットストレージを有効にしてスタックを作成する AWS リージョンコードです。

***account-id-without-hyphens***  
ご自身の Amazon Web Services アカウント ID ランダムな ID は、そのリージョン内のその他バケットとの競合が発生しないことを確実にします。バケット名の最初の部分 `appstream-logs` は、複数のアカウントやリージョンにまたがる場合でも変更されません。

たとえば、アカウント番号 123456789012 の米国西部 (オレゴン) リージョン (us-west-2) のイメージでセッションスクリプトを指定すると、WorkSpaces Applications は、表示された名前でそのリージョンのアカウント内に Amazon S3 バケットを作成します。適切なアクセス許可を持つ管理者のみが、このバケットを削除できます。

```
appstream-logs-us-west-2-1234567890123-abcdefg
```

セッションスクリプトを無効にしても、S3 バケットに保存されているログファイルは削除されません。ログファイルを完全に削除するには、Amazon S3 コンソールまたは API を使用して、ユーザーまたは適切なアクセス許可を持つ別の管理者が削除する必要があります。WorkSpaces Applications は、バケットの誤った削除を防止するバケットポリシーを追加します。詳細については、[Amazon WorkSpaces アプリケーションの Identity and Access Management](controlling-access.md) の「*アプリケーション設定の永続化用の IAM ポリシーと Amazon S3 バケット*」を参照してください。

セッションスクリプトを有効にすると、開始されるストリーミングセッションごとに固有のフォルダが作成されます。

 アカウントの S3 バケットでログファイルが保存されているフォルダへのパスは、以下の構造になります。

```
bucket-name/stack-name/fleet-name/access-mode/user-id-SHA-256-hash/session-id/SessionScriptsLogs/session-event
```

***bucket-name***  
セッションスクリプトが保存されている S3 バケットの名前。名前の形式については、このセクションで先ほど説明しました。

***stack-name***  
セッションが発生したスタックの名前。

***fleet-name***  
セッションスクリプトが実行されているフリートの名前。

***access-mode***  
ユーザーの ID メソッド: WorkSpaces アプリケーション API または CLI `custom`の場合、SAML `federated`の場合、およびユーザープール内のユーザー`userpool`の場合。

***user-id-SHA-256-hash***  
ユーザー固有のフォルダ名。この名前は、ユーザー識別子から生成された小文字の SHA-256 ハッシュ 16 進数文字列を使用して作成されます。

***session-id***  
ユーザーのストリーミングセッションの識別子。ユーザーの各ストリーミングセッションでは一意の ID が生成されます。

***session-event***  
セッションスクリプトログを生成したイベント。イベント値は `SessionStart` と `SessionTermination` です。

以下のフォルダ構造の例は、test-stack と test-fleet から始まるストリーミングセッションに当てはまります。セッションでは`testuser@mydomain.com`、ID が のユーザー AWS アカウント ID の API と`123456789012`、`test-stack`米国西部 (オレゴン) リージョン (us-west-2) の設定グループを使用します。

```
appstream-logs-us-west-2-1234567890123-abcdefg/test-stack/test-fleet/custom/a0bcb1da11f480d9b5b3e90f91243143eac04cfccfbdc777e740fab628a1cd13/05yd1391-4805-3da6-f498-76f5x6746016/SessionScriptsLogs/SessionStart/
```

このフォルダ構造の例には、ユーザーコンテキストセッション開始スクリプト用の 1 つのログファイルと、必要に応じてシステムコンテキストセッション開始スクリプト用の 1 つのログファイルが含まれています。

# マルチセッションフリートでセッションスクリプトを使用する
<a name="session-scripts-multi-session-fleets"></a>

マルチセッションフリートでセッションスクリプトを使用する場合、最適なパフォーマンスとセキュリティを確保するための追加の要件と考慮事項があります。

## 要件
<a name="session-scripts-multi-session-fleets-requirements"></a>

単一セッションフリートでは、特定のインスタンスに対して、**[SessionStart]** フックと **[SessionTermination]** フックは 1 回のみ実行されることが保証されます。これは、セッションとインスタンスの 1:1 マッピングがあるためです。マルチセッションフリートを使用する場合、セッションとインスタンスの N:M マッピングがあり、各セッションは独自の **[SessionStart]** フックと **[SessionTermination]** フックを実行します。つまり、**[SessionStart]** フックと **[SessionTermination]** フックは、特定のインスタンスでは、さまざまな順序で複数回実行できます。最良のエクスペリエンスを得るには、マルチセッションフリートで使用する場合、セッションスクリプトについて以下が当てはまる必要があります。
+ スクリプトがべき等である。

  アクションがすでに実行されている場合、スクリプトは同じインスタンス上で複数の実行を正常に処理する必要があります。
+ スクリプトが独立している。

  スクリプトはセッションごとに実行されるため、あるセッションが **[SessionTermination]** を実行している間に別のセッションが **[SessionStart]** を実行していたとしても、それらは互いに、あるいは他のセッションのエクスペリエンスに干渉することはありません。
+ スクリプトが実行可能である。

  マルチセッションインスタンスでは、複数のセッションを同時にプロビジョニングできます。つまり、セッションスクリプトを複数回同時に実行できます。スクリプトは効率的で、過剰なリソースを消費せず、インスタンスでの他のユーザーの経験やセッションの安定性に影響を与えないようにする必要があります。

これらの要件の多くは、セッションスクリプトロジックをスクリプトが実行されている特定のユーザーセッションに集中させることで満たすことができます。

## セキュリティに関する考慮事項
<a name="session-scripts-multi-session-fleets-security"></a>

WorkSpaces アプリケーションイメージは、ユーザーがセッションスクリプトファイルへの書き込みアクセス許可を付与するように設定しないでください。これにより、悪意のあるユーザーにとって重要な攻撃ベクトルが導入され、スクリプトファイルを変更できるようになります。これらのファイルは、設定に応じて SYSTEM または別のユーザーとして実行できるようになります。

**重要**  
WorkSpaces アプリケーションイメージが安全に設定されていることを確認するのはユーザーの責任です。これは、複数のユーザーが同じインスタンスを使用しているマルチセッションインスタンスで特に重要です。イメージが安全に設定されていない場合、そのインスタンスのすべてのユーザーにセキュリティ上のリスクがあります。

イメージとセッションスクリプトファイルは、次の条件を満たしている必要があります。
+ ユーザーには、セッションスクリプトファイルを変更するアクセス許可がありません。
+ ユーザーには、セッションスクリプト config.json を変更するアクセス許可がありません。イメージのデフォルトの動作により、管理者へのアクセスが制限されます。

セッションスクリプトの実行ファイルは、実行時に変更されない安全な場所に保存する必要があります。

サービスがセッションスクリプトの実行ファイルが変更されたことを検出すると、そのインスタンスでそのフックの後続の実行が失敗し、ログファイルが Amazon S3 にアップロードされ (Amazon S3 ログ記録が有効になっている場合)、次のメッセージが表示されます。

**インスタンスのプロビジョニング後に実行可能ファイルが変更されたため、セッションスクリプトは実行されませんでした。セキュリティ上の理由から実行がスキップされました。**

ユースケースで実行時にセッションスクリプト実行可能ファイルを変更する必要がある場合 (例えば、実行時に自動更新プロセスによって変更される EXE ファイルを指す場合)、上記のチェックは失敗します。この場合、スクリプトを使用して、実行を変更した実行可能ファイルにリダイレクトします。サービスがセキュリティチェックを実行する場合、スクリプトは実行時に変更しないでください。

セッションスクリプトファイルが過度に大きい (100 MB を超える) 場合、インスタンスとセッションのプロビジョニングが遅れる可能性があり、セキュリティチェックにはさらに時間がかかります (インスタンスタイプと使用可能なリソースによって異なります)。ユースケースで大規模なセッションスクリプトが必要な場合は、実行をリダイレクトするために小さなスクリプトを使用することを検討してください。これにより、インスタンスとセッションのプロビジョニングエクスペリエンスが向上します。

サービスはセッションスクリプト config.json で定義された実行可能ファイルのみをチェックしており、これはフォールバック/ベストエフォートメカニズムにすぎないことに注意してください。セッションスクリプト実行可能ファイル内のすべてのコードパスが安全であり、エンドユーザーが変更できないことを確認するのはユーザーの責任です。