Represents all key pairs in your account. You can use this collection to create, import and find key pairs.
@return [KeyPair] key_name The name of the key pair.
# File lib/aws/ec2/key_pair_collection.rb, line 57 def [] key_name super end
@param [String] key_name A name for the key pair. @return [KeyPair] Returns a new key pair.
# File lib/aws/ec2/key_pair_collection.rb, line 26 def create key_name create_or_import(:create_key_pair, :key_name => key_name) end
Yields once for each key pair in your account. @return [nil]
# File lib/aws/ec2/key_pair_collection.rb, line 63 def each &block response = filtered_request(:describe_key_pairs) response.key_set.each do |kp| yield(KeyPair.new(kp.key_name, :fingerprint => kp.key_fingerprint, :config => config)) end nil end
Imports the public key from an RSA key pair that you created with a third-party tool. Compare this with {create}, in which EC2 creates the key pair and gives the keys to you (EC2 keeps a copy of the public key). With ImportKeyPair, you create the key pair and give EC2 just the public key. The private key is never transferred between you and EC2.
OpenSSH public key format (e.g., the format in ~/.ssh/authorized_keys)
Base64 encoded DER format
SSH public key file format as specified in RFC4716
DSA keys are not supported. Make sure your key generator is set up to create RSA keys. Supported lengths: 1024, 2048, and 4096.
@param [String] key_name A name for this key pair. @param [String] public_key The RSA public key. @return [KeyPair] Returns a new key pair.
# File lib/aws/ec2/key_pair_collection.rb, line 50 def import key_name, public_key create_or_import(:import_key_pair, :key_name => key_name, :public_key_material => Base64.encode64(public_key.to_s)) end
@private
# File lib/aws/ec2/key_pair_collection.rb, line 75 def member_class KeyPair end