Поиск кукол не выполняется с ожидаемым значением Sensitive, получил String - PullRequest
0 голосов
/ 30 января 2019

Я пытаюсь внедрить зашифрованные значения в yaml в Hiera 5 для безопасного ввода паролей в Puppet (enterprise) 5.3 с помощью автоматического поиска.* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * [100к типу Sensitive (для соответствия параметрам класса).

Утверждение с помощью команды puppet lookup завершается неудачно с:

[user@rhel7 ~]$ puppet lookup my_module::db_pass --environment test --type Sensitive[String]
Error: Could not run: Found value has wrong type, expects a Sensitive value, got String 

Также отображаются lookup_options находят, и они выглядят разумно:

[user@rhel7 ~]$ puppet lookup my_module::db_pass --environment test --explain-options
Hierarchy entry "Passwords"
        Path "/etc/puppetlabs/code/environments/test/modules/my_module/data/secrets.eyaml"
          Original path: "secrets.eyaml"
          Found key: "lookup_options" value: {
            "^my_module::.*pass$" => {
              "convert_to" => "Sensitive"
            }
          }

Расшифровка работает очень хорошо (к сожалению, для открытого текста - не уверен, что это ожидается?)

[user@rhel7 ~]$ puppet lookup my_module::db_pass --environment test
Found key: "my_module::db_pass" value: "password_is_taco"

Настройка какследует:

[user@rhel7 /etc/puppetlabs/puppet/environment/test/modules/my_module]$ cat hiera.eyaml
---
version: 5
defaults:
  data_hash: yaml_data
  datadir: data

hierarchy:
  - name: "Passwords"
    lookup_key: eyaml_lookup_key
    paths:
      - "secrets.eyaml"
    options:
        pkcs7_private_key: "/etc/puppetlabs/puppet/keys/private_key.pkcs7.pem"
        pkcs7_public_key: "/etc/puppetlabs/puppet/keys/public_key.pkcs7.pem"
[user@rhel7 /etc/puppetlabs/puppet/environment/test/modules/my_module]$ cat ./data/secrets.eyaml
---
lookup_options:
  '^my_module::.*pass$':
    convert_to: "Sensitive"

my_module::db_pass: >
    ENC[PKCS7,MIIBqQYJKoZ...snip]

Мне также не удалось использовать различные регулярные выражения и / или просто использовать ключи напрямую:

lookup_options:
  my_module::db_pass:
    convert_to: "Sensitive"

Заранее извиняюсь за любые незначительные проблемы с копированием-вставкойс запутанным кодом:)

...