View a markdown version of this page

Gerenciamento de identidade e acesso para WorkSpaces - Amazônia WorkSpaces

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Gerenciamento de identidade e acesso para WorkSpaces

Por padrão, os usuários do IAM não têm permissões para WorkSpaces recursos e operações. Para permitir que os usuários do IAM gerenciem WorkSpaces recursos, você deve criar uma política do IAM que lhes conceda permissões explicitamente e anexar a política aos usuários ou grupos do IAM que exigem essas permissões.

nota

A Amazon WorkSpaces não oferece suporte ao provisionamento de credenciais do IAM em um WorkSpace (como com um perfil de instância).

Para conceder acesso, adicione as permissões aos seus usuários, grupos ou perfis:

A seguir estão os recursos adicionais para o IAM:

Exemplo de política

Os exemplos a seguir mostram declarações de política que você pode usar para controlar as permissões que os usuários do IAM têm para a Amazon WorkSpaces.

A declaração de política a seguir concede a um usuário do IAM permissão para realizar tarefas WorkSpaces pessoais e de grupos.

JSON
{ "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", "sso-directory:SearchUsers", "sso:CreateApplication", "sso:DeleteApplication", "sso:DescribeApplication", "sso:DescribeInstance", "sso:GetApplicationGrant", "sso:ListInstances", "sso:PutApplicationAssignmentConfiguration", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationGrant" ], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "workspaces.amazonaws.com" } } } ] }

A declaração de política a seguir concede a um usuário do IAM permissão para realizar todas as tarefas WorkSpaces pessoais.

Embora a Amazon ofereça suporte WorkSpaces total aos Resource elementos Action e ao usar a API e as ferramentas de linha de comando, para usar a Amazon a WorkSpaces partir do Console de gerenciamento da AWS, um usuário do IAM deve ter permissões para as seguintes ações e recursos:

  • Ações: "ds:*"

  • Recursos: "Resource": "*"

O exemplo de política a seguir mostra como permitir que um usuário do IAM use a Amazon a WorkSpaces partir do Console de gerenciamento da AWS.

JSON
{ "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", "secretsmanager:ListSecrets", "sso-directory:SearchUsers", "sso:CreateApplication", "sso:DeleteApplication", "sso:DescribeApplication", "sso:DescribeInstance", "sso:GetApplicationGrant", "sso:ListInstances", "sso:PutApplicationAssignmentConfiguration", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationGrant" ], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "workspaces.amazonaws.com" } } } ] }

A declaração de política a seguir concede a um usuário do IAM permissão para realizar todas as tarefas do WorkSpaces Pools.

nota

Este exemplo usa a aws partição no iam:CreateServiceLinkedRole recurso ARN. Nas AWS GovCloud (US) Regiões, use a aws-us-gov partição em vez disso (por exemplo,arn:aws-us-gov:iam::*:role/aws-service-role/...). Para obter mais informações, consulte Amazon Resource Names (ARNs) em AWS GovCloud (US) regiões.

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

A declaração de política a seguir concede a um usuário do IAM permissão para realizar todas as WorkSpaces tarefas, incluindo as tarefas do Amazon EC2 necessárias para criar a Bring Your Own License (BYOL). WorkSpaces

JSON
{ "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" ], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "workspaces.amazonaws.com" } } } ] }

Especificar WorkSpaces recursos em uma política do IAM

Para especificar um WorkSpaces recurso no Resource elemento da declaração de política, use o Nome de recurso da Amazon (ARN) do recurso. Você controla o acesso aos seus WorkSpaces recursos permitindo ou negando permissões para usar as ações da API especificadas no Action elemento da sua declaração de política do IAM. WorkSpaces define ARNs para pacotes WorkSpaces, grupos IP e diretórios.

nota

Os exemplos de ARN nesta seção usam a aws partição, que se aplica às AWS regiões padrão. Se você estiver trabalhando nas AWS GovCloud (US) Regiões, use a aws-us-gov partição em vez disso (por exemplo,arn:aws-us-gov:workspaces:us-gov-west-1:account_id:workspace/workspace_identifier) e especifique us-gov-west-1 ou us-gov-east-1 para a Região. Para obter mais informações, consulte Amazon Resource Names (ARNs) em AWS GovCloud (US) regiões no Guia do AWS GovCloud (US) usuário.

Um WorkSpace ARN tem a sintaxe mostrada no exemplo a seguir.

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

A região em que WorkSpace está (por exemplo,us-east-1).

account_id

O ID da AWS conta, sem hífens (por exemplo,123456789012).

workspace_identifier

O ID do WorkSpace (por exemplo,ws-a1bcd2efg).

A seguir, é apresentado o formato do Resource elemento de uma declaração de política que identifica um elemento específico WorkSpace.

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

Você pode usar o * curinga para especificar tudo o WorkSpaces que pertence a uma conta específica em uma região específica.

Um ARN de WorkSpace pool tem a sintaxe mostrada no exemplo a seguir.

arn:aws:workspaces:region:account_id:workspacespool/workspacespool_identifier
region

A região em que WorkSpace está (por exemplo,us-east-1).

account_id

O ID da AWS conta, sem hífens (por exemplo,123456789012).

espaço de trabalho_pool_identifier

O ID do WorkSpace pool (por exemplo,ws-a1bcd2efg).

A seguir, é apresentado o formato do Resource elemento de uma declaração de política que identifica um elemento específico WorkSpace.

"Resource": "arn:aws:workspaces:region:account_id:workspacespool/workspacespool_identifier"

Você pode usar o * curinga para especificar tudo o WorkSpaces que pertence a uma conta específica em uma região específica.

Um WorkSpace certificado ARN tem a sintaxe mostrada no exemplo a seguir.

arn:aws:workspaces:region:account_id:workspacecertificate/workspacecertificateidentifier
region

A região em que WorkSpace está (por exemplo,us-east-1).

account_id

O ID da AWS conta, sem hífens (por exemplo,123456789012).

workspacecertificate_identifier

O ID do WorkSpace certificado (por exemplo,ws-a1bcd2efg).

A seguir está o formato do Resource elemento de uma declaração de política que identifica um WorkSpace certificado específico.

"Resource": "arn:aws:workspaces:region:account_id:workspacecertificate/workspacecertificate_identifier"

Você pode usar o * curinga para especificar tudo o WorkSpaces que pertence a uma conta específica em uma região específica.

Um ARN de WorkSpace imagem tem a sintaxe mostrada no exemplo a seguir.

arn:aws:workspaces:region:account_id:workspaceimage/image_identifier
region

A região em que a WorkSpace imagem está (por exemplo,us-east-1).

account_id

O ID da AWS conta, sem hífens (por exemplo,123456789012).

bundle_identifier

O ID da WorkSpace imagem (por exemplo,wsi-a1bcd2efg).

Veja a seguir o formato do elemento Resource de uma declaração de política que identifica uma imagem específica.

"Resource": "arn:aws:workspaces:region:account_id:workspaceimage/image_identifier"

É possível usar o caractere curinga * para especificar todas as imagens que pertencem a uma conta específica em determinada região.

Um ARN de pacote tem a sintaxe mostrada no exemplo a seguir.

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

A região em que WorkSpace está (por exemplo,us-east-1).

account_id

O ID da AWS conta, sem hífens (por exemplo,123456789012).

bundle_identifier

O ID do WorkSpace pacote (por exemplo,wsb-a1bcd2efg).

Veja a seguir o formato do elemento Resource de uma declaração de política que identifica um pacote específico.

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

É possível usar o caractere curinga * para especificar todos os pacotes que pertencem a uma conta específica em determinada região.

Um ARN de grupo IP tem a sintaxe mostrada no exemplo a seguir.

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

A região em que WorkSpace está (por exemplo,us-east-1).

account_id

O ID da AWS conta, sem hífens (por exemplo,123456789012).

ipgroup_identifier

O ID do grupo de IP (por exemplo, wsipg-a1bcd2efg).

Veja a seguir o formato do elemento Resource de uma declaração de política que identifica um grupo de IP específico.

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

É possível usar o caractere curinga * para especificar todos os grupos de IP que pertencem a uma conta específica determinada região.

Um ARN de diretório tem a sintaxe mostrada no exemplo a seguir.

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

A região em que WorkSpace está (por exemplo,us-east-1).

account_id

O ID da AWS conta, sem hífens (por exemplo,123456789012).

directory_identifier

O ID do diretório (por exemplo, d-12345a67b8).

Veja a seguir o formato do elemento Resource de uma declaração de política que identifica um diretório específico.

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

É possível usar o caractere curinga * para especificar todos os diretórios que pertencem a uma conta específica em determinada região.

Um ARN de alias de conexão tem a sintaxe mostrada no exemplo a seguir.

arn:aws:workspaces:region:account_id:connectionalias/connectionalias_identifier
region

A região em que o alias da conexão está (por exemplo, us-east-1).

account_id

O ID da AWS conta, sem hífens (por exemplo,123456789012).

connectionalias_identifier

O ID do alias de conexão (por exemplo, wsca-12345a67b8).

Veja a seguir o formato do elemento Resource de uma declaração de política que identifica um alias de conexão específico.

"Resource": "arn:aws:workspaces:region:account_id:connectionalias/connectionalias_identifier"

É possível usar o caractere curinga * para especificar todos os alias de conexão que pertencem a uma conta específica em determinada região.

Você não pode especificar um ARN de recurso com as seguintes ações de API:

  • AssociateIpGroups

  • CreateIpGroup

  • CreateTags

  • DeleteTags

  • DeleteWorkspaceImage

  • DescribeAccount

  • DescribeAccountModifications

  • DescribeIpGroups

  • DescribeTags

  • DescribeWorkspaceDirectories

  • DescribeWorkspaceImages

  • DescribeWorkspaces

  • DescribeWorkspacesConnectionStatus

  • DisassociateIpGroups

  • ImportWorkspaceImage

  • ListAvailableManagementCidrRanges

  • ModifyAccount

Para ações de API que não oferecem suporte a permissões no nível de recurso, é necessário especificar a instrução de recurso mostrada no exemplo a seguir.

"Resource": "*"

Para as seguintes ações da API, você não pode especificar um ID de conta no ARN do recurso quando o recurso não é de propriedade da conta:

  • AssociateConnectionAlias

  • CopyWorkspaceImage

  • DisassociateConnectionAlias

Para essas ações da API, você pode especificar um ID de conta no ARN do recurso somente quando essa conta é a proprietária dos recursos a serem usados. Quando a conta não é a proprietária dos recursos, você deve especificar * para o ID da conta, conforme mostrado no exemplo a seguir.

"arn:aws:workspaces:region:*:resource_type/resource_identifier"

Crie a função workspaces_ DefaultRole

Antes de registrar um diretório usando a API, você deve verificar se existe um perfil chamado workspaces_DefaultRole. Essa função é criada pela Configuração rápida ou se você iniciar uma WorkSpace usando a Console de gerenciamento da AWS, e ela concede à Amazon WorkSpaces permissão para acessar AWS recursos específicos em seu nome. Se esse perfil não existir, você poderá criá-lo usando o procedimento a seguir.

Para criar a função workspaces_ DefaultRole
  1. Faça login no Console de gerenciamento da AWS e abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação à esquerda, escolha Roles (Funções).

  3. Selecione Criar perfil.

  4. Em Selecionar tipo de entidade confiável, selecione Outra conta da AWS .

  5. Em ID da conta, insira seu ID de conta sem hífens ou espaços.

  6. Em Opções, não especifique a autenticação multifator (MFA).

  7. Escolha Próximo: Permissões.

  8. Na página Anexar políticas de permissões, selecione as políticas AWS gerenciadas AmazonWorkSpacesServiceAccess AmazonWorkSpacesSelfServiceAccess, AmazonWorkSpacesPoolServiceAccess e. Para obter mais informações sobre políticas gerenciadas, consulte AWS políticas gerenciadas para WorkSpaces.

  9. Em Definir limite de permissões, recomendamos que você não use um limite de permissões devido ao potencial para conflitos com as políticas anexadas à esse perfil. Tais conflitos podem bloquear determinadas permissões necessárias para a função.

  10. Escolha Próximo: tags.

  11. Na página Adicionar tags (opcional), adicione tags se necessário.

  12. Selecione Próximo: revisar.

  13. Na página Revisar, em Nome da função, insira workspaces_DefaultRole.

  14. (Opcional ) Em Descrição da função, insira uma descrição.

  15. Selecione Criar função.

  16. Na página Resumo da DefaultRole função workspaces_, escolha a guia Relações de confiança.

  17. Na guia Relações de confiança, escolha Editar relação de confiança.

  18. Na página Editar relação de confiança, substitua a declaração de política existente pela declaração a seguir.

    { "Statement": [ { "Effect": "Allow", "Principal": { "Service": "workspaces.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  19. Selecione Atualizar política de confiança.

Crie a função AmazonWorkSpacesPCAAccess de serviço

Antes que os usuários possam fazer login usando a autenticação baseada em certificado, você deve verificar se existe um perfil chamado AmazonWorkSpacesPCAAccess. Essa função é criada quando você habilita a autenticação baseada em certificados em um diretório usando o. e concede à Amazon WorkSpaces permissão para acessar CA privada da AWS recursos em seu nome. Console de gerenciamento da AWS Se esse perfil não existir porque você não está usando o console para gerenciar a autenticação baseada em certificado, você poderá criá-lo usando o procedimento a seguir.

Para criar a função AmazonWorkSpacesPCAAccess de serviço usando o AWS CLI
  1. Crie um arquivo JSON denominado AmazonWorkSpacesPCAAccess.json com o texto a seguir.

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "prod.euc.ecm.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Ajuste o AmazonWorkSpacesPCAAccess.json caminho conforme necessário e execute os AWS CLI comandos a seguir para criar a função de serviço e anexar a política AmazonWorkspacesPCAAccess gerenciada.

    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
    nota

    Nas AWS GovCloud (US) regiões, use a aws-us-gov partição no ARN da política gerenciada:arn:aws-us-gov:iam::aws:policy/AmazonWorkspacesPCAAccess. Para obter mais informações, consulte Amazon Resource Names (ARNs) em AWS GovCloud (US) regiões.