0
私は秘密鍵を扱う料理本を書いています。何かがうまくいかない場合、シェフはリソース全体をログにダンプして、何が起こったかをエンドユーザに示します。しかし、これもログに秘密鍵を印刷することになり、これは容認できません。機密データのロギングを防ぐために、sensitive
リソース機能を採用する方法はありますか?シェフ:機密属性を使って作業する
私は秘密鍵を扱う料理本を書いています。何かがうまくいかない場合、シェフはリソース全体をログにダンプして、何が起こったかをエンドユーザに示します。しかし、これもログに秘密鍵を印刷することになり、これは容認できません。機密データのロギングを防ぐために、sensitive
リソース機能を採用する方法はありますか?シェフ:機密属性を使って作業する
それは離れて、常に1つのGoogleのクエリです:シェフクライアント12.14のよう
、個々のリソースのプロパティは敏感でマークすることができます:trueの場合、リソースの状態をエクスポートするとき、そのプロパティの値を抑制しています。
だからプロパティ定義にsensitive: true
を追加、などの機密カスタムリソースの特定のプロパティをマークする:
resource_name :ssh_private_key
default_action :create
property :private_key, String, required: true, sensitive: true
^^^^^^^^^^^^^^^
その出力は、そのプロパティのために抑制されます後:何
ssh_private_key("invalid_passphrase") do
action [:create]
default_guard_interpreter :default
declared_type :ssh_private_key
cookbook_name "ama-ssh-private-keys-integration"
user "root"
private_key "*sensitive value suppressed*"
public_key "AAAAB3NzaC1yc2EAAAADAQABAAAAYQDCLY+8qnsrW/RrjDgz1b026hg9Lb78KV2c00sA4v6iSHVZoRKdnoIFr3dnWwV5Urt1U9fJJVy0fPLDWnAdYtI7U37k0GLpZhPS3ps/W9j1ZgslEQMQpvAD19yuJG/NXzk="
passphrase "*sensitive value suppressed*"
わかりませんあなたは、すべてのシェフリソースに共通の['sensitive'](https://docs.chef.io/resource_common.html#properties)というプロパティを認識していますか? – StephenKing
@StephenKingはい、しかし、私は強制的に私のカスタムリソースの出力を抑制する必要があります(3つのリソースのための敏感な作品は、ユーザーによって有効にする必要があります)。私は答えを見つけた、私はそれを2番目に投稿します。 – Etki