本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用第 3 AWS SDK for PHP 版的 Amazon EC2 密鑰對
Amazon EC2 使用公有金鑰加密法將登入資訊進行加密及解密。公有金鑰加密法使用公開金鑰來加密資料。之後,收件人會使用私有金鑰來解密資料。公有金鑰和私有金鑰稱為金鑰對。
下列範例示範如何:
-
使用建立 2048 位元 RSA key pair。CreateKeyPair
-
使用刪除指定的 key pair DeleteKeyPair。
-
使用描述一個或多個密鑰對DescribeKeyPairs。
所有的範例程式碼都可以AWS SDK for PHP在這裡取
登入資料
在執行範例程式碼之前,請依照中的說明設定您的AWS認證憑證。然後匯入AWS SDK for PHP,如中所述基本使用。
建立金鑰對
匯入
require 'vendor/autoload.php';
範例程式碼
$ec2Client = new Aws\Ec2\Ec2Client([ 'region' => 'us-west-2', 'version' => '2016-11-15', 'profile' => 'default' ]); $keyPairName = 'my-keypair'; $result = $ec2Client->createKeyPair(array( 'KeyName' => $keyPairName )); // Save the private key $saveKeyLocation = getenv('HOME') . "/.ssh/{$keyPairName}.pem"; file_put_contents($saveKeyLocation, $result['keyMaterial']); // Update the key's permissions so it can be used with SSH chmod($saveKeyLocation, 0600);
刪除金鑰對
匯入
require 'vendor/autoload.php';
範例程式碼
$ec2Client = new Aws\Ec2\Ec2Client([ 'region' => 'us-west-2', 'version' => '2016-11-15', 'profile' => 'default' ]); $keyPairName = 'my-keypair'; $result = $ec2Client->deleteKeyPair(array( 'KeyName' => $keyPairName )); var_dump($result);
描述金鑰對
匯入
require 'vendor/autoload.php';
範例程式碼
$ec2Client = new Aws\Ec2\Ec2Client([ 'region' => 'us-west-2', 'version' => '2016-11-15', 'profile' => 'default' ]); $result = $ec2Client->describeKeyPairs(); var_dump($result);