Spec-Zone.ru › Chef 18

iis_app ресурс

[редактировать на GitHub]

Используйте 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/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API