Je suis en train d'utiliser le aws-sdk-ruby
pour importer des certificats à ACM. Toutefois, lorsque j'essaie d'utiliser le Aws::ACM::Client#import_certificate
en utilisant l'une des méthodes suivantes, la trace de la pile indique que ma clé privée n'est pas 1024 ou 2048. Si tel était le cas, Entrust n'aurait pas signé mon certificat. J'ai aussi dit que le programme openssl
pour générer en 2048.-aws sdk-rubis Aws :: ACM :: chemins de fichier # client de import_certificate ou le contenu des fichiers
Le message d'erreur
La clé privée est pas pris en charge. Seules les clés privées RSA 1024 bits et 2048 bits sont autorisées.
Premier exemple de code
def acm_upload(options)
require 'aws-sdk'
@aws_region = ENV['AWS_REGION'] || ENV['AWS_DEFAULT_REGION'] || 'us-west-2'
@aws_profile = ENV['AWS_PROFILE'] || ENV['AWS_DEFAULT_PROFILE'] || 'default'
acm = Aws::ACM::Client.new(region: @aws_region, profile: @aws_profile)
begin
puts '=> Uploading Key, Cert, and Chain to ACM.'
aws_response = acm.import_certificate({
certificate: options[:cert_name],
private_key: options[:key_name],
certificate_chain: options[:chain_name],
})
rescue Aws::ACM::Errors::ServiceError => e
puts 'An AWS ACM Service Error has occured.'
raise e.message
rescue Aws::Errors::ServiceError => e
puts 'An AWS Error has occured.'
raise e.message
end
puts aws_response
end
acm_upload({
cert_name: './ssl/certificate/signed_cert.crt',
key_name: './ssl/key/private_key.pem',
chain_name: './ssl/chains/cert_chain.crt'
})
Le premier appel de méthode dit ma clé n'est pas 2048bit. Alors la deuxième méthode fait aussi bien:
acm_upload({
cert_name: File.read('./ssl/certificate/signed_cert.crt'),
key_name: File.read('./ssl/key/private_key.pem'),
chain_name: File.read('./ssl/chains/cert_chain.crt)'
})
Même erreur que ci-dessus. La documentation n'est pas très claire pour moi sur ce qu'elle attend. Il dit des données, et j'ai pensé que c'était le contenu du fichier de certificat. Quelqu'un d'autre a-t-il déjà eu ce problème?
J'ai été en mesure de télécharger la clé, le certificat et la chaîne dans ACM en utilisant la CLI aws
Python qu'ils fournissent en utilisant file://
.
J'ai pu télécharger la clé, un certificat , et chaîne à ACM en utilisant l'AWS Python CLI que le y fournir en utilisant le fichier: //. – Pred