Получить имя хоста -f в YAML (yml) - PullRequest
0 голосов
/ 19 ноября 2018

У меня есть файл конфигурации .cfg, в котором жестко задано имя хоста.Я пытаюсь найти способ получить имя хоста локально (динамически), выполнив команду, аналогичную hostname -f, чтобы она сконфигурировала переменную в .cfg, без запуска сценария, такого как python, для написания конфигурациивремя опросаМожно ли выполнить команду 'yum', которая получает имя хоста для использования в файле YAML / yml?

1 Ответ

0 голосов
/ 21 ноября 2018

Благодаря Wikipedia, я думаю, я понял, почему никто не помогает мне с этим:

Wiki YAML -> Безопасность

Безопасность YAML - эточисто язык представления данных и поэтому не имеет исполняемых команд.Хотя проверка и безопасный синтаксический анализ по своей природе возможны на любом языке данных, реализация является настолько печально известной ошибкой, что отсутствие в YAML связанного языка команд может быть относительным преимуществом безопасности.

Однако YAML допускает языковые теги, так чтопроизвольные локальные объекты могут быть созданы анализатором, который поддерживает эти теги.Любой синтаксический анализатор YAML, позволяющий выполнять сложные экземпляры объектов, открывает возможность для инъекционной атаки.Парсер Perl, позволяющий загружать объекты произвольного класса, создает так называемые «благословенные» значения.Использование этих значений может вызвать неожиданное поведение, например, если в классе используются перегруженные операторы.Это может привести к выполнению произвольного кода Perl.

Ситуация аналогична для парсеров Python или Ruby.Согласно документации PyYAML

...