Verwendung von GetPasswordData mit einem AWS-SDK oder CLI - AWS-SDK-Codebeispiele

Weitere AWS-SDK-Beispiele sind im GitHub-Repository Beispiele für AWS Doc SDKs verfügbar.

Verwendung von GetPasswordData mit einem AWS-SDK oder CLI

Die folgenden Code-Beispiele zeigen, wie GetPasswordData verwendet wird.

CLI
AWS CLI

So rufen Sie das verschlüsselte Passwort ab

In diesem Beispiel wird das verschlüsselte Passwort abgerufen.

Befehl:

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

Ausgabe:

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

So rufen Sie das entschlüsselte Passwort ab

In diesem Beispiel wird das entschlüsselte Passwort abgerufen.

Befehl:

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

Ausgabe:

{ "InstanceId": "i-1234567890abcdef0", "Timestamp": "2013-08-30T23:18:05.000Z", "PasswordData": "&ViJ652e*u" }
  • Weitere API-Informationen finden Sie unter GetPasswordData in der AWS CLI-Befehlsreferenz.

Java
SDK für Java 2.x
Anmerkung

Auf GitHub finden Sie noch mehr. Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS-Code-Beispiel- einrichten und ausführen.

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); } }
  • Weitere API-Informationen finden Sie unter GetPasswordData in der AWS SDK for Java 2.x-API-Referenz.

PowerShell
Tools für PowerShell V4

Beispiel 1: In diesem Beispiel wird das Passwort entschlüsselt, das Amazon EC2 dem Administratorkonto für die angegebene Windows-Instance zugeordnet hat. Da eine PEM-Datei angegeben wurde, wird automatisch die Einstellung des Schalters -Decrypt übernommen.

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

Ausgabe:

mYZ(PA9?C)Q

Beispiel 2: (nur Windows PowerShell) Überprüft die Instance, um den Namen des Schlüsselpaars zu ermitteln, das zum Starten der Instance verwendet wurde, und versucht dann, die entsprechenden Schlüsselpaardaten im Konfigurationsspeicher des AWS Toolkits für Visual Studio zu finden. Wenn die Schlüsselpaardaten gefunden werden, wird das Passwort entschlüsselt.

Get-EC2PasswordData -InstanceId i-12345678 -Decrypt

Ausgabe:

mYZ(PA9?C)Q

Beispiel 3: Gibt die verschlüsselten Passwortdaten für die Instance zurück.

Get-EC2PasswordData -InstanceId i-12345678

Ausgabe:

iVz3BAK/WAXV.....dqt8WeMA==
  • Weitere API-Informationen finden Sie unter GetPasswordData in der AWS -Tools für PowerShell-Cmdlet-Referenz (V4).

Tools für PowerShell V5

Beispiel 1: In diesem Beispiel wird das Passwort entschlüsselt, das Amazon EC2 dem Administratorkonto für die angegebene Windows-Instance zugeordnet hat. Da eine PEM-Datei angegeben wurde, wird automatisch die Einstellung des Schalters -Decrypt übernommen.

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

Ausgabe:

mYZ(PA9?C)Q

Beispiel 2: (nur Windows PowerShell) Überprüft die Instance, um den Namen des Schlüsselpaars zu ermitteln, das zum Starten der Instance verwendet wurde, und versucht dann, die entsprechenden Schlüsselpaardaten im Konfigurationsspeicher des AWS Toolkits für Visual Studio zu finden. Wenn die Schlüsselpaardaten gefunden werden, wird das Passwort entschlüsselt.

Get-EC2PasswordData -InstanceId i-12345678 -Decrypt

Ausgabe:

mYZ(PA9?C)Q

Beispiel 3: Gibt die verschlüsselten Passwortdaten für die Instance zurück.

Get-EC2PasswordData -InstanceId i-12345678

Ausgabe:

iVz3BAK/WAXV.....dqt8WeMA==
  • Weitere API-Informationen finden Sie unter GetPasswordData in der AWS -Tools für PowerShell-Cmdlet-Referenz (V5).