Citrix Virtual Apps and Desktops

Amazon WorkSpaces Coreマネージドインスタンスへの接続

接続とリソースの作成および管理では、接続を作成するウィザードについて説明しています。以下の情報は、Amazon WorkSpaces Coreマネージドインスタンスに固有の詳細を扱っています。

  • 前提条件

  • Amazon WorkSpaces Coreマネージドインスタンスへの接続を作成する前に、以下を実行します。

  • AWSをリソースの場所として設定する作業を完了します。AWS仮想化環境を参照してください。
  • Citrix®がお客様に代わってAWSリソースを管理するためのIAMユーザーまたはロールのIAMアクセス許可ポリシーを定義します。
  • サービスにリンクされたロールを作成します。

IAMアクセス許可の定義

ホスト接続を作成する前に、Citrixがお客様のAWSアカウントでリソースをプロビジョニングおよび管理するための適切なアクセス許可を付与するIAMユーザーまたはロールに対して、IAMアクセス許可ポリシーを適切に定義する必要があります。このセクションの情報を使用して、Amazon WorkSpaces Coreマネージドインスタンス上のCitrix Virtual Apps and DesktopsのIAMアクセス許可を定義します。AmazonのIAMサービスでは、複数のユーザーを持つアカウントが許可されており、それらのユーザーはさらにグループに編成できます。これらのユーザーは、アカウントに関連する操作を実行する能力を制御するために、異なるアクセス許可を持つことができます。IAMアクセス許可の詳細については、IAM JSONポリシーリファレンスを参照してください。

注:

Citrixはお客様に代わってAWSアカウントでリソースと自動化をプロビジョニングおよび管理するため、特定のタグまたはリソース命名規則に基づいたIAMアクセス許可ポリシーの構成はサポートされていません。

新しいユーザーグループにIAMアクセス許可ポリシーを適用するには:

  1. AWS管理コンソールにログインし、ドロップダウンリストからIAMサービスを選択します。
  2. 「Create a New Group of Users」を選択します。
  3. 新しいユーザーグループの名前を入力し、「Continue」を選択します。
  4. 「Permissions」ページで、「Custom Policy」を選択します。
  5. 「Permissions policy」の名前を入力します。
  6. 「Policy Document」セクションで、関連するアクセス許可を入力します。

ポリシー情報を入力した後、「Continue」を選択して、IAMアクセス許可ポリシーのユーザーグループへの適用を完了します。グループ内のユーザーには、Citrix Virtual Apps and Desktopsに必要なアクションのみを実行するアクセス許可が付与されます。

重要:

  • この記事の例で提供されているポリシーテキストを使用して、Citrix Virtual Apps and DesktopsがAWSアカウント内でアクションを実行するために使用するアクションを、特定のリソースに制限することなくリストします。Citrixは、テスト目的でこの例を使用することをお勧めします。本番環境では、リソースにさらに制限を追加することを選択できます。

IAMアクセス許可の追加

AWS管理コンソールのIAMセクションでアクセス許可を追加します。

  1. 「Summary」パネルで、「Permissions」タブを選択します。
    1. 「Add permissions」を選択します。
    1. 「Add Permissions to」画面で、アクセス許可を付与します。
  1. JSONセクションで、環境に必要なAWSアクセス許可を含めます。

サービスにリンクされたロールの作成

CitrixがCore V2 APIを呼び出す各AWSアカウントについて、サービスにリンクされたロール(SLR)を作成します。

ロールを作成する手順:

  • AWS管理コンソールでコマンドラインインターフェイス(CLI)を開きます。
  • CLIで次のコマンドを実行します。

     aws iam create-service-linked-role --aws-service-name workspaces-instances.amazonaws.com
     <!--NeedCopy-->
    

Amazon WorkSpaces Core管理コンソールを使用して、サービスにリンクされたロールを構成することもできます。サービスにリンクされたロールの作成(コンソール)を参照してください。

接続の作成

Amazon WorkSpaces Coreマネージドインスタンスへの接続は、以下を使用して作成できます。

  • Web Studio
  • PowerShellコマンド

  • 注:

  • プロキシサーバーまたはファイアウォールの制限を確認し、次のアドレスに接続できることを確認してください:https://*.amazonaws.comおよびhttps://*.api.aws。また、Citrix Gatewayサービス接続に記載されているすべてのアドレスに接続できることを確認してください。

  • これらに接続できない場合、ホスト接続の作成または更新が失敗する可能性があります。

Web Studioを使用した接続の作成

  1. 「Hosting」>「Add Connection and Resources」ページに移動します。
  2. 「Connection」ページで、次の手順に従って接続を構成します。

    1. 「Create a new connection」を選択します。
    2. 「Zone」で、AWS環境用に設定したリソースの場所を選択します。
    3. 接続タイプとして「Amazon WorkSpaces Core」を選択します。
    4. 「Use IAM user access key」または「Use IAM role」を選択します。

      IAMユーザーアクセスキーの場合、CitrixがAWSアカウントでリソースを管理するための適切なIAMアクセス許可ポリシーを持つIAMユーザーのAPIキーシークレットキーを指定します。

      IAMロールの場合、CitrixがAWSアカウントでリソースを管理するための適切なIAMアクセス許可ポリシーを持つIAMロールをDelivery Controllerインスタンスに割り当てていることを確認してください。詳細については、ロールベース認証ガイドを参照してください。

    5. 接続名を入力し、「Next」をクリックします。
  3. 「Virtual Machine Location」ページで、VMをプロビジョニングする場所を指定します。新しいVMを作成するためのクラウドリージョン、VPC、およびアベイラビリティーゾーンを選択します。
  4. 「Network」ページで:

    1. アベイラビリティーゾーンまたはローカルゾーンで以前に選択したリソースの名前を入力します。
    2. 前のメニューで構成したVPC内の1つ以上のサブネットを選択します。
  5. 「Summary」ページまで残りのページをクリックして進みます。
  6. 「Finish」をクリックして、Amazon WorkSpaces Coreマネージドインスタンスへのホスト接続を作成します。

重要な考慮事項

Web Studioを使用して接続を作成する場合:

  • CitrixがAWSリソースを管理するための適切なIAMアクセス許可を定義します。
    • CitrixがAWSリソースを管理するためにIAMユーザーアクセスキーを使用する場合、APIキーとシークレットキーの値を指定する必要があります。これらの値を含むキーファイルをAWSからエクスポートし、インポートできます。また、リージョン、アベイラビリティーゾーン、VPC名、サブネットアドレス、ドメイン名、セキュリティグループ名、および資格情報を指定する必要があります。
    • CitrixがAWSリソースを管理するためにIAMロールを使用する場合、すべてのDelivery Controllerに適切なIAMアクセス許可を持つロールを割り当てる必要があります。ロールベース認証ガイドを参照してください。
  • ルートAWSアカウントの資格情報ファイル(AWSコンソールから取得)は、標準のAWSユーザー用にダウンロードされた資格情報ファイルと同じ形式ではありません。したがって、Citrix Virtual Apps and Desktopsは、APIキーとシークレットキーのフィールドに入力するためにファイルを使用できません。AWS Identity Access Management(IAM)資格情報ファイルを使用していることを確認してください。
  • ゾーンはアベイラビリティーゾーンまたはローカルゾーンにすることができます。

  • PowerShellを使用した接続の作成

  1. PowerShellウィンドウを開きます。
  2. asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします。
  3. 次のコマンドを実行します。以下に例を示します。

    ``` $connectionName = “demo-hostingconnection” $cloudRegion = “us-east-1” $apiKey = “aaaaaaaaaaaaaaaaaaaa” $apiSecret = “bbbbb” $secureKey = ConvertTo-SecureString -String $apiSecret $zoneUid = “00000000-0000-0000-0000-000000000000” $connectionPath = “XDHyp:\Connections" + $connectionName

    $connection = New-Item -Path $connectionPath -ConnectionType “AmazonWorkSpacesCoreMachineManagerFactory” -HypervisorAddress “ “https://workspaces-instances.$($cloudRegion).api.aws”” -Persist -Scope @() -UserName $apiKey -SecurePassword $secureKey -ZoneUid $zoneUid

  • New-BrokerHypervisorConnection -HypHypervisorConnectionUid $connection.HypervisorConnectionUid

    $hostingUnitName = “demo-hostingunit” $availabilityzone = “us-east-1a” $vpcName = “Default VPC” $jobGroup = [Guid]::NewGuid() $hostingUnitPath = “XDHyp:\HostingUnits" + $HostingUnitName $rootPath = $connectionPath + “" + $vpcName + “.virtualprivatecloud"

    • $availabilityZonePath = @($rootPath + $availabilityzone + “.availabilityzone”) $networkPaths = (Get-ChildItem $availabilityZonePath[0] | Where ObjectType -eq “Network”) | Select-Object -ExpandProperty FullPath # will select all the networks in the availability zone

    New-Item -Path $hostingUnitPath -AvailabilityZonePath $availabilityZonePath -HypervisorConnectionName $connectionName -JobGroup $jobGroup -PersonalvDiskStoragePath @() -RootPath $rootPath -NetworkPath $networkPaths

    ```

注記:

ロールベース認証を使用して接続を作成するには、apiKey と apiSecret を role_based_auth として指定します。

制限事項

AWS コンソールで AWS Virtual Private Cloud (VPC) の名前を変更すると、Citrix Cloud™ の既存のホスティングユニットが破損します。ホスティングユニットが破損すると、カタログを作成したり、既存のカタログにマシンを追加したりできなくなります。この問題を解決するには、AWS VPC の名前を元の名前に戻します。

接続の編集

既存のホスト接続を編集して、次の操作を実行できます。

IAM 権限を提供するオプションの編集

  1. 既存の Amazon WorkSpaces Core 接続を右クリックします
  2. [接続プロパティ] ページで、[設定の編集] をクリックします
  3. Citrix がリソースを管理するための IAM 権限を提供するオプションのいずれかを選択します。必要な詳細を入力し、[保存] をクリックします

同時アクションの最大数の変更

Studio で Amazon WorkSpaces Core マネージドインスタンスのホスト接続を作成すると、次のデフォルト値が表示されます。

オプション 絶対値 パーセンテージ
同時アクション (すべての種類) 125 100
1分あたりの新規アクションの最大数 150 該当なし
同時プロビジョニング操作の最大数 150 該当なし

MCS は、デフォルトで最大 150 の同時プロビジョニング操作をサポートします。

これらの値は、Citrix Studio の [接続の編集] 画面にある [詳細設定] セクションにアクセスして構成できます。

または、Remote PowerShell SDK を使用して、環境に応じた最適な設定のために同時操作の最大数を設定することもできます。

PowerShell カスタムプロパティ MaximumConcurrentProvisioningOperations を使用して、同時 AWS プロビジョニング操作の最大数を指定します。

構成する前に:

  • Cloud 用 PowerShell SDK がインストールされていることを確認します
  • MaximumConcurrentProvisioningOperations のデフォルト値が 150 であることを理解しておいてください

MaximumConcurrentProvisioningOperations の値をカスタマイズするには、次の手順を実行します。

  1. PowerShell ウィンドウを開きます
  2. asnp citrix* を実行して、Citrix 固有の PowerShell モジュールをロードします
  3. cd xdhyp:\Connections\ と入力します
  4. dir と入力して接続を一覧表示します
  5. カスタムプロパティ文字列を変更または初期化します
    • カスタムプロパティ文字列に値がある場合は、カスタムプロパティをメモ帳にコピーします。次に、MaximumConcurrentProvisioningOperations プロパティを希望の値に変更します。1~1000 の範囲の値を入力できます 例: <Property xsi:type="IntProperty" Name="MaximumConcurrentProvisioningOperations" Value="xyz"/>
    • カスタムプロパティ文字列が空または null の場合は、スキーマと MaximumConcurrentProvisioningOperations プロパティの両方に適切な構文を入力して文字列を初期化する必要があります
  6. PowerShell ウィンドウで、メモ帳から変更したカスタムプロパティを貼り付け、変更したカスタムプロパティに変数を割り当てます。カスタムプロパティを初期化した場合は、構文の後に次の行を追加します。

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Property xsi:type="IntProperty" Name="MaximumConcurrentProvisioningOperations" Value="100"/></CustomProperties>'
    <!--NeedCopy-->
    

    この文字列は、MaximumConcurrentProvisioningOperations プロパティを 100 に設定します。カスタムプロパティ文字列では、MaximumConcurrentProvisioningOperations プロパティをニーズに合った値に設定する必要があります。

  7. Get-XDAuthentication と入力します。これにより、資格情報の入力を求められます
  8. $cred = Get-Credential を実行します。これにより、パスワードのみ (または名前とパスワード) の入力を求められる場合があります。アプリケーション ID と関連するシークレットの入力を求められる場合もあります。ロールベース認証を使用する接続の場合、role_based_auth は名前とパスワードの両方です。それ以外の場合は、AWS API ID とシークレットを入力します
  9. set-item -PSPath 'XDHyp:\Connections<connection-name>’ -CustomProperties $customProperties -username $cred.username -Securepassword $cred.password` を実行します。<connection-name> を接続の名前に設定する必要があります
  10. dir と入力して、更新された CustomProperties 文字列を確認します

ネットワークインターフェイスあたりのセキュリティグループの構成

ホスト接続を編集する際に、PowerShell コマンドを使用して、エラスティックネットワークインターフェイス (ENI) あたりのセキュリティグループの最大数を構成できるようになりました。AWS セキュリティグループのクォータ値については、「セキュリティグループ」を参照してください。

ネットワークインターフェイスあたりのセキュリティグループを構成するには:

  1. PowerShell ウィンドウを開きます
  2. asnp citrix* を実行して、Citrix 固有の PowerShell モジュールをロードします
  3. cd xdhyp:\Connections\ を実行します
  4. dir を実行して接続を一覧表示します
  5. ネットワークインターフェイスあたりのセキュリティグループを構成するには、次の PowerShell コマンドを実行します

    Set-HypHypervisorConnectionMetadata -HypervisorConnectionName aws -Name "Citrix_MachineManagement_Options" -Value " AwsMaxENISecurityGroupLimit=<number>"
    <!--NeedCopy-->
    

    注記:

    AwsMaxENISecurityGroupLimit の値を設定しない場合、デフォルト値の 5 が使用されます。

サービスエンドポイント URL

標準ゾーンサービスエンドポイント URL

MCS を使用すると、API キーと API シークレットを持つ新しい Amazon WorkSpaces Core マネージドインスタンス接続が追加されます。この情報と認証済みアカウントを使用して、MCS は AWS EC2 および Amazon WorkSpaces Core マネージドインスタンス API 呼び出しを使用して、サポートされているリージョンとゾーンを AWS に照会します。クエリは、Workspace Instances Service Endpoint URL https://workspaces-instances.us-east-1.api.aws/ および EC2 Service Endpoint https:/ec2.us-east-1.api.aws/ を使用して行われます。

注記:

https://workspaces-instances.us-east-1.api.aws/ に接続できることを確認してください。

必要なAWS権限

このセクションには、AWS権限の完全なリストが含まれています。機能が正しく動作するためには、このセクションに記載されている権限の完全なセットを使用してください。

注:

iam:PassRole 権限は、Citrixがリソースを管理するためにIAMロールを使用する場合にのみ必要です。

ホスト接続の作成

AWSから取得した情報を使用して、新しいホスト接続が追加されます。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeSubnets",
                "ec2:DescribeVpcs",
                "ec2:DescribeRegions",
                "workspaces-instances:*"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
<!--NeedCopy-->

VMの電源管理

VMの電源をオンまたはオフにします。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "ec2:DescribeInstances",,
                "ec2:StartInstances",
                "ec2:StopInstances",
                "ec2:RebootInstances",
                "ec2:DescribeInstanceStatus"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
           "Action": [
               "workspaces-instances:*"
           ],
           "Effect": "Allow",
            "Resource": "*"
       }

    ]

}
<!--NeedCopy-->

VMの作成、更新、または削除

  • AWSインスタンスとしてプロビジョニングされたVMを使用して、マシンカタログが作成、更新、または削除されます。
-  {
-  "Version": "2012-10-17",
-  "Statement": [
-  {
-  "Action": [
                "ec2:AttachVolume",
                "ec2:AssociateIamInstanceProfile",
                "ec2:AuthorizeSecurityGroupEgress",
                "ec2:RevokeSecurityGroupEgress",
                "ec2:AuthorizeSecurityGroupIngress",
                "ec2:CreateImage",
                "ec2:CreateLaunchTemplate",
                "ec2:CreateSecurityGroup",
                "ec2:CreateTags",
                "ec2:CreateVolume",
                "ec2:DeleteVolume",
                "ec2:DescribeAccountAttributes",
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeIamInstanceProfileAssociations",
                "ec2:DescribeImages",
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceStatus",
                "ec2:DescribeInstanceTypes",
                "ec2:DescribeLaunchTemplates",
                "ec2:DescribeLaunchTemplateVersions",
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeRegions",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeSnapshots",
                "ec2:DescribeSubnets",
                "ec2:DescribeTags",
                "ec2:DescribeSpotInstanceRequests",
                "ec2:DescribeInstanceCreditSpecifications",
                "ec2:DescribeInstanceAttribute",
                "ec2:GetLaunchTemplateData",
                "ec2:DescribeVolumes",
                "ec2:DescribeVpcs",
                "ec2:DetachVolume",
                "ec2:DisassociateIamInstanceProfile",
                "ec2:RunInstances",
                "ec2:StartInstances",
                "ec2:StopInstances",
                "ec2:TerminateInstances"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "ec2:CreateSecurityGroup",
                "ec2:DeleteSecurityGroup"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "ebs:StartSnapshot",
                "ebs:GetSnapshotBlock",
                "ebs:PutSnapshotBlock",
                "ebs:CompleteSnapshot",
                "ebs:ListSnapshotBlocks",
                "ebs:ListChangedBlocks",
                "ec2:CreateSnapshot"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "workspaces-instances:*"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }

    ]
}
<!--NeedCopy-->

注:

  • SecurityGroupsに関連するEC2セクションは、カタログ作成時に準備VM用に分離セキュリティグループを作成する必要がある場合にのみ必要です。これが完了すると、これらの権限は不要になります。

ディスクの直接アップロードとダウンロード

以下の権限をポリシーに追加する必要があります。

  • ebs:StartSnapshot
  • ebs:GetSnapshotBlock
  • ebs:PutSnapshotBlock
  • ebs:CompleteSnapshot
  • ebs:ListSnapshotBlocks
  • ebs:ListChangedBlocks
  • ec2:CreateSnapshot
  • ec2:DeleteSnapshot
  • ec2:DescribeLaunchTemplates

作成されたボリュームのEBS暗号化

AMIが暗号化されている場合、またはEBSがすべての新しいボリュームを暗号化するように構成されている場合、EBSは新しく作成されたボリュームを自動的に暗号化できます。ただし、この機能を実装するには、以下の権限をIAMポリシーに含める必要があります。

{
     "Version": "2012-10-17",
     "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                 "kms:CreateGrant",
                 "kms:Decrypt",
                 "kms:DescribeKey",
                 "kms:GenerateDataKeyWithoutPlainText",
                 "kms:GenerateDataKey",
                 "kms:ReEncryptTo",
                 "kms:ReEncryptFrom"
            ],
            "Resource": "*"
        }
    ]
}
<!--NeedCopy-->

注:

権限は、ユーザーの判断でリソースと条件ブロックを含めることにより、特定のキーに限定できます。例えば、条件付きKMS権限:

{
     "Version": "2012-10-17",
     "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                 "kms:CreateGrant",
                 "kms:Decrypt",
                 "kms:DescribeKey",
                 "kms:GenerateDataKeyWithoutPlainText",
                 "kms:GenerateDataKey",
                 "kms:ReEncryptTo",
                 "kms:ReEncryptFrom"
            ],
            "Resource": [
                "arn:aws:kms:us-east-2:123456789012:key/abcd1234-a123-456d-a12b-a123b4cd56ef"
            ],
            "Condition": {
                "Bool": {
                    "kms:GrantIsForAWSResource": true
                }
            }
        }
    ]
}
<!--NeedCopy-->

以下のキーポリシーステートメントは、アカウントがIAMポリシーを使用してKMSキーに対するすべてのアクション (kms:*) の権限を委任することを許可するために必要な、KMSキーのデフォルトキーポリシー全体です。

{
"Sid": "Enable IAM policies",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:root"
},
"Action": "kms:",
"Resource": ""
}
<!--NeedCopy-->

詳細については、AWS Key Management Service公式ドキュメントを参照してください。

IAMロールベースの認証

ロールベースの認証をサポートするために、以下の権限が追加されます。

{
     "Version": "2012-10-17",
     "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/*"
        }
    ]
}
<!--NeedCopy-->

最小限のIAM権限ポリシー

以下のJSONは、現在サポートされているすべての機能に使用できます。このポリシーを使用して、ホスト接続の作成、VMの作成、更新、または削除、および電源管理を行うことができます。 このポリシーは、IAM権限の定義セクションで説明されているようにユーザーに適用できます。または、ホスト接続を構成する際にIAMロールを使用を選択することで、ロールベースの認証を使用することもできます。

重要:

Citrixがリソースを管理するためにIAMロールを使用するには、まずDelivery Controllerを設定する際に、Delivery ControllerのEC2インスタンスで目的のIAMロールを構成します。Citrix Studioを使用してホスティング接続を追加し、IAMロールを使用オプションを選択します。これらの設定を持つホスティング接続は、ロールベースの認証を使用します。

{
    "Version": "2012-10-17",
    "Statement": [
        {
-  "Action": [
                "ec2:AttachVolume",
-  "ec2:AssociateIamInstanceProfile",
-  "ec2:AuthorizeSecurityGroupEgress",
-  "ec2:RevokeSecurityGroupEgress",
                "ec2:AuthorizeSecurityGroupIngress",
                "ec2:CreateImage",
                "ec2:CreateLaunchTemplate",
                "ec2:CreateNetworkInterface",
                "ec2:CreateTags",
                "ec2:CreateVolume",
                "ec2:DeleteLaunchTemplate",
                "ec2:DeleteNetworkInterface",
                "ec2:DeleteSecurityGroup",
                "ec2:DeleteSnapshot",
                "ec2:DeleteTags",
                "ec2:DeleteVolume",
                "ec2:DeregisterImage",
                "ec2:DescribeAccountAttributes",
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeIamInstanceProfileAssociations",
                "ec2:DescribeImages",
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceTypes",
                "ec2:DescribeInstanceStatus",
                "ec2:DescribeLaunchTemplates",
                "ec2:DescribeLaunchTemplateVersions",
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeRegions",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeSnapshots",
                "ec2:DescribeSubnets",
                "ec2:DescribeTags",
                "ec2:DescribeSpotInstanceRequests",
                "ec2:DescribeInstanceCreditSpecifications",
                "ec2:DescribeInstanceAttribute",
                "ec2:GetLaunchTemplateData",
                "ec2:DescribeVolumes",
                "ec2:DescribeVpcs",
                "ec2:DetachVolume",
                "ec2:DisassociateIamInstanceProfile",
                "ec2:RebootInstances",
                "ec2:RunInstances",
                "ec2:StartInstances",
                "ec2:StopInstances",
                "ec2:TerminateInstances"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "ec2:CreateSecurityGroup",
                "ec2:DeleteSecurityGroup"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "ebs:StartSnapshot",
                "ebs:GetSnapshotBlock",
                "ebs:PutSnapshotBlock",
                "ebs:CompleteSnapshot",
                "ebs:ListSnapshotBlocks",
                "ebs:ListChangedBlocks",
                "ec2:CreateSnapshot"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                 "kms:CreateGrant",
                 "kms:Decrypt",
                 "kms:DescribeKey",
                 "kms:GenerateDataKeyWithoutPlainText",
                 "kms:GenerateDataKey",
                 "kms:ReEncryptTo",
                 "kms:ReEncryptFrom"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "workspaces-instances:*"
            ],
            "Resource": "*"
        }

    ]
}
<!--NeedCopy-->

注:

  • SecurityGroupsに関連するEC2セクションは、カタログ作成時に準備VM用に分離セキュリティグループを作成する必要がある場合にのみ必要です。これが完了すると、これらの権限は不要になります。
  • KMSセクションは、EBSボリューム暗号化を使用する場合にのみ必要です。
  • iam:PassRole 権限セクションは、Citrixがリソースを管理するためにIAMロールを使用する場合にのみ必要です。
  • 要件と環境に基づいて、フルアクセスではなく特定のリソースレベルの権限を追加できます。詳細については、AWSドキュメントのEC2リソースレベルの権限の解明およびAWSリソースのアクセス管理を参照してください。
  • ec2:CreateNetworkInterface および ec2:DeleteNetworkInterface 権限は、ボリュームワーカー方式を使用している場合にのみ使用してください。

次のステップ

詳細情報

Amazon WorkSpaces Coreマネージドインスタンスへの接続