翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
の Identity and Access Management WorkSpaces
デフォルトでは、IAMユーザーには WorkSpaces リソースとオペレーションに対するアクセス許可はありません。IAM ユーザーが WorkSpaces リソースを管理できるようにするには、アクセス許可を明示的に付与する IAMポリシーを作成し、それらのアクセス許可を必要とするIAMユーザーまたはグループにポリシーをアタッチする必要があります。
注記
Amazon WorkSpaces は、 へのIAM認証情報のプロビジョニング WorkSpace (インスタンスプロファイルなど) をサポートしていません。
アクセス権限を付与するには、ユーザー、グループ、またはロールにアクセス許可を追加します。
-
のユーザーとグループ AWS IAM Identity Center:
アクセス許可セットを作成します。の「アクセス許可セットの作成」の手順に従います。 AWS IAM Identity Center ユーザーガイド。
-
ID プロバイダーIAMを通じて で管理されるユーザー:
ID フェデレーションのロールを作成します。「 IAMユーザーガイド」の「サードパーティー ID プロバイダーのロールの作成 (フェデレーション)」の手順に従います。
-
IAM ユーザー:
-
ユーザーが担当できるロールを作成します。「 IAMユーザーガイド」のIAM「 ユーザーのロールを作成する」の手順に従います。
-
(お奨めできない方法) ポリシーをユーザーに直接アタッチするか、ユーザーをユーザーグループに追加する。IAM ユーザーガイドの「ユーザーへのアクセス許可の追加 (コンソール)」の指示に従います。
-
の追加リソースは次のとおりですIAM。
-
IAM ポリシーの詳細については、「 IAMユーザーガイド」の「ポリシーとアクセス許可」を参照してください。
-
の詳細についてはIAM、「 Identity and Access Management (IAM)
」およびIAM「 ユーザーガイド」を参照してください。 -
アクセスIAM許可ポリシーで使用する WorkSpaces固有のリソース、アクション、および条件コンテキストキーの詳細については、IAM「 ユーザーガイド」の「Amazon のアクション、リソース、および条件キー WorkSpaces」を参照してください。
-
IAM ポリシーの作成に役立つツールについては、「」を参照してください。 AWS ポリシージェネレーター
。Policy IAM Simulator を使用して、ポリシーが への特定のリクエストを許可または拒否するかどうかをテストすることもできます。 AWS.
内容
ポリシーの例
次の例は、IAMユーザーが Amazon に対して持つアクセス許可を制御するために使用できるポリシーステートメントを示しています WorkSpaces。
次のポリシーステートメントは、個人タスクとプールタスクを実行する WorkSpacesアクセス許可を IAM ユーザーに付与します。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ds:*", "workspaces:*", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:DescribeScalableTargets", "application-autoscaling:DescribeScalingActivities", "application-autoscaling:DescribeScalingPolicies", "application-autoscaling:DescribeScheduledActions", "application-autoscaling:PutScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:RegisterScalableTarget", "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarms", "cloudwatch:PutMetricAlarm", "ec2:AssociateRouteTable", "ec2:AttachInternetGateway", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateInternetGateway", "ec2:CreateNetworkInterface", "ec2:CreateRoute", "ec2:CreateRouteTable", "ec2:CreateSecurityGroup", "ec2:CreateSubnet", "ec2:CreateTags", "ec2:CreateVpc", "ec2:DeleteNetworkInterface", "ec2:DeleteSecurityGroup", "ec2:DescribeAvailabilityZones", "ec2:DescribeInternetGateways", "ec2:DescribeNetworkInterfaces", "ec2:DescribeRouteTables", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:RevokeSecurityGroupEgress", "ec2:RevokeSecurityGroupIngress", "iam:AttachRolePolicy", "iam:CreatePolicy", "iam:CreateRole", "iam:GetRole", "iam:ListRoles", "iam:PutRolePolicy", "kms:ListAliases", "kms:ListKeys", "secretsmanager:ListSecrets", "tag:GetResources", "workdocs:AddUserToGroup", "workdocs:DeregisterDirectory", "workdocs:RegisterDirectory", "sso-directory:SearchUsers", "sso:CreateApplication", "sso:DeleteApplication", "sso:DescribeApplication", "sso:DescribeInstance", "sso:GetApplicationGrant", "sso:ListInstances", "sso:PutApplicationAssignment", "sso:PutApplicationAssignmentConfiguration", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationGrant" ], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "workspaces.amazonaws.com" } } } ] }
次のポリシーステートメントは、すべての WorkSpaces Personal タスクを実行するアクセス許可を IAM ユーザーに付与します。
Amazon は、 Action
および コマンドラインツールを使用するときに APIおよび Resource
要素 WorkSpaces を完全にサポートしていますが、 WorkSpaces から Amazon を使用するには AWS Management Consoleでは、IAMユーザーは以下のアクションとリソースに対するアクセス許可を持っている必要があります。
-
アクション: "
workspaces:*"
と"ds:*"
-
リソース:
"Resource": "*"
次のポリシー例は、 WorkSpaces から Amazon の使用をIAMユーザーに許可する方法を示しています。 AWS Management Console.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "workspaces:*", "ds:*", "iam:GetRole", "iam:CreateRole", "iam:PutRolePolicy", "iam:CreatePolicy", "iam:AttachRolePolicy", "iam:ListRoles", "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", "secretsmanager:ListSecrets", "sso-directory:SearchUsers", "sso:CreateApplication", "sso:DeleteApplication", "sso:DescribeApplication", "sso:DescribeInstance", "sso:GetApplicationGrant", "sso:ListInstances", "sso:PutApplicationAssignment", "sso:PutApplicationAssignmentConfiguration", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationGrant" ], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "workspaces.amazonaws.com" } } } ] }
次のポリシーステートメントは、すべての WorkSpaces プールタスクを実行するアクセス許可を IAM ユーザーに付与します。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "workspaces:*", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:DescribeScalableTargets", "application-autoscaling:DescribeScalingActivities", "application-autoscaling:DescribeScalingPolicies", "application-autoscaling:DescribeScheduledActions", "application-autoscaling:PutScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:RegisterScalableTarget", "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarms", "cloudwatch:PutMetricAlarm", "ec2:CreateSecurityGroup", "ec2:CreateTags", "ec2:DescribeInternetGateways", "ec2:DescribeRouteTables", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "iam:AttachRolePolicy", "iam:CreatePolicy", "iam:CreateRole", "iam:GetRole", "iam:ListRoles", "iam:PutRolePolicy", "secretsmanager:ListSecrets", "tag:GetResources" ], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "workspaces.amazonaws.com" } } } { "Action": "iam:CreateServiceLinkedRole", "Effect": "Allow", "Resource": "arn:aws:iam::*:role/aws-service-role/workspaces.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_WorkSpacesPool", "Condition": { "StringLike": { "iam:AWSServiceName": "workspaces.application-autoscaling.amazonaws.com" } } } ] }
次のポリシーステートメントは、Bring Your Own License (BYOL) の作成に必要な Amazon タスクを含む、すべての WorkSpacesEC2タスクを実行するアクセス許可を IAM ユーザーに付与します WorkSpaces。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ds:*", "workspaces:*", "ec2:AssociateRouteTable", "ec2:AttachInternetGateway", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateInternetGateway", "ec2:CreateNetworkInterface", "ec2:CreateRoute", "ec2:CreateRouteTable", "ec2:CreateSecurityGroup", "ec2:CreateSubnet", "ec2:CreateTags", "ec2:CreateVpc", "ec2:DeleteNetworkInterface", "ec2:DeleteSecurityGroup", "ec2:DescribeAvailabilityZones", "ec2:DescribeImages", "ec2:DescribeInternetGateways", "ec2:DescribeNetworkInterfaces", "ec2:DescribeRouteTables", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:ModifyImageAttribute", "ec2:RevokeSecurityGroupEgress", "ec2:RevokeSecurityGroupIngress", "iam:CreateRole", "iam:GetRole", "iam:PutRolePolicy", "kms:ListAliases", "kms:ListKeys", "workdocs:AddUserToGroup", "workdocs:DeregisterDirectory", "workdocs:RegisterDirectory" ], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "workspaces.amazonaws.com" } } } ] }
IAM ポリシーで WorkSpaces リソースを指定する
ポリシーステートメントの Resource
要素で WorkSpaces リソースを指定するには、リソースの Amazon リソースネーム (ARN) を使用します。 WorkSpaces リソースへのアクセスを制御するには、IAMポリシーステートメントの Action
要素で指定されたAPIアクションを使用するアクセス許可を許可または拒否します。、バンドル WorkSpaces、IP グループ、およびディレクトリARNsの WorkSpaces を定義します。
WorkSpace ARN には、次の例に示す構文があります。
arn:aws:workspaces:region
:account_id
:workspace/workspace_identifier
- region
-
WorkSpace が属するリージョン (例:
us-east-1
)。 - account_id
-
の ID AWS アカウント。ハイフンなし (例:
123456789012
)。 - workspace_identifier
-
の ID WorkSpace (例:
ws-a1bcd2efg
)。
以下は、特定の を識別するポリシーステートメントの Resource
要素の形式です WorkSpace。
"Resource": "arn:aws:workspaces:region
:account_id
:workspace/workspace_identifier
"
*
ワイルドカードを使用して、特定のリージョンの特定のアカウント WorkSpaces に属するすべての を指定できます。
WorkSpace プールARNには、次の例に示す構文があります。
arn:aws:workspaces:region
:account_id
:workspacespool/workspacespool_identifier
- region
-
WorkSpace が属するリージョン (例:
us-east-1
)。 - account_id
-
の ID AWS アカウント。ハイフンなし (例:
123456789012
)。 - workspacespool_identifier
-
WorkSpace プールの ID (例:
ws-a1bcd2efg
)。
以下は、特定の を識別するポリシーステートメントの Resource
要素の形式です WorkSpace。
"Resource": "arn:aws:workspaces:region
:account_id
:workspacespool/workspacespool_identifier
"
*
ワイルドカードを使用して、特定のリージョンの特定のアカウント WorkSpaces に属するすべての を指定できます。
WorkSpace イメージARNには、次の例に示す構文があります。
arn:aws:workspaces:region
:account_id
:workspaceimage/image_identifier
- region
-
WorkSpace イメージがあるリージョン (例:
us-east-1
)。 - account_id
-
の ID AWS アカウント。ハイフンなし (例:
123456789012
)。 - bundle_identifier
-
WorkSpace イメージの ID (例:
wsi-a1bcd2efg
)。
次に示すのは、特定のイメージを識別するポリシーステートメントの Resource
要素の形式です。
"Resource": "arn:aws:workspaces:region
:account_id
:workspaceimage/image_identifier
"
「*
」ワイルドカードを使用して、特定リージョンの特定のアカウントに属するすべてのイメージを指定できます。
バンドルARNには、次の例に示す構文があります。
arn:aws:workspaces:region
:account_id
:workspacebundle/bundle_identifier
- region
-
WorkSpace が属するリージョン (例:
us-east-1
)。 - account_id
-
の ID AWS アカウント。ハイフンなし (例:
123456789012
)。 - bundle_identifier
-
WorkSpace バンドルの ID (例:
wsb-a1bcd2efg
)。
次に示すのは、特定のバンドルを識別するポリシーステートメントの Resource
要素の形式です。
"Resource": "arn:aws:workspaces:region
:account_id
:workspacebundle/bundle_identifier
"
「*
」ワイルドカードを使用して、特定リージョンの特定のアカウントに属するすべてのバンドルを指定できます。
IP グループARNには、次の例に示す構文があります。
arn:aws:workspaces:region
:account_id
:workspaceipgroup/ipgroup_identifier
- region
-
WorkSpace が属するリージョン (例:
us-east-1
)。 - account_id
-
の ID AWS アカウント。ハイフンなし (例:
123456789012
)。 - ipgroup_identifier
-
IP グループの ID (例:
wsipg-a1bcd2efg
)。
次に示すのは、特定の IP グループを識別するポリシーステートメントの Resource
要素の形式です。
"Resource": "arn:aws:workspaces:region
:account_id
:workspaceipgroup/ipgroup_identifier
"
「*
」ワイルドカードを使用して、特定リージョンの特定のアカウントに属するすべての IP グループを指定できます。
ディレクトリARNには、次の例に示す構文があります。
arn:aws:workspaces:region
:account_id
:directory/directory_identifier
- region
-
WorkSpace が属するリージョン (例:
us-east-1
)。 - account_id
-
の ID AWS アカウント。ハイフンなし (例:
123456789012
)。 - directory_identifier
-
ディレクトリの ID (例:
d-12345a67b8
)。
次に示すのは、特定のディレクトリを識別するポリシーステートメントの Resource
要素の形式です。
"Resource": "arn:aws:workspaces:region
:account_id
:directory/directory_identifier
"
「*
」ワイルドカードを使用して、特定リージョンの特定のアカウントに属するすべてのディレクトリを指定できます。
接続エイリアスARNには、次の例に示す構文があります。
arn:aws:workspaces:region
:account_id
:connectionalias/connectionalias_identifier
- region
-
接続エイリアスがあるリージョン (例:
us-east-1
)。 - account_id
-
の ID AWS アカウント。ハイフンなし (例:
123456789012
)。 - connectionalias_identifier
-
接続エイリアスの ID (例:
wsca-12345a67b8
)。
次に示すのは、特定の接続エイリアスを識別するポリシーステートメントの Resource
要素の形式です。
"Resource": "arn:aws:workspaces:region
:account_id
:connectionalias/connectionalias_identifier
"
*
ワイルドカードを使用して、特定リージョンの特定のアカウントに属するすべての接続エイリアスを指定できます。
ARN 次のAPIアクションではリソースを指定できません。
-
AssociateIpGroups
-
CreateIpGroup
-
CreateTags
-
DeleteTags
-
DeleteWorkspaceImage
-
DescribeAccount
-
DescribeAccountModifications
-
DescribeIpGroups
-
DescribeTags
-
DescribeWorkspaceDirectories
-
DescribeWorkspaceImages
-
DescribeWorkspaces
-
DescribeWorkspacesConnectionStatus
-
DisassociateIpGroups
-
ImportWorkspaceImage
-
ListAvailableManagementCidrRanges
-
ModifyAccount
リソースレベルのアクセス許可をサポートしていないAPIアクションの場合は、次の例に示すリソースステートメントを指定する必要があります。
"Resource": "*"
以下のAPIアクションでは、リソースがアカウントによって所有されていない場合ARN、リソースにアカウント ID を指定することはできません。
-
AssociateConnectionAlias
-
CopyWorkspaceImage
-
DisassociateConnectionAlias
これらのAPIアクションでは、そのアカウントがアクションの対象となるリソースを所有しているARN場合にのみ、リソースにアカウント ID を指定できます。アカウントがリソースを所有していない場合は、次の例に示すように、アカウント ID に *
を指定する必要があります。
"arn:aws:workspaces:
region
:*:resource_type
/resource_identifier
"
workspaces_DefaultRole Role を作成する
を使用してディレクトリを登録する前にAPI、 という名前のロールworkspaces_DefaultRole
が存在することを確認する必要があります。このロールは、高速セットアップによって作成されるか、 WorkSpace を使用して を起動する場合に作成されます。 AWS Management Console、および特定の へのアクセス WorkSpaces 許可を Amazon に付与します。 AWS ユーザーに代わって リソース。このロールが存在しない場合は、以下の手順で作成できます。
workspaces_DefaultRole role を作成するには
-
にサインインする AWS Management Console でIAMコンソールを開きますhttps://console.aws.amazon.com/iam/
。 -
左側のナビゲーションペインで、[Roles] を選択します。
-
[ロールの作成] を選択します。
-
「信頼されたエンティティのタイプを選択」で、「別のエンティティ」を選択します。 AWS アカウント 。
-
[Account ID] には、ハイフンやスペースを入れずにアカウント ID を入力します。
-
オプション では、多要素認証 () を指定しないでくださいMFA。
-
[Next: Permissions] (次へ: アクセス許可) を選択します。
-
アクセス許可ポリシーのアタッチページで、 AWS マネージドポリシー AmazonWorkSpacesServiceAccess、AmazonWorkSpacesSelfServiceAccess、および AmazonWorkSpacesPoolServiceAccess。これらの管理ポリシーの詳細については、「」を参照してくださいAWS の マネージドポリシー WorkSpaces。
-
[許可の境界を設定] では、このロールにアタッチされているポリシーと競合する可能性があるため、アクセス許可の境界を使用しないことをお勧めします。このような競合が発生すると、ロールに必要な特定の許可がブロックされる可能性があります。
-
[次へ: タグ] を選択します。
-
[Add tags (optional)] ページで、必要に応じてタグを追加します。
-
[Next: Review] を選択します。
-
[Review] ページの [Role name] に、
workspaces_DefaultRole
を入力します。 -
(オプション) [ロールの説明] に、説明を入力します。
-
[ロールの作成] を選択します。
-
workspaces_DefaultRole role の概要ページで、信頼関係タブを選択します。
-
[信頼関係] タブで、[信頼関係の編集] を選択します。
-
[Edit Trust Relationship] ページで、既存のポリシーステートメントを次のステートメントに置き換えます。
{ "Statement": [ { "Effect": "Allow", "Principal": { "Service": "workspaces.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
[Update Trust Policy] を選択します。
サービスロールを作成する AmazonWorkSpacesPCAAccess
ユーザーが証明書ベースの認証を使用してログインする前に、AmazonWorkSpacesPCAAccess
という名前のロールが存在することを確認する必要があります。このロールは、 を使用してディレクトリで証明書ベースの認証を有効にすると作成されます。 AWS Management Console、および へのアクセス許可を Amazon WorkSpaces に付与します。 AWS Private CA ユーザーに代わって リソース。コンソールを使用して証明書ベースの認証を管理していないために、このロールが存在しない場合は、次の手順で作成できます。
を使用してサービスロールを作成するには AmazonWorkSpacesPCAAccess AWS CLI
-
次のテキスト
AmazonWorkSpacesPCAAccess.json
で という名前のJSONファイルを作成します。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "prod.euc.ecm.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
必要に応じて
AmazonWorkSpacesPCAAccess.json
パスを調整し、以下を実行します。 AWS CLI サービスロールを作成し、 AmazonWorkspacesPCAAccess マネージドポリシーをアタッチする コマンド。aws iam create-role --path /service-role/ --role-name AmazonWorkSpacesPCAAccess --assume-role-policy-document file://AmazonWorkSpacesPCAAccess.json
aws iam attach-role-policy —role-name AmazonWorkSpacesPCAAccess —policy-arn arn:aws:iam::aws:policy/AmazonWorkspacesPCAAccess