ユーザー設定 

その users のセクション user.xml 設定ファイルにユーザを設定します。

の構造 users セクション:

<users>
    <!-- If user name was not specified, 'default' user is used. -->
    <user_name>
        <password></password>
        <!-- Or -->
        <password_sha256_hex></password_sha256_hex>

        <access_management>0|1</access_management>

        <networks incl="networks" replace="replace">
        </networks>

        <profile>profile_name</profile>

        <quota>default</quota>

        <databases>
            <database_name>
                <table_name>
                    <filter>expression</filter>
                <table_name>
            </database_name>
        </databases>
    </user_name>
    <!-- Other users settings -->
</users>

user_name/パスワード 

パスワードは、平文またはSHA256(hex形式)で指定できます。

  • 平文でパスワードを割り当てるには (推奨されない)、それをaに置きます password 要素。

    例えば, <password>qwerty</password>. パスワードは空白のままにできます。

  • SHA256ハッシュを使用してパスワードを割り当てるには、パスワードを password_sha256_hex 要素。

    例えば, <password_sha256_hex>65e84be33532fb784c48129675f9eff3a682b27168c0ea744b2cf58ee02337c5</password_sha256_hex>.

    シェルからパスワードを生成する方法の例:

      PASSWORD=$(base64 < /dev/urandom | head -c8); echo "$PASSWORD"; echo -n "$PASSWORD" | sha256sum | tr -d '-'
    

    結果の最初の行はパスワードです。 第二の行は、対応するSHA256ハッシュです。

  • MySQLクライアントとの互換性のために、パスワードは二重SHA1ハッシュで指定できます。 それを置く password_double_sha1_hex 要素。

    例えば, <password_double_sha1_hex>08b4a0f1de6ad37da17359e592c8d74788a83eb0</password_double_sha1_hex>.

    シェルからパスワードを生成する方法の例:

      PASSWORD=$(base64 < /dev/urandom | head -c8); echo "$PASSWORD"; echo -n "$PASSWORD" | sha1sum | tr -d '-' | xxd -r -p | sha1sum | tr -d '-'
    

    結果の最初の行はパスワードです。 第二の行は、対応する二重SHA1ハッシュです。

access_management 

この設定では、SQLドリブンの使用を無効にできます アクセス制御とアカウント管理 ユーザーのために。

可能な値:

  • 0 — Disabled.
  • 1 — Enabled.

デフォルト値は0です。

user_name/ネットワーク 

ユーザーがClickHouseサーバーに接続できるネットワークのリスト。

リストの各要素には、次のいずれかの形式を使用できます:

  • <ip> — IP address or network mask.

    例: 213.180.204.3, 10.0.0.1/8, 10.0.0.1/255.255.255.0, 2a02:6b8::3, 2a02:6b8::3/64, 2a02:6b8::3/ffff:ffff:ffff:ffff::.

  • <host> — Hostname.

    例: example01.host.ru.

    チェックアクセス、DNS問い合わせを行い、すべて返されたIPアドレスと比べてのピアがアドレスです。

  • <host_regexp> — Regular expression for hostnames.

    例, ^example\d\d-\d\d-\d\.host\.ru$

    アクセスを確認するには、 DNS PTRクエリ ピアアドレスに対して実行され、指定された正規表現が適用されます。 次に、PTRクエリの結果に対して別のDNSクエリが実行され、受信したすべてのアドレスがピアアドレスと比較されます。 正規表現は$で終わることを強くお勧めします。

すべての結果のDNSの要求をキャッシュまでのサーバが再起動してしまいます。

オープンアクセスのためのユーザーからネットワークのいずれかを指定し:

<ip>::/0</ip>

オープンアクセスのみからlocalhostを指定し:

<ip>::1</ip>
<ip>127.0.0.1</ip>

user_name/プロファイル 

を割り当てることができる設定プロファイルをユーザーです。 設定プロファイルは、 users.xml ファイル 詳細については、 設定のプロファイル.

user_name/クォータ 

クォータを使用すると、一定期間のリソース使用量を追跡または制限できます。 クォータは quotas
のセクション users.xml 設定ファイル。

ユーザにクォータセットを割り当てることができます。 クォータ設定の詳細については、以下を参照してください クォータ.

user_name/データベース 

このセクションでは、ClickHouseによって返される行を以下の目的で制限することができます SELECT クエリーによる、現在のユーザが実施基本列レベルです。

以下の構成力がユーザー user1 の行だけを見ることができます table1 の結果として SELECT クエリの値は、次のとおりです。 id フィールドは1000です。

<user1>
    <databases>
        <database_name>
            <table1>
                <filter>id = 1000</filter>
            </table1>
        </database_name>
    </databases>
</user1>

その filter 任意の式にすることができます。 UInt8-タイプ値。 通常、比較演算子と論理演算子が含まれています。 からの行 database_name.table1 る結果をフィルターを0においても返却いたしませんこのユーザーです。 このフィルタリングは PREWHERE 操作と無効 WHERE→PREWHERE 最適化。

評価: 4 - 6 投票

この内容は有用だったか。
★★★★☆