Ресурс aws_iam_saml_providers
Используйте ресурс аудита InSpec aws_iam_saml_providers для проверки свойств некоторых или всех поставщиков AWS IAM SAML.
Синтаксис
Блок ресурса aws_iam_saml_providers возвращает всех поставщиков IAM SAML и позволяет проверить эту группу поставщиков.
describe aws_iam_saml_providers do
it { should exist }
end
Параметры
saml_provider_arn (обязательно)
Этот ресурс принимает один параметр — ARN поставщика SAML. Его можно передать как строку или как saml_provider_arn: 'value' пар значение-ключ в хэше.
Свойства
| Свойство | Описание |
|---|---|
| provider_arns | ARN возвращённых поставщиков. |
| valid_untils | Дата и время истечения срока действия поставщика SAML. |
| entries | Предоставляет доступ к исходным результатам запроса, которые можно рассматривать как массив хэшей. |
Примеры
Убедитесь, что есть хотя бы один действующий поставщик
describe.one do
aws_iam_saml_providers.provider_arns.each do |provider_arn|
describe aws_iam_saml_provider(provider_arn) do
it { should exist }
its('arn') { should match("arn:aws:iam::.*:saml-provider\/FANCY") }
its('valid_until') { should be > Time.now + 90 * 86400 }
end
end
end
Убедитесь, что есть ровно один поставщик SAML
describe aws_iam_saml_providers do
its('entries.count') { should cmp 1 }
end
Убедитесь, что есть хотя бы один поставщик, который соответствует условиям
describe aws_iam_saml_providers.where{ arn =~ /arn:aws:iam::.*:saml-provider\/FANCY/ } do
it { should exist }
end
Матчеры
Полный список доступных матчеров см. на нашей странице матчеров.
exists
Матчер exists проверяет, существуют ли отфильтрованные поставщики IAM SAML.
describe aws_iam_saml_providers.where( <property>: <param>) do
it { should exist }
end
Также можно использовать it { should_not exist }.
Разрешения AWS
У вашего Принципала должны быть разрешены следующие права: iam:ListSamlProviders iam:GetSamlProvider
© 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/aws_iam_saml_providers/