Usar GetPasswordData com o AWS SDK ou a CLI - Amazon Elastic Compute Cloud

Usar GetPasswordData com o AWS SDK ou a CLI

Os exemplos de código a seguir mostram como usar o GetPasswordData.

CLI
AWS CLI

Obter a senha criptografada

Este exemplo obtém a senha criptografada.

Comando:

aws ec2 get-password-data --instance-id i-1234567890abcdef0

Resultado:

{ "InstanceId": "i-1234567890abcdef0", "Timestamp": "2013-08-07T22:18:38.000Z", "PasswordData": "gSlJFq+VpcZXqy+iktxMF6NyxQ4qCrT4+gaOuNOenX1MmgXPTj7XEXAMPLE UQ+YeFfb+L1U4C4AKv652Ux1iRB3CPTYP7WmU3TUnhsuBd+p6LVk7T2lKUml6OXbk6WPW1VYYm/TRPB1 e1DQ7PY4an/DgZT4mwcpRFigzhniQgDDeO1InvSDcwoUTwNs0Y1S8ouri2W4n5GNlriM3Q0AnNVelVz/ 53TkDtxbNoU606M1gK9zUWSxqEgwvbV2j8c5rP0WCuaMWSFl4ziDu4bd7q+4RSyi8NUsVWnKZ4aEZffu DPGzKrF5yLlf3etP2L4ZR6CvG7K1hx7VKOQVN32Dajw==" }

Obter a senha descriptografada

Este exemplo obtém a senha descriptografada.

Comando:

aws ec2 get-password-data --instance-id i-1234567890abcdef0 --priv-launch-key C:\Keys\MyKeyPair.pem

Resultado:

{ "InstanceId": "i-1234567890abcdef0", "Timestamp": "2013-08-30T23:18:05.000Z", "PasswordData": "&ViJ652e*u" }
  • Para ver detalhes da API, consulte GetPasswordData na Referência de comandos da AWS CLI.

Java
SDK para Java 2.x
nota

Há mais no GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWSCode Examples Repository.

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ec2.Ec2AsyncClient; import software.amazon.awssdk.services.ec2.model.*; import java.util.concurrent.CompletableFuture; /** * Before running this Java V2 code example, set up your development * environment, including your credentials. * * For more information, see the following documentation topic: * * https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html */ public class GetPasswordData { public static void main(String[] args) { final String usage = """ Usage: <instanceId> Where: instanceId - An instance id value that you can obtain from the AWS Management Console.\s """; if (args.length != 1) { System.out.println(usage); System.exit(1); } String instanceId = args[0]; Ec2AsyncClient ec2AsyncClient = Ec2AsyncClient.builder() .region(Region.US_EAST_1) .build(); try { CompletableFuture<Void> future = getPasswordDataAsync(ec2AsyncClient, instanceId); future.join(); } catch (RuntimeException rte) { System.err.println("An exception occurred: " + (rte.getCause() != null ? rte.getCause().getMessage() : rte.getMessage())); } } /** * Fetches the password data for the specified EC2 instance asynchronously. * * @param ec2AsyncClient the EC2 asynchronous client to use for the request * @param instanceId instanceId the ID of the EC2 instance for which you want to fetch the password data * @return a {@link CompletableFuture} that completes when the password data has been fetched * @throws RuntimeException if there was a failure in fetching the password data */ public static CompletableFuture<Void> getPasswordDataAsync(Ec2AsyncClient ec2AsyncClient, String instanceId) { GetPasswordDataRequest getPasswordDataRequest = GetPasswordDataRequest.builder() .instanceId(instanceId) .build(); CompletableFuture<GetPasswordDataResponse> response = ec2AsyncClient.getPasswordData(getPasswordDataRequest); response.whenComplete((getPasswordDataResponse, ex) -> { if (ex != null) { throw new RuntimeException("Failed to get password data for instance: " + instanceId, ex); } else if (getPasswordDataResponse == null || getPasswordDataResponse.passwordData().isEmpty()) { throw new RuntimeException("No password data found for instance: " + instanceId); } else { String encryptedPasswordData = getPasswordDataResponse.passwordData(); System.out.println("Encrypted Password Data: " + encryptedPasswordData); } }); return response.thenApply(resp -> null); } }
  • Consulte detalhes da API em GetPasswordData na Referência de API do AWS SDK for Java 2.x.

PowerShell
Ferramentas para PowerShell V4

Exemplo 1: esse exemplo descriptografa a senha que o Amazon EC2 atribuiu à conta do administrador para a instância especificada do Windows. Quando um arquivo pem é especificado, a configuração da opção -Decrypt é automaticamente assumida.

Get-EC2PasswordData -InstanceId i-12345678 -PemFile C:\path\my-key-pair.pem

Saída:

mYZ(PA9?C)Q

Exemplo 2: (somente Windows PowerShell) inspeciona a instância para determinar o nome do par de chaves usado para iniciar a instância e, depois, tenta encontrar os dados do par de chaves correspondente no repositório de configuração do kit de ferramentas da AWS para Visual Studio. Se os dados do par de chaves forem encontrados, a senha será descriptografada.

Get-EC2PasswordData -InstanceId i-12345678 -Decrypt

Saída:

mYZ(PA9?C)Q

Exemplo 3: exibe os dados da senha criptografada para a instância.

Get-EC2PasswordData -InstanceId i-12345678

Saída:

iVz3BAK/WAXV.....dqt8WeMA==
  • Consulte detalhes da API em GetPasswordData na Referência de cmdlets do Ferramentas da AWS para PowerShell (V4).

Ferramentas para PowerShell V5

Exemplo 1: esse exemplo descriptografa a senha que o Amazon EC2 atribuiu à conta do administrador para a instância especificada do Windows. Quando um arquivo pem é especificado, a configuração da opção -Decrypt é automaticamente assumida.

Get-EC2PasswordData -InstanceId i-12345678 -PemFile C:\path\my-key-pair.pem

Saída:

mYZ(PA9?C)Q

Exemplo 2: (somente Windows PowerShell) inspeciona a instância para determinar o nome do par de chaves usado para iniciar a instância e, depois, tenta encontrar os dados do par de chaves correspondente no repositório de configuração do kit de ferramentas da AWS para Visual Studio. Se os dados do par de chaves forem encontrados, a senha será descriptografada.

Get-EC2PasswordData -InstanceId i-12345678 -Decrypt

Saída:

mYZ(PA9?C)Q

Exemplo 3: exibe os dados da senha criptografada para a instância.

Get-EC2PasswordData -InstanceId i-12345678

Saída:

iVz3BAK/WAXV.....dqt8WeMA==
  • Consulte detalhes da API em GetPasswordData na Referência de cmdlets do Ferramentas da AWS para PowerShell (V5).

Para ver uma lista completa dos Guias do desenvolvedor e exemplos de código do SDK da AWS, consulte Crie recursos do Amazon EC2 usando um AWS SDK. Este tópico também inclui informações sobre como começar e detalhes sobre versões anteriores do SDK.