Ресурс key_rsa
Используйте ресурс аудита Chef InSpec, чтобы проверить пары открытых/закрытых ключей RSA.
Этот ресурс в основном полезен в сочетании с ресурсом x509_certificate, но также может использоваться для проверки SSH-ключей.
Доступность
Установка
Этот ресурс распространяется вместе с самим Chef InSpec. Вы можете использовать его автоматически.
Версия
Этот ресурс впервые стал доступен в версии v1.18.0 InSpec.
Синтаксис
Блок ресурса key_rsa объявляет key file, который должен быть проверен.
describe key_rsa('mycertificate.key') do
it { should be_private }
it { should be_public }
its('public_key') { should match "-----BEGIN PUBLIC KEY-----\n3597459df9f3982" }
its('key_length') { should eq 2048 }
end
Вы можете использовать необязательный пароль с key_rsa
describe key_rsa('mycertificate.key', 'passphrase') do
it { should be_private }
end
Свойства
-
public_key,private_key,key_length
Примеры свойств
public_key (Строка)
Свойство public_key возвращает открытую часть пары ключей RSA.
describe key_rsa('/etc/pki/www.mywebsite.com.key') do
its('public_key') { should match "-----BEGIN PUBLIC KEY-----\n3597459df9f3982......" }
end
private_key (Строка)
Свойство private_key возвращает закрытый ключ пары ключей RSA.
describe key_rsa('/etc/pki/www.mywebsite.com.key') do
its('private_key') { should match "-----BEGIN RSA PRIVATE KEY-----\nMIIJJwIBAAK......" }
end
key_length
Свойство key_length позволяет проверить количество битов в паре ключей.
describe key_rsa('/etc/pki/www.mywebsite.com.key') do
its('key_length') { should eq 2048 }
end
Обработчики
Полный список доступных обработчиков см. на странице обработчиков.
public?
Чтобы проверить, является ли ключ открытым, используйте следующее:
describe key_rsa('/etc/pki/www.mywebsite.com.key') do
it { should be_public }
end
private?
Это свойство проверяет, содержит ли ключ закрытый ключ:
describe key_rsa('/etc/pki/www.mywebsite.com.key') do
it { should be_private }
end
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/key_rsa/