PlateSpin Migrateを使用してワークロードをAWSにマイグレートするには、AWS VPCへのマイグレーションを実行するための適切なIAM役割と必要な権限を持つAWS Identity and Access Management (IAM)ユーザが、AWSアカウント内に必要です。このユーザには、AWSアクセスキーとAWSシークレットアクセスキーも必要です。
次のいずれかの方法を使用して、新しいIAMポリシーを作成できます。
PlateSpin AWS役割ツール: 詳細については、セクション 8.9.1, AWS役割ツールによる新しいIAMポリシーの作成を参照してください。
AWS管理コンソール: 詳細については、セクション 8.9.2, AWS管理コンソールによるIAMポリシーの作成を参照してください。
PlateSpin MigrateはAWS役割ツール(AWSRoleTool.exe)を提供しており、これにより管理者ユーザは、PlateSpin Migrateが定義するデフォルトポリシー(PolicyJSON.txt)に基づいて新しいIAMポリシーを作成し、IAMユーザ(既存または新規のユーザ)をそのポリシーに割り当てできるようになります。PlateSpin Migrate AWS役割ツール(AWSRoleTool.exe)は、Migrate-Install-folder\PlateSpin Migrate Server\bin\AWSRolesToolディレクトリに含まれています。
デフォルトでは、PlateSpin Migrateが定義するPolicyJSON.txtファイルに、IAMユーザがPlateSpin Migrateを使用してワークロードをAWSにマイグレートするための必要最小限の権限が含まれています。デフォルトポリシーでIAMユーザに対して定義されている最小限の権限については、セクション 8.9.3, IAMユーザに対する最小限の権限の定義を参照してください。
AWS役割ツールを使用して新しいポリシーを作成する場合、新しいポリシーはこのデフォルトポリシーのレプリカとして作成され、デフォルトポリシーに一覧されているすべての権限を持つことになります。ただし、デフォルトポリシーに一覧されたものではなく、変更された権限で新しいポリシーを作成することもできます。変更された権限で新しいポリシーを作成するには、PolicyJSON.txtファイルを編集することで、新しいポリシーに一覧する権限のみをリストに含むようにして、その後ポリシーを作成します。
メモ:PolicyJSON.txtファイルの編集後、PlateSpin Migrateが定義するデフォルトポリシーに戻す場合には、編集されたPolicyJSON.txtファイルを削除します。PolicyJSON.txtファイルは、AWS役割ツールの実行時に、Migrate-Install-folder\PlateSpin Migrate Server\bin\AWSRolesToolディレクトリにあるデフォルトの権限を使用して再作成されます。
PlateSpin Migrate Serverホストに管理者としてログインします。
コマンドプロンプトを開き、AWS役割ツールの場所に移動し、次のコマンドを実行します。
AWSRoleTool.exe
メモ:デフォルトポリシー(PolicyJSON.txt)がMigrate-Install-folder\PlateSpin Migrate Server\bin\AWSRolesToolディレクトリ内に提供されていない場合、PolicyJSON.txtファイルは、PlateSpin Migrateが推奨するデフォルト権限を使用して再作成されます。
IAMポリシーとユーザを作成する権限を持つAWSユーザのAWSアクセスキーとAWSシークレットアクセスキーを入力します。
作成するAWSポリシーの名前を入力します。
このポリシーの割り当て先となる新規または既存のユーザの名前を入力します。ツールによって、新しいポリシーがPolicyJSON.txtファイルのレプリカとして作成され、このポリシーが指定されたユーザに割り当てられ、そのユーザのアクセスキーとシークレットキーの資格情報が設定されます。
資格情報はファイルに保存することも、コマンドプロンプトに表示することもできます。
資格情報をファイルに保存するには、「y」と入力します。 資格情報を含むファイルのパスが表示されます。
資格情報をコマンドプロンプトに表示するには、「n」と入力して、表示された資格情報をメモします。
(オプション) PlateSpin Migrateが定義するデフォルトポリシーに戻すには、編集済みのPolicyJSON.txtファイルを削除し、AWS役割ツールを実行して、デフォルト権限によってPolicyJSON.txtファイルを再作成します。
AWS管理コンソールを使用してIAMポリシーを作成または編集し、そのポリシーにユーザを割り当てることでユーザ権限を定義できます。詳細については、Creating IAM Policiesを参照してください。
PlateSpin Migrateでは、IAMユーザがPlateSpin Migrateを使用してワークロードをAWSにマイグレートするための必要最小限の権限を含むデフォルトポリシー(PolicyJSON.txt)を提供しています。デフォルトポリシーファイルでIAMユーザに対して定義されている最小限の権限については、セクション 8.9.3, IAMユーザに対する最小限の権限の定義を参照してください。
AWS管理コンソールを使用して、このデフォルトポリシーに含まれる推奨権限による新しいポリシーを作成できます。
PlateSpin Migrateでは、IAMユーザがPlateSpin Migrateを使用してワークロードをAWSにマイグレートするための必要最小限の権限をデフォルトで含んでいるPolicyJSON.txtファイルを提供しています。AWS役割ツールを使用して新しいポリシーを作成する場合、新しいポリシーはこのデフォルトポリシーのレプリカとして作成され、デフォルトポリシーに一覧されているすべての権限を持つことになります。
PolicyJSON.txtファイルの内容は次のとおりです。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "ec2:TerminateInstances", "ec2:DeleteTags", "ec2:StartInstances", "ec2:CreateTags", "kms:DescribeKey", "ec2:RunInstances", "ec2:StopInstances" ], "Resource": [ "arn:aws:kms:*:*:key/*", "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:volume/*", "arn:aws:ec2:*:*:security-group/*", "arn:aws:ec2:*:*:network-interface/*", "arn:aws:ec2:*::image/*" ] }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "ec2:DeregisterImage", "ec2:DeleteSnapshot", "ec2:DescribeInstances", "ec2:CreateImage", "ec2:DescribeSnapshots", "ec2:DescribePlacementGroups", "ec2:DescribeSecurityGroups", "pricing:GetProducts", "ec2:DescribeImages", "ec2:DescribeAvailabilityZones", "ec2:DescribeVpcs", "ec2:DescribeVolumes", "kms:ListAliases", "ec2:DescribeAccountAttributes", "ec2:DescribeReservedInstances", "ec2:ModifyInstanceAttribute", "ec2:DescribeSubnets", "ec2:DescribeKeyPairs", "ec2:DescribeInstanceStatus" ], "Resource": "*" }, { "Sid": "VisualEditor2", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:Encrypt", "ec2:CreateVolume" ], "Resource": [ "arn:aws:ec2:*:*:volume/*", "arn:aws:kms:*:*:key/*" ] }, { "Sid": "VisualEditor3", "Effect": "Allow", "Action": [ "ec2:AttachVolume", "kms:CreateGrant" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:volume/*", "arn:aws:kms:*:*:key/*" ] }, { "Sid": "VisualEditor4", "Effect": "Allow", "Action": "ec2:DetachVolume", "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:volume/*" ] }, { "Sid": "VisualEditor5", "Effect": "Allow", "Action": "ec2:DeleteVolume", "Resource": "arn:aws:ec2:*:*:volume/*" }, { "Sid": "VisualEditor6", "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:key-pair/*", "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*::snapshot/*", "arn:aws:ec2:*:*:launch-template/*", "arn:aws:ec2:*:*:volume/*", "arn:aws:ec2:*:*:security-group/*", "arn:aws:ec2:*:*:placement-group/*", "arn:aws:ec2:*:*:network-interface/*", "arn:aws:ec2:*::image/*" ] } ] }