このページは ClickHouse Cloud には適用されません。ここで説明している機能は ClickHouse Cloud サービスではご利用いただけません。
詳しくは、ClickHouse の Cloud Compatibility ガイドを参照してください。
ClickHouse で LDAP 接続設定を行う
-
この公開 LDAP サーバーへの接続をテストします。
応答は次のようになります。
-
config.xmlファイルを編集し、LDAP を設定するために次を追加します。
<test_ldap_server> タグは、特定の LDAP サーバーを識別するための任意のラベルです。| Parameter | Description | Example |
|---|---|---|
| host | LDAP サーバーのホスト名または IP | ldap.forumsys.com |
| port | LDAP サーバーのディレクトリポート | 389 |
| bind_dn | ユーザーを指定するテンプレートパス | uid={user_name},dc=example,dc=com |
| enable_tls | セキュアな LDAP を使用するかどうか | no |
| tls_require_cert | connection に証明書を必須にするかどうか | never |
この例では、公開サーバーが 389 を使用しておりセキュアポートを使用していないため、デモ目的で TLS を無効にしています。
LDAP 設定の詳細については、LDAP doc pageを参照してください。
-
ユーザーのロールマッピングを設定するため、
<user_directories>セクションに<ldap>セクションを追加します。このセクションでは、ユーザーの認証方法と、認証後に付与されるロールを定義します。この基本例では、LDAP で認証されたすべてのユーザーにscientists_roleが付与されます。これは後の手順で ClickHouse に定義します。セクションは次のようになります。上記で使用している基本設定は次のとおりです。Parameter Description Example server 前の ldap_servers セクションで定義したラベル test_ldap_server roles ユーザーのマッピング先となる、ClickHouse で定義されたロール名 scientists_role base_dn ユーザーに関連付けられたグループの検索を開始するベースパス dc=example,dc=com search_filter ユーザーをマッピングする対象グループを識別する LDAP 検索フィルタ (&(objectClass=groupOfUniqueNames)(uniqueMember={bind_dn}))attribute どの attribute 名の値を返すか cn - 設定を反映するために ClickHouse server を再起動します。
ClickHouse データベースのロールと権限を設定する
このセクションの手順では、ClickHouse で SQL Access Control and Account Management が有効になっていることを前提としています。有効にするには、SQL Users and Roles ガイドを参照してください。
-
config.xmlファイルのロールマッピングセクションで使用したものと同じ名前のロールを ClickHouse に作成します -
ロールに必要な権限を付与します。次のステートメントでは、LDAP 経由で認証できるすべてのユーザーに管理者権限を付与します。
LDAP 設定をテストする
- ClickHouse clientでログインします
手順 1 で
ldapsearch コマンドを使用すると、directory 内で利用可能なすべてのユーザーを確認できます。なお、すべてのユーザーのパスワードは password です-
ユーザーが
scientists_roleロールに正しくマッピングされ、管理者権限を持っていることを確認します