Object
# File lib/fog/aws/iam.rb, line 57 def self.data @data ||= Hash.new do |hash, key| hash[key] = { :owner_id => Fog::AWS::Mock.owner_id, :server_certificates => {} } end end
# File lib/fog/aws/iam.rb, line 78 def data self.class.data[@aws_access_key_id] end
# File lib/fog/aws/requests/iam/delete_server_certificate.rb, line 32 def delete_server_certificate(server_certificate_name) response = Excon::Response.new response.status = 200 response.body = { 'RequestId' => Fog::AWS::Mock.request_id } self.data[:server_certificates].delete(server_certificate_name) response end
# File lib/fog/aws/requests/iam/get_server_certificate.rb, line 32 def get_server_certificate(server_certificate_name) raise Fog::AWS::IAM::NotFound unless self.data[:server_certificates].key?(server_certificate_name) response = Excon::Response.new response.status = 200 response.body = { 'Certificate' => self.data[:server_certificates][server_certificate_name], 'RequestId' => Fog::AWS::Mock.request_id } self.data[:server_certificates] response end
# File lib/fog/aws/requests/iam/list_server_certificates.rb, line 42 def list_server_certificates(options = {}) response = Excon::Response.new response.status = 200 response.body = { 'Certificates' => self.data[:server_certificates].values } response end
# File lib/fog/aws/iam.rb, line 82 def reset_data self.class.data.delete(@aws_access_key_id) end
# File lib/fog/aws/requests/iam/upload_server_certificate.rb, line 46 def upload_server_certificate(certificate, private_key, name, options = {}) if certificate.nil? || certificate.empty? || private_key.nil? || private_key.empty? raise Fog::AWS::IAM::ValidationError.new end response = Excon::Response.new # Validate cert and key begin cert = OpenSSL::X509::Certificate.new(certificate) key = OpenSSL::PKey::RSA.new(private_key) rescue OpenSSL::X509::CertificateError, OpenSSL::PKey::RSAError => e message = if e.is_a?(OpenSSL::X509::CertificateError) "Invalid Public Key Certificate." else "Invalid Private Key." end raise Fog::AWS::IAM::MalformedCertificate.new(message) end unless cert.check_private_key(key) raise Fog::AWS::IAM::KeyPairMismatch.new end if self.data[:server_certificates][name] raise Fog::AWS::IAM::EntityAlreadyExists.new else response.status = 200 path = "server-certificates/#{name}" data = { 'Arn' => Fog::AWS::Mock.arn('iam', self.data[:owner_id], path), 'Path' => path, 'ServerCertificateId' => Fog::AWS::IAM::Mock.server_certificate_id, 'ServerCertificateName' => name, 'UploadDate' => Time.now } self.data[:server_certificates][name] = data response.body = { 'Certificate' => data, 'RequestId' => Fog::AWS::Mock.request_id } end response end
Generated with the Darkfish Rdoc Generator 2.