iis_app ресурс
Используйте iis_app ресурс аудита Chef InSpec для проверки состояния IIS на сервере Windows Server 2012 (и более поздних версий).
Доступность
Установка
Этот ресурс распространяется вместе с самим Chef InSpec. Вы можете использовать его автоматически.
Версия
Этот ресурс стал доступен в версии v1.28.0 InSpec.
Синтаксис
Блок ресурса iis_app объявляет детали о названном сайте:
describe iis_app('application_path', 'site_name') do
it { should exist }
it { should have_application_pool('application_pool') }
it { should have_protocol('protocol') }
it { should have_site_name('site') }
it { should have_physical_path('physical_path') }
it { should have_path('application_path') }
end
где
-
'application_path'— путь к приложению, например'/myapp' -
have_application_pool,have_protocol,have_site_name,have_physical_pathиhave_path— различные сопоставители для этого ресурса.
Например:
describe iis_app('/myapp', 'Default Web Site') do
it { should exist }
it { should have_application_pool('MyAppPool') }
it { should have_protocol('http') }
it { should have_site_name('Default Web Site') }
it { should have_physical_path('C:\\inetpub\\wwwroot\\myapp') }
it { should have_path('\\My Application') }
end
Свойства
пул приложений
application_pool свойство возвращает имя пула приложений, в котором выполняется корневое приложение сайта, например DefaultAppPool.
its('application_pool') { should eq 'root' }
путь
path свойство возвращает путь к приложению.
its('path') { should eq '\my_app' }
физический путь
physical_path свойство возвращает физический путь к приложению, например 'C:\\inetpub\\wwwroot\\myapp'.
its('phyiscal_path') { should eq 'C:\\inetpub\\wwwroot\\myapp' }
протоколы
protocols свойство возвращает массив протоколов, т.е. привязку к сайту, например 'http'. Один сайт может иметь несколько привязок.
its('protocols') { should include 'http' }
имя сайта
site_name свойство возвращает имя сайта, например 'Default Web Site'
its('site_name') { should eq 'Default Web Site' }
Примеры
Проверка стандартного веб-приложения IIS
describe iis_app('Default Web Site') do
it { should exist }
it { should be_running }
it { should have_app_pool('DefaultAppPool') }
it { should have_binding('http *:80:') }
it { should have_path('%SystemDrive%\\inetpub\\wwwroot') }
end
Проверка, запущен ли сервис IIS
describe service('W3SVC') do
it { should be_installed }
it { should be_running }
end
Сопоставители
Полный список доступных сопоставителей см. на нашей странице сопоставителей.
существует
exist сопоставитель проверяет, существует ли сайт:
it { should exist }
имеет пул приложений
have_application_pool сопоставитель проверяет, существует ли заданный пул приложений для веб-приложения:
it { should have_application_pool('DefaultAppPool') }
имеет протокол
have_protocol сопоставитель проверяет, существует ли указанный протокол для веб-приложения:
it { should have_protocol('http') }
или:
it { should have_protocol('https') }
Веб-приложение может иметь несколько привязок; используйте have_protocol сопоставитель для каждого уникального веб-приложения, привязку к которому нужно проверить.
Атрибуты протокола
have_protocol сопоставитель также может проверять атрибуты, определённые для веб-приложения enabledProtocols.
it { should have_protocol('http') }
Например, проверка сайта, у которого не включён https:
it { should_not have_protocol('https') }
it { should have_protocol('http') }
Проверка веб-приложения с включённым https и http:
it { should have_protocol('https') }
it { should have_protocol('http') }
имеет физический путь
have_physical_path сопоставитель проверяет, определён ли указанный путь для веб-приложения:
it { should have_physical_path('C:\\inetpub\\wwwroot') }
© 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/iis_app/