Identity and Access Management for Amazon WorkSpaces - Amazon WorkSpaces

英語の翻訳が提供されている場合で、内容が矛盾する場合には、英語版がオリジナルとして取り扱われます。翻訳は機械翻訳により提供されています。

Identity and Access Management for Amazon WorkSpaces

デフォルトでは、IAM ユーザーには Amazon WorkSpaces のリソースおよびオペレーションのためのアクセス権限がありません。IAM ユーザーに Amazon WorkSpaces のリソース管理を許可するには、アクセス権限を明示的に付与する IAM ポリシーを作成し、このポリシーを、アクセス権限を必要とする IAM ユーザーまたはグループにアタッチする必要があります。詳細については、以下を参照してください。 IAM ポリシーについては、を参照してください。 ポリシーと権限IAM ユーザーガイド ガイドを参照してください。

Amazon WorkSpaces はまた、Amazon WorkSpaces サービスが必要なリソースにアクセスするのを許可する IAM ロールを作成します。

注記

Amazon WorkSpaces は、WorkSpace への IAM 認証情報のプロビジョニング (インスタンスプロファイルなど) をサポートしていません。

詳細については、以下を参照してください。 IAM、を参照 IDおよびアクセス管理(IAM) および IAM ユーザーガイド. IAM権限ポリシーで使用するWorkSpaces固有のリソース、アクション、条件コンテキストキーは、 Amazon WorkSpacesのアクション、リソース、条件キーIAM ユーザーガイド.

IAM ポリシーの作成に役立つツールについては、「 AWS Policy Generator」を参照してください。また、IAM Policy Simulator を使用して、ポリシーが AWS への特定のリクエストを許可するか拒否するかをテストすることもできます。

例 1 すべて実行 Amazon WorkSpaces タスク

次のポリシーステートメントは、ディレクトリの作成や管理などすべての IAM タスクを実行するためのアクセス許可を Amazon WorkSpaces ユーザーに付与します。また、クイックセットアップ手順を実行するアクセス許可も付与されます。

Amazon WorkSpaces は、API およびコマンドラインツールを使用するときに ActionResource エレメントを完全にサポートしますが、Amazon WorkSpaces コンソールを正常に使用するためには、その両方を "*" に設定する必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "workspaces:*", "ds:*", "iam:PassRole", "iam:GetRole", "iam:CreateRole", "iam:PutRolePolicy", "kms:ListAliases", "kms:ListKeys", "ec2:CreateVpc", "ec2:CreateSubnet", "ec2:CreateNetworkInterface", "ec2:CreateInternetGateway", "ec2:CreateRouteTable", "ec2:CreateRoute", "ec2:CreateTags", "ec2:CreateSecurityGroup", "ec2:DescribeInternetGateways", "ec2:DescribeSecurityGroups", "ec2:DescribeRouteTables", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeNetworkInterfaces", "ec2:DescribeAvailabilityZones", "ec2:AttachInternetGateway", "ec2:AssociateRouteTable", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:DeleteSecurityGroup", "ec2:DeleteNetworkInterface", "ec2:RevokeSecurityGroupEgress", "ec2:RevokeSecurityGroupIngress", "workdocs:RegisterDirectory", "workdocs:DeregisterDirectory", "workdocs:AddUserToGroup" ], "Resource": "*" } ] }

例 2. WorkSpace固有のタスクの実行

次のポリシーステートメントは、WorkSpaces の起動や削除など、WorkSpace 固有のタスクを実行するためのアクセス権限を IAM ユーザーに付与します。ポリシーステートメントで、ds:* アクションは広範なアクセス許可 — アカウント内のすべての Directory Services オブジェクトの完全なコントロールを付与します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "workspaces:*", "ds:*", "iam:PutRolePolicy" ], "Resource": "*" } ] }

Amazon WorkSpaces 内のユーザーが Amazon WorkDocs を有効にすることも許可するには、次の例に示すように workdocs オペレーションを追加します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "workspaces:*", "ds:*", "workdocs:AddUserToGroup" ], "Resource": "*" } ] }

ユーザーが Launch WorkSpaces ウィザードを使用することも許可するには、次の例に示すように kms オペレーションを追加します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "workspaces:*", "ds:*", "workdocs:AddUserToGroup", "kms:ListAliases", "kms:ListKeys" ], "Resource": "*" } ] }

Creating the workspaces_DefaultRole Role

workspaces_DefaultRole ロールが存在しない場合は、API を使用してディレクトリを登録する前にそのロールを作成する必要があります。

workspaces_DefaultRole ロールを作成するには

  1. AWS マネジメントコンソール にサインインし、IAM コンソール(https://console.aws.amazon.com/iam/)を開きます。

  2. 左側のナビゲーションペインで、[Roles] を選択します。

  3. [Create role] を選択します。

  4. [Select type of trusted entity] で、[Another AWS account] を選択します。

  5. [Account ID] には、ハイフンやスペースを入れずにアカウント ID を入力します。

  6. [Options] では、多要素認証 (MFA) を指定しないでください。

  7. [次] を選択します。アクセス許可

  8. [Attach permissions policies] ページで、AWS 管理ポリシー、[AmazonWorkSpacesServiceAccess] および [AmazonWorkSpacesSelfServiceAccess] を選択します。

  9. [Set permissions boundary] では、workspaces_DefaultRole ロールにアタッチされているポリシーと競合する可能性があるため、アクセス許可の境界を使用しないことをお勧めします。このような競合が発生すると、ロールに必要な特定の許可がブロックされる可能性があります。

  10. [次] を選択します。タグ

  11. [Add tags (optional)] ページで、必要に応じてタグを追加します。

  12. [次] を選択します。確認

  13. [Review] ページの [Role name] に、workspaces_DefaultRole を入力します。

  14. (オプション) [ロールの説明] に、説明を入力します。

  15. [Create Role (ロールの作成)] を選択します。

  16. workspaces_DefaultRole ロールの [Summary] ページで [Trust relationships] タブを選択します。

  17. [信頼関係] タブで、[信頼関係の編集] を選択します。

  18. [Edit Trust Relationship] ページで、既存のポリシーステートメントを次のステートメントに置き換えます。

    { "Statement": [ { "Effect": "Allow", "Principal": { "Service": "workspaces.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  19. [Update Trust Policy] を選択します。

Specifying Amazon WorkSpaces Resources in an IAM Policy

ポリシーステートメントの Resource 要素で Amazon WorkSpaces リソースを指定するためには、リソースの Amazon リソースネーム (ARN) を使用します。Amazon WorkSpaces ポリシーステートメントの Action 要素に指定された API アクションを使用する権限を許可または拒否することで、IAM リソースへのアクセスを制御できます。Amazon WorkSpaces は WorkSpaces、バンドル、IP グループ、およびディレクトリの ARN を定義します。

WorkSpace ARN

WorkSpace ARN には、次の例に示す構文があります。

arn:aws:workspaces:region:account_id:workspace/workspace_identifier
region

WorkSpace があるリージョン(例: us-east-2)。

account_id

ハイフンなしの AWS アカウントの ID(例: 123456789012)。

workspace_identifier

WorkSpace の ID(例: ws-0123456789)。

次に示すのは、特定の WorkSpace を識別するポリシーステートメントの Resource 要素の形式です。

"Resource": "arn:aws:workspaces:region:account_id:workspace/workspace_identifier"

「*」ワイルドカードを使用して、特定リージョンの特定のアカウントに属するすべての WorkSpace を指定できます。

Bundle ARN

バンドル ARN には、次の例に示す構文があります。

arn:aws:workspaces:region:account_id:workspacebundle/bundle_identifier
region

WorkSpace があるリージョン(例: us-east-2)。

account_id

ハイフンなしの AWS アカウントの ID(例: 123456789012)。

bundle_identifier

WorkSpace バンドルの ID(例: wsb-0123456789)。

次に示すのは、特定のバンドルを識別するポリシーステートメントの Resource 要素の形式です。

"Resource": "arn:aws:workspaces:region:account_id:workspacebundle/bundle_identifier"

「*」ワイルドカードを使用して、特定リージョンの特定のアカウントに属するすべてのバンドルを指定できます。

IP Group ARN

IP グループ ARN には、次の例に示す構文があります。

arn:aws:workspaces:region:account_id:workspaceipgroup/ipgroup_identifier
region

WorkSpace があるリージョン(例: us-east-2)。

account_id

ハイフンなしの AWS アカウントの ID(例: 123456789012)。

ipgroup_identifier

IP グループの ID (例: wsipg-a1bcd2efg)。

次に示すのは、特定の IP グループを識別するポリシーステートメントの Resource 要素の形式です。

"Resource": "arn:aws:workspaces:region:account_id:workspaceipgroup/ipgroup_identifier"

「*」ワイルドカードを使用して、特定リージョンの特定のアカウントに属するすべての IP グループを指定できます。

Directory ARN

ディレクトリ ARN には、次の例に示す構文があります。

arn:aws:workspaces:region:account_id:directory/directory_identifier
region

WorkSpace があるリージョン(例: us-east-2)。

account_id

ハイフンなしの AWS アカウントの ID(例: 123456789012)。

directory_identifier

ディレクトリの ID (例: d-12345a67b8)。

次に示すのは、特定のディレクトリを識別するポリシーステートメントの Resource 要素の形式です。

"Resource": "arn:aws:workspaces:region:account_id:directory/directory_identifier"

「*」ワイルドカードを使用して、特定リージョンの特定のアカウントに属するすべてのディレクトリを指定できます。

API Actions with No Support for Resource-Level Permissions

リソース ARN は、次の API アクションで指定することはできません。

  • AssociateIpGroups

  • CreateIpGroup

  • CreateTags

  • DeleteTags

  • DeleteWorkspaceImage

  • DescribeAccount

  • DescribeAccountModifications

  • DescribeTags

  • DescribeWorkspaceDirectories

  • DescribeWorkspaceImages

  • DescribeWorkspaces

  • DescribeWorkspacesConnectionStatus

  • DisassociateIpGroups

  • ImportWorkspaceImage

  • ListAvailableManagementCidrRanges

  • ModifyAccount

リソースレベルの権限をサポートしていない API アクションの場合は、次の例に示すように、Resource ステートメントを指定する必要があります。

"Resource": "*"