Gravar conexões RDP - AWS Systems Manager

Gravar conexões RDP

O acesso a nós just-in-time inclui a capacidade de gravar conexões RDP realizadas com seus nós do Windows Server. A gravação de conexões RDP requer um bucket do S3 e uma chave do AWS Key Management Service (AWS KMS) gerenciada pelo cliente. A AWS KMS key é usada para criptografar temporariamente os dados de gravação enquanto são gerados e armazenados nos recursos do Systems Manager. A chave gerenciada pelo cliente deve ser uma chave simétrica com o uso da chave de criptografia e descriptografia. Você pode usar uma chave multirregional para sua organização, ou você deve criar uma chave gerenciada pelo cliente em cada região onde você habilitou o acesso a nós just-in-time.

Se você habilitou a criptografia do KMS no bucket do S3 no qual armazena gravações, será necessário fornecer acesso à chave gerenciada pelo cliente utilizada para a criptografia de buckets à entidade principal de serviço ssm-guiconnect. Essa chave gerenciada pelo cliente pode ser diferente da especificada nas configurações de gravação, que precisa incluir a permissão kms:CreateGrant que é necessária para o estabelecimento de conexões.

Configurar a criptografia de buckets do S3 para gravações de RDP

Suas gravações de conexão são armazenadas no bucket do S3 especificado ao habilitar a gravação de RDP.

Se você utilizar uma chave do KMS como mecanismo de criptografia padrão para o bucket do S3 (SSE-KMS), deverá permitir que a entidade principal de serviço ssm-guiconnect acesse a ação kms:GenerateDataKey nessa chave. Recomendamos o uso de uma chave gerenciada pelo cliente ao usar a criptografia SSE-KMS com um bucket do S3. Isso porque é possível atualizar a política de chave associada de uma chave gerenciada pelo cliente. Não é possível atualizar as políticas de chave para Chaves gerenciadas pela AWS.

Importante

É necessário marcar com tags as chaves do AWS KMS usadas para criptografia e gravação RDP no acesso a nós just-in-time no Session Manager com a chave de tag SystemsManagerJustInTimeNodeAccessManaged e o valor de tag true.

Para obter mais informações sobre tags de chaves do KMS, consulte Tags no AWS KMS no Guia do desenvolvedor do AWS Key Management Service.

Use a política de chave gerenciada pelo cliente a seguir para permitir que o serviço ssm-guiconnect acesse a chave do KMS para armazenamento no S3. Para obter informações sobre como modificar uma chave gerenciada pelo cliente, consulte Alterar uma política de chave no Guia do desenvolvedor do AWS Key Management Service.

Substitua cada espaço reservado para recurso de exemplo por suas próprias informações:

  • account-id representa o ID da Conta da AWS que inicia a conexão.

  • region representa a Região da AWS em que o bucket do S3 está localizado. (Você poderá usar * se o bucket for receber gravações de várias regiões. Exemplo: s3.*.amazonaws.com).

nota

Você poderá usar aws:SourceOrgID na política em vez de aws:SourceAccount se a conta pertencer a uma organização no AWS Organizations.

{ "Sid": "Allow the GUI Connect service principal to access S3", "Effect": "Allow", "Principal": { "Service": "ssm-guiconnect.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "StringLike": { "kms:ViaService": "s3.region.amazonaws.com" } } }

Configurar permissões do IAM para gravar conexões RDP

Além das permissões do IAM necessárias para o acesso a nós just-in-time, o usuário ou perfil que você utilizar deverá ter as permissões a seguir com base na tarefa que você precisará realizar.

Permissões para configurar a gravação de conexão

Para configurar o registro de conexões RDP, as seguintes permissões são necessárias:

  • ssm-guiconnect:UpdateConnectionRecordingPreferences

  • ssm-guiconnect:GetConnectionRecordingPreferences

  • ssm-guiconnect:DeleteConnectionRecordingPreferences

  • kms:CreateGrant

Permissões para iniciar conexões

Para fazer conexões RDP com o acesso a nós just-in-time, as seguintes permissões são necessárias:

  • ssm-guiconnect:CancelConnection

  • ssm-guiconnect:GetConnection

  • ssm-guiconnect:StartConnection

  • kms:CreateGrant

Antes de começar

Para armazenar as gravações de conexão, primeiro você deve criar um bucket do S3 e adicionar política de bucket a seguir. Substitua cada espaço reservado para recurso de exemplo por suas próprias informações.

(Para obter mais informações sobre como adicionar uma política de bucket, consulte Adicionar uma política de bucket usando o console do Amazon S3 no Guia do usuário do Amazon Simple Storage Service.)

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ConnectionRecording", "Effect": "Allow", "Principal": { "Service": [ "ssm-guiconnect.amazonaws.com" ] }, "Action": "s3:PutObject", "Resource": [ "arn:aws:s3:::bucket name", "arn:aws:s3:::bucket name/*" ], "Condition":{ "StringEquals":{ "aws:SourceAccount":"123456789012" } } } ] }

Habilitar e configurar a gravação de conexões RDP

O procedimento a seguir descreve como habilitar e configurar o registro de conexões RDP.

Para habilitar e configurar a gravação de conexões RDP
  1. Abra o console AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. Selecione Configurações no painel de navegação.

  3. Selecione a guia Acesso a nós just-in-time.

  4. Na seção Gravação RDP, selecione Habilitar gravação RDP.

  5. Escolha o bucket do S3 no qual você deseja fazer upload das gravações da sessão.

  6. Escolha a chave gerenciada pelo cliente que você deseja usar para criptografar temporariamente os dados de gravação enquanto eles são gerados e armazenados nos recursos do Systems Manager. (Pode ser uma chave gerenciada pelo cliente diferente da que você utiliza para criptografar o bucket.)

  7. Selecione Salvar.

Valores de status de gravação de conexões RDP

Os valores de status válidos para gravações de conexões RDP incluem o seguinte:

  • Recording: a conexão está em processo de ser gravada

  • Processing: o vídeo está sendo processado após o encerramento da conexão.

  • Finished: estado de terminal com êxito: o vídeo de gravação da conexão foi processado com êxito e carregado no bucket especificado.

  • Failed: estado de terminal com falha. A conexão não foi gravada com êxito.

  • ProcessingError: uma ou mais falhas/erros intermediários ocorreram durante o processamento do vídeo. Possíveis causas incluem falhas na dependência de serviços ou permissões ausentes em decorrência de uma configuração incorreta no bucket do S3 especificado para o armazenamento de gravações. O serviço continua a fazer tentativasd de processamento quando a gravação se encontra nesse estado.

nota

ProcessingError pode ocorrer porque a entidade principal de serviço ssm-guiconnect não tem permissão para fazer upload de objetos no bucket do S3 depois que a conexão é estabelecida. Outra causa possível é a ausência de permissões do KMS na chave do KMS utilizada para a criptografia do bucket do S3.