AppStream 2.0 動的アプリケーションフレームワークを使用して動的アプリケーションプロバイダーを構築する - Amazon AppStream 2.0

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

AppStream 2.0 動的アプリケーションフレームワークを使用して動的アプリケーションプロバイダーを構築する

AppStream 2.0 動的アプリケーションフレームワークは、動的アプリケーションプロバイダーを構築するために使用できる、AppStream 2.0 ストリーミングインスタンス内の API オペレーションを提供します。動的アプリケーションプロバイダーは、提供されている API オペレーションを使用して、ユーザーがリアルタイムでアクセスできるアプリケーションのカタログを変更できます。動的アプリケーションプロバイダーによって管理されるアプリケーションは、イメージ内に存在することも、Windows ファイル共有やアプリケーション仮想化テクノロジーなどからインスタンス外に存在することもあります。

注記

この機能には、Microsoft アクティブディレクトリドメインに参加済みの AppStream 2.0 常時オンまたはオンデマンドフリートが必要です。詳細については、「 AppStream 2.0 での Active Directory の使用」を参照してください。

動的アプリケーションフレームワークについて

動的アプリケーションフレームワークでは、プロセス間メッセージで Apache Thrift ソフトウェアフレームワーク を使用します。Windows の名前付きパイプを介して公開されます。Thrift フレームワークを使用して、選択したソフトウェア開発言語で動的アプリケーションプロバイダーを構築できます。動的アプリケーションフレームワークは、3 つの API オペレーション AddApplicationsRemoveApplicationsClearApplications で構成されます。

動的アプリケーションフレームワーク Thrift 定義と名前付きパイプ名

Thrift では、AppStream 2.0 が提供する単純な定義ファイルを使用して RPC クライアントをコンパイルできます。RPC クライアントを使用すると、ストリーミングインスタンスで実行されている AppStream 2.0 エージェントソフトウェアと通信できます。RPC クライアントを自分の言語用にコンパイルする方法については、Apache Thrift ドキュメントを参照してください。選択した言語用に Thrift ライブラリをコンパイルしたら、名前付きパイプトランスポートを使用して Thrift クライアントを構築します。D56C0258-2173-48D5-B0E6-1EC85AC67893 をパイプ名として使用します。

AppStreamServer.thrift

namespace netstd AppStream.ApplicationCatalogService.Model const string ServiceEndpoint = "D56C0258-2173-48D5-B0E6-1EC85AC67893"; struct AddApplicationsRequest { 1: required string userSid; 2: required list<Application> applications; } struct AddApplicationsResponse { } struct RemoveApplicationsRequest { 1: required string userSid; 2: required list<string> applicationIds; } struct RemoveApplicationsResponse { } struct ClearApplicationsRequest { 1: required string userSid; } struct ClearApplicationsResponse { } struct Application { 1: required string id; 2: required string displayName; 3: required string launchPath; 4: required string iconData; 5: string launchParams; 6: string workingDirectory; } exception AppStreamClientException { 1: string errorMessage, 2: ErrorCode errorCode } exception AppStreamServerException { 1: string errorMessage, 2: ErrorCode errorCode } enum ErrorCode { } service ApplicationCatalogService { AddApplicationsResponse AddApplications(1:AddApplicationsRequest request) throws (1: AppStreamClientException ce, 2: AppStreamServerException se), RemoveApplicationsResponse RemoveApplications(1:RemoveApplicationsRequest request) throws (1: AppStreamClientException ce, 2: AppStreamServerException se), ClearApplicationsResponse ClearApplications(1:ClearApplicationsRequest request) throws (1: AppStreamClientException ce, 2: AppStreamServerException se), }

AppStream 2.0 のアプリケーション使用権限管理のための API アクション

以下の API オペレーションを使用して、AppStream 2.0 のアプリケーション使用権限を管理できます。

AddApplicationsRequest オペレーション

AppStream 2.0 ユーザーのアプリケーションカタログにアプリケーションを追加します。AppStream 2.0 によって表示されるアプリケーションカタログには、この API オペレーションを使用して追加したアプリケーションと、イメージに追加したアプリケーションが含まれています。これらの方法の一方または両方を使用してアプリケーションを追加した後、ユーザーはアプリケーションを起動できます。

リクエストの構文

文字列 userSid;

list<Application> applications;

リクエストパラメータ

userSid

リクエストが適用されるユーザーの SID。

タイプ: 文字列

必須: はい

長さの制限: 最小長は 1、最大長は 208 文字。

applications

リクエストが適用されるアプリケーションのリスト。

タイプ: 文字列

必須: はい

Application オブジェクト

アプリケーションの表示と起動に必要なアプリケーションメタデータを記述します。アプリケーションの識別子は一意である必要があり、API オペレーションまたはイメージを介して指定された他のアプリケーションと競合してはなりません。

id

指定されているアプリケーションの ID。この値は、AppStream 2.0 アプリケーションレポートの application_name の値に対応し、ユーザーがアプリケーションを起動したときに提供されます。ユーザーがストリーミングセッション中に 1 つ以上のアプリケーションを起動した日ごとに、使用状況レポートを有効にすると、AppStream 2.0 によってアプリケーションレポートが Amazon S3 バケットにエクスポートされます。アプリケーションレポートの詳細については、「アプリケーションレポートのフィールド」を参照してください。

タイプ: 文字列

必須: はい

長さの制限: 最小長は 1、最大長は 512 文字。

displayName

指定されているアプリケーションの表示名。この名前は、アプリケーションカタログでユーザーに表示されます。

タイプ: 文字列

必須: はい

長さの制限: 最小長は 1、最大長は 512 文字。

launchPath

起動するアプリケーションの実行可能ファイルへの Windows ファイルシステムパス。

タイプ: 文字列

必須: はい

長さの制限: 最小長は 1、最大長は 32,767 文字。

iconData

アプリケーションカタログに表示する Base 64 エンコードイメージ。このイメージは .png、.jpeg、または .jpg のいずれかの形式にする必要があります。

タイプ: 文字列

必須: はい

長さの制限: 最小長は 1、最大長は 1,000,000 文字。

launchParams

アプリケーションを起動するために使用されるパラメータです。

タイプ: 文字列

必須: いいえ

長さ制限: 最大長は 32,000 文字です。

workingDirectory

アプリケーションを起動する作業ディレクトリへの Windows ファイルシステムパス。

タイプ: 文字列

必須: いいえ

長さ制限: 最大長は 32,767 文字です。

RemoveApplicationsRequest オペレーション

AddApplicationsRequest オペレーションを使用して追加されたアプリケーションを削除します。アプリケーションは、ユーザーのアプリケーションカタログから削除されます。アプリケーションが削除されたら、起動することはできません。アプリケーションがまだ実行中の場合は、AppStream 2.0 はそのアプリケーションを閉じません。AppStream 2.0 イメージで直接指定されているアプリケーションは、削除できません。

リクエストの構文

文字列 userSid;

list<Application> applications;

リクエストパラメータ

userSid

リクエストが適用されるユーザーの SID。

タイプ: 文字列

必須: はい

長さの制限: 最小長は 1、最大長は 208 文字。

applications

リクエストが適用されるアプリケーションのリスト。

タイプ: 文字列

必須: はい

ClearApplicationsRequest オペレーション

AddApplicationsRequest オペレーションを使用して、アプリケーションカタログに追加されたすべてのアプリケーションを削除する必要があります。アプリケーションが削除されたら、起動することはできません。ClearApplicationsRequest オペレーションが使用されているときにアプリケーションが実行されている場合、AppStream 2.0 はそれらを閉じません。AppStream 2.0 イメージで直接指定されているアプリケーションは、削除できません。

リクエストの構文

文字列 userSid;

リクエストパラメータ

userSid

リクエストが適用されるユーザーの SID。

タイプ: 文字列

必須: はい

長さの制限: 最小長は 1、最大長は 208 文字。