第7章 Automation Controller 設定ファイル内のプレーンテキストパスワードの暗号化
Automation Controller 設定ファイルに保存されるパスワードは、プレーンテキストで保存されます。/etc/tower/conf.d/
ディレクトリーへのアクセス権を持つユーザーは、データベースへのアクセスに使用されるパスワードを表示できます。ディレクトリーへのアクセスは権限によって制御されるため、ディレクトリーは保護されていますが、セキュリティーに関する調査結果によっては、この保護は不十分であると考えられています。解決策は、パスワードを個別に暗号化することです。
7.1. PostgreSQL パスワードハッシュの作成
手順
Automation Controller ノードで、次のコマンドを実行します。
# awx-manage shell_plus
続いて、python プロンプトから以下を実行します。
>>> from awx.main.utils import encrypt_value, get_encryption_key \ >>> postgres_secret = encrypt_value('$POSTGRES_PASS') \ >>> print(postgres_secret)
注記$POSTGRES_PASS
変数を、暗号化する実際のプレーンテキストのパスワードに置き換えます。出力は以下のようになります。
$encrypted$UTF8$AESCBC$Z0FBQUFBQmtLdGNRWXFjZGtkV1ZBR3hkNGVVbFFIU3hhY21UT081eXFkR09aUWZLcG9TSmpndmZYQXFyRHVFQ3ZYSE15OUFuM1RHZHBqTFU3S0MyNEo2Y2JWUURSYktsdmc9PQ==
これらのハッシュの完全な値をコピーして保存します。
次の例に示すように、ハッシュ値は
$encrypted$
で始まり、単なる文字列ではありません。$encrypted$AESCBC$Z0FBQUFBQmNONU9BbGQ1VjJyNDJRVTRKaFRIR09Ib2U5TGdaYVRfcXFXRjlmdmpZNjdoZVpEZ21QRWViMmNDOGJaM0dPeHN2b194NUxvQ1M5X3dSc1gxQ29TdDBKRkljWHc9PQ==
$*_PASS
値は、インベントリーファイル内ですでにプレーンテキストになっていることに注意してください。
これらの手順では、Automation Controller 設定ファイル内のプレーンテキストパスワードを置き換えるハッシュ値を提供します。