ID 및 액세스 관리 대상 WorkSpaces - 아마존 WorkSpaces

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

ID 및 액세스 관리 대상 WorkSpaces

기본적으로 IAM 사용자에게는 WorkSpaces 리소스 및 작업에 대한 권한이 없습니다. IAM사용자가 WorkSpaces 리소스를 관리하도록 허용하려면 권한을 명시적으로 부여하는 IAM 정책을 만들고 해당 권한이 필요한 IAM 사용자 또는 그룹에 정책을 연결해야 합니다.

참고

WorkSpaces Amazon은 WorkSpace (예: 인스턴스 프로필) 에 IAM 자격 증명을 프로비저닝하는 것을 지원하지 않습니다.

액세스 권한을 제공하려면 사용자, 그룹 또는 역할에 권한을 추가하세요:

다음에 대한 추가 리소스는 다음과 같습니다IAM.

정책 예제

다음 예는 Amazon에 대한 IAM 사용자의 권한을 제어하는 데 사용할 수 있는 정책 설명을 보여줍니다 WorkSpaces.

다음 정책 설명문은 IAM 사용자에게 WorkSpaces 개인 및 수영장 작업을 수행할 수 있는 권한을 부여합니다.

{ "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" } } } ] }

다음 정책 설명문은 IAM 사용자에게 모든 WorkSpaces 개인 작업을 수행할 수 있는 권한을 부여합니다.

Amazon은 Action 및 명령줄 도구를 사용할 때 API 및 Resource 요소를 WorkSpaces 완벽하게 지원하지만 WorkSpaces Amazon을 사용하려면 AWS Management Console IAM사용자는 다음 작업 및 리소스에 대한 권한을 가지고 있어야 합니다.

  • 작업: "workspaces:*""ds:*"

  • 리소스: "Resource": "*"

다음 예제 정책은 IAM 사용자가 WorkSpaces Amazon을 사용할 수 있도록 허용하는 방법을 보여줍니다. 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" } } } ] }

다음 정책 설명은 IAM 사용자에게 모든 WorkSpaces Pools 작업을 수행할 수 있는 권한을 부여합니다.

{ "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" } } } ] }

다음 정책 설명은 IAM 사용자에게 Bring Your Own License (BYOL) 생성에 필요한 Amazon EC2 작업을 비롯한 모든 WorkSpaces 작업을 수행할 수 있는 권한을 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) 을 사용하십시오. IAM정책 설명의 Action 요소에 지정된 API 작업을 사용할 수 있는 권한을 허용하거나 거부하여 WorkSpaces 리소스에 대한 액세스를 제어할 수 있습니다. WorkSpaces ARNs대상 WorkSpaces, 번들, IP 그룹 및 디렉터리를 정의합니다.

A의 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

다음은 특정 WorkSpace 대상을 식별하는 정책 설명 Resource 요소의 형식입니다.

"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

작업공간_풀_식별자

WorkSpace 풀의 ID (예:). ws-a1bcd2efg

다음은 특정 WorkSpace 항목을 식별하는 정책 설명 Resource 요소의 형식입니다.

"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"

DefaultRole 작업공간_ 역할 만들기

를 사용하여 디렉토리를 등록하려면 먼저 이름이 API 지정된 역할이 존재하는지 확인해야 합니다. workspaces_DefaultRole 이 역할은 빠른 설치를 통해 생성되거나 다음을 WorkSpace 사용하여 실행하는 경우 생성됩니다. AWS Management Console, Amazon에 특정 항목에 액세스할 수 있는 WorkSpaces 권한을 부여합니다. AWS 사용자를 위한 리소스. 이 역할이 없는 경우, 다음 절차에 따라 만들 수도 있습니다.

DefaultRole workspaces_ 역할을 만들려면
  1. 에 로그인하세요. AWS Management Console 에서 IAM 콘솔을 엽니다 https://console.aws.amazon.com/iam/.

  2. 왼쪽의 탐색 창에서 역할을 선택합니다.

  3. 역할 생성을 선택합니다.

  4. 신뢰할 수 있는 개체 유형 선택에서 기타를 선택합니다. AWS 계정.

  5. 계정 ID에 하이픈이나 공백 없이 계정 ID를 입력합니다.

  6. 옵션의 경우 다단계 인증 (MFA) 을 지정하지 마십시오.

  7. 다음: 권한을 선택합니다.

  8. 연결 권한 정책 페이지에서 다음을 선택합니다. AWS 관리형 정책 AmazonWorkSpacesServiceAccessAmazonWorkSpacesSelfServiceAccess, 및 AmazonWorkSpacesPoolServiceAccess. 이러한 관리형 정책에 대한 자세한 내용은 을 참조하십시오AWS 에 대한 관리형 정책 WorkSpaces.

  9. 이 역할에 연결된 정책과 충돌할 가능성이 있으므로 권한 경계 설정에서 권한 경계를 사용하지 않는 것이 좋습니다. 충돌이 발생할 경우 역할에 필요한 특정 권한이 차단될 수 있습니다.

  10. 다음: 태그를 선택합니다.

  11. 필요한 경우 Add tags (optional)(태그 추가(선택 사항)) 페이지에서 태그를 추가합니다.

  12. 다음: 검토를 선택합니다.

  13. 검토 페이지의 역할 이름workspaces_DefaultRole을 입력합니다.

  14. (선택 사항)역할 설명에 설명을 입력합니다.

  15. 역할 생성을 선택합니다.

  16. workspaces_ DefaultRole 역할의 요약 페이지에서 신뢰 관계 탭을 선택합니다.

  17. 신뢰 관계 탭에서 신뢰 관계 편집을 선택합니다.

  18. Edit Trust Relationship(신뢰 관계 편집) 페이지에서 기존 정책 설명을 다음 설명으로 바꿉니다.

    { "Statement": [ { "Effect": "Allow", "Principal": { "Service": "workspaces.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  19. 신뢰 정책 업데이트를 선택합니다.

서비스 역할 생성 AmazonWorkSpaces PCAAccess

사용자가 인증서 기반 인증을 사용하여 로그인할 수 있으려면 먼저 이름이 AmazonWorkSpacesPCAAccess인 역할이 존재하는지 확인해야 합니다. 이 역할은 다음을 사용하여 디렉터리에서 인증서 기반 인증을 활성화할 때 생성됩니다. AWS Management Console, Amazon에 액세스 WorkSpaces 권한을 부여합니다. AWS Private CA 사용자를 위한 리소스. 콘솔을 사용하여 인증서 기반 인증을 관리하지 않아 이 역할이 존재하지 않는 경우 다음 절차를 사용하여 생성할 수 있습니다.

를 사용하여 AmazonWorkSpaces PCAAccess 서비스 역할을 만들려면 AWS CLI
  1. 다음 AmazonWorkSpacesPCAAccess.json 텍스트로 이름이 지정된 JSON 파일을 생성합니다.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "prod.euc.ecm.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. 필요에 따라 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