NetScaler VPX インスタンスで AWS IAM ロールを構成する

最終公開日 : Sep 25, 2026
Amazon EC2 インスタンスで実行されるアプリケーションは、AWS API リクエストに AWS 認証情報を含める必要があります。AWS 認証情報を Amazon EC2 インスタンス内に直接保存し、そのインスタンス内のアプリケーションがそれらの認証情報を使用できるようにすることができます。しかし、その場合、認証情報を管理し、各インスタンスに安全に渡されるようにし、認証情報をローテーションする時期が来たときに各 Amazon EC2 インスタンスを更新する必要があります。これは多くの追加作業になります。
代わりに、Amazon EC2 インスタンスで実行されるアプリケーションの一時的な認証情報を管理するために、Identity and Access Management (IAM) ロールを使用できますし、使用する必要があります。ロールを使用する場合、長期的な認証情報(ユーザー名とパスワード、またはアクセスキーなど)を Amazon EC2 インスタンスに配布する必要はありません。代わりに、ロールは、アプリケーションが他の AWS リソースを呼び出すときに使用できる一時的なアクセス許可を提供します。Amazon EC2 インスタンスを起動するときに、そのインスタンスに関連付ける IAM ロールを指定します。インスタンスで実行されるアプリケーションは、ロールによって提供される一時的な認証情報を使用して API リクエストに署名できます。
AWS アカウントに関連付けられている IAM ロールには、さまざまなシナリオに対して以下の IAM 権限が必要です。
同じ AWS ゾーン内の IPv4 アドレスを持つ HA ペア:
"ec2:DescribeInstances",
"ec2:AssignPrivateIpAddresses",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
同じ AWS ゾーン内の IPv6 アドレスを持つ HA ペア:
"ec2:DescribeInstances",
"ec2:AssignIpv6Addresses",
"ec2:UnassignIpv6Addresses",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
同じ AWS ゾーン内の IPv4 および IPv6 アドレスの両方を持つ HA ペア:
"ec2:DescribeInstances",
"ec2:AssignPrivateIpAddresses",
"ec2:AssignIpv6Addresses",
"ec2:UnassignIpv6Addresses",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
異なる AWS ゾーン間の Elastic IP アドレスを持つ HA ペア:
"ec2:DescribeInstances",
"ec2:DescribeAddresses",
"ec2:AssociateAddress",
"ec2:DisassociateAddress",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
異なる AWS ゾーン間のプライベート IP アドレスを持つ HA ペア:
"ec2:DescribeInstances",
"ec2:DescribeRouteTables",
"ec2:DeleteRoute",
"ec2:CreateRoute",
"ec2:ModifyNetworkInterfaceAttribute",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
異なる AWS ゾーン間のプライベート IP アドレスと Elastic IP アドレスの両方を持つ HA ペア:
"ec2:DescribeInstances",
"ec2:DescribeAddresses",
"ec2:AssociateAddress",
"ec2:DisassociateAddress",
"ec2:DescribeRouteTables",
"ec2:DeleteRoute",
"ec2:CreateRoute",
"ec2:ModifyNetworkInterfaceAttribute",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
AWS バックエンドの自動スケーリング:
"ec2:DescribeInstances",
"autoscaling:*",
"sns:CreateTopic",
"sns:DeleteTopic",
"sns:ListTopics",
"sns:Subscribe",
"sqs:CreateQueue",
"sqs:ListQueues",
"sqs:DeleteMessage",
"sqs:GetQueueAttributes",
"sqs:SetQueueAttributes",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
注意点:
  • 上記の機能のいずれかの組み合わせを使用する場合は、各機能の IAM 権限の組み合わせを使用してください。
  • Citrix CloudFormation テンプレートを使用する場合、IAM ロールは自動的に作成されます。このテンプレートでは、すでに作成されている IAM ロールを選択することはできません。
  • GUI を介して VPX インスタンスにログオンすると、IAM ロールに必要な特権を構成するためのプロンプトが表示されます。すでに特権を構成している場合は、このプロンプトを無視してください。
  • IAMロールは、スタンドアロンデプロイと高可用性デプロイの両方で必須です。
Related information

IAMロールを作成する

この手順では、AWSバックエンドのオートスケーリング機能用のIAMロールを作成する方法について説明します。
注:
他の機能に対応するIAMロールを作成する場合も、同じ手順に従うことができます。
  1. EC2のAWSマネジメントコンソールにログオンします。
  2. EC2インスタンスページに移動し、ADCインスタンスを選択します。
    ADCインスタンスを選択(/en-us/vpx/media/iam-select-adc-instance.png)
  3. アクション > セキュリティ > IAMロールの変更に移動します。
    アクション(/en-us/vpx/media/iam-actions.png)
  4. IAMロールの変更ページで、既存のIAMロールを選択するか、IAMロールを作成できます。
  5. IAMロールを作成するには、次の手順に従います。
    1. IAMロールの変更ページで、新しいIAMロールの作成をクリックします。
      IAMロールの作成(/en-us/vpx/media/iam-create-new-iam-role.png)
    2. ロールページで、ロールの作成をクリックします。
      ロールを作成(/en-us/vpx/media/iam-create-role.png)
    3. 信頼されたエンティティタイプの下にあるAWSサービスと、一般的なユースケースの下にあるEC2を選択し、次へをクリックします。
      信頼されたエンティティ(/en-us/vpx/media/iam-trusted-entity.png)
    4. アクセス許可の追加ページで、ポリシーの作成をクリックします。
      ポリシーを作成(/en-us/vpx/media/iam-create-policy.png)
    5. JSONタブをクリックしてJSONエディターを開きます。
      JSON(/en-us/vpx/media/iam-json.png)
    6. JSONエディターで、すべてを削除し、使用したい機能のIAMアクセス許可を貼り付けます。
      たとえば、AWSバックエンドの自動スケーリング機能の場合、次のIAMアクセス許可を貼り付けます。
      {
          "Version": "2012-10-17",
          "Statement": [
              {
                  "Sid": "VisualEditor0",
                  "Effect": "Allow",
                  "Action": [
                      "ec2:DescribeInstances",
                      "autoscaling:*",
                      "sns:CreateTopic",
                      "sns:DeleteTopic",
                      "sns:ListTopics",
                      "sns:Subscribe",
                      "sqs:CreateQueue",
                      "sqs:ListQueues",
                      "sqs:DeleteMessage",
                      "sqs:GetQueueAttributes",
                      "sqs:SetQueueAttributes",
                      "iam:SimulatePrincipalPolicy",
                      "iam:GetRole"
                  ],
                  "Resource": "*"
              }
          ]
      }
      提供する「Version」キーと値のペアが、AWSによって自動的に生成されるものと同じであることを確認してください。
    7. 次へ: レビューをクリックします。
      IAMをレビュー(/en-us/vpx/media/iam-next-review.png)
    8. ポリシーのレビュータブで、ポリシーに有効な名前を付け、ポリシーの作成をクリックします。
      ポリシーをレビュー(/en-us/vpx/media/iam-review-policy.png)
    9. IDおよびアクセス管理ページで、作成したポリシー名をクリックします。ポリシーを展開してJSON全体を確認し、次へをクリックします。
      IDおよびアクセス管理
    10. 名前、確認、作成ページで、ロールに有効な名前を付けます。
      IAM情報の確認
    11. ロールの作成をクリックします。
      ロールの作成
  6. 手順1、2、3を繰り返します。更新ボタンを選択し、ドロップダウンメニューを選択して、作成したロールを表示します。
    ロール作成の確認
  7. IAMロールの更新をクリックします。
    IAMロールの更新

IAMポリシーシミュレーターでIAMポリシーをテストする

IAMポリシーシミュレーターは、IAMアクセス制御ポリシーを本番環境にコミットする前にその効果をテストできるツールです。これにより、権限の検証とトラブルシューティングが容易になります。
  1. IAMページで、テストするIAMロールを選択し、シミュレートをクリックします。次の例では、「ADC_IAMRole」がIAMロールです。
    IAMシミュレーター
  2. IAMポリシーシミュレーターコンソールで、モードとして既存のポリシーを選択します。
    IAMシミュレーターモード
  3. Users, Groups and Rolesタブで、ドロップダウンメニューからRolesを選択し、既存のロールを選択します。
    既存のロールを選択
  4. 既存のロールを選択したら、その下にある既存のポリシーを選択します。
    既存のポリシーを選択
  5. ポリシーを選択すると、画面の左側に正確なJSONが表示されます。Select actionsドロップダウンメニューで目的のアクションを選択します。
    目的のポリシーを選択
  6. Run simulationをクリックします。
    目的のポリシーを選択
詳細については、AWS IAMドキュメントを参照してください。

その他の参照