パスワードファイル認証¶
Prestoは、CLI、JDBCドライバ、ODBCドライバなどのクライアントに対して、HTTPS経由のフロントエンドパスワード認証を有効にするように設定できます。ユーザー名とパスワードは、ファイルに保存されているユーザー名とパスワードに対して検証されます。
パスワードファイル認証はLDAP認証と非常に似ています。サーバーとクライアントを構成してTLSを使用し、ユーザー名とパスワードで認証する方法については、LDAPドキュメントを参照してください。
パスワード認証設定¶
コーディネーター上にetc/password-authenticator.properties
ファイルを作成することで、パスワードファイル認証を有効にします。
password-authenticator.name=file
file.password-file=/path/to/password.db
以下の設定プロパティを使用できます。
プロパティ |
説明 |
---|---|
|
パスワードファイルのパス。 |
|
パスワードファイルをリロードする頻度。デフォルトは |
|
キャッシュされた認証済みパスワードの最大数。デフォルトは |
パスワードファイル¶
ファイル形式¶
パスワードファイルには、ユーザー名とパスワードのリストが1行に1つずつ、コロンで区切られて含まれています。パスワードは、bcryptまたはPBKDF2を使用して安全にハッシュする必要があります。
bcryptパスワードは$2y$
で始まり、最小コストは8
である必要があります。
test:$2y$10$BqTb8hScP5DfcpmHo5PeyugxHz5Ky/qf3wrpD7SNm8sWuA3VlGqsa
PBKDF2パスワードは、反復回数、それに続く16進数でエンコードされたソルトとハッシュで構成されます。
test:1000:5b4240333032306164:f38d165fce8ce42f59d366139ef5d9e1ca1247f0e06e503ee1a611dd9ec40876bb5edb8409f5abe5504aab6628e70cfb3d3a18e99d70357d295002c3d0a308a0
パスワードファイルの作成¶
bcrypt形式を使用するパスワードファイルは、htpasswdユーティリティ(Apache HTTP Serverから入手可能)を使用して作成できます。Prestoはデフォルトよりも高い最小コストを強制するため、コストを指定する必要があります。
開始するには、空のパスワードファイルを作成します。
touch password.db
ユーザーtest
のパスワードを追加または更新します。
htpasswd -B -C 10 password.db test