* split up select.md * array-join.md basic refactoring * distinct.md basic refactoring * format.md basic refactoring * from.md basic refactoring * group-by.md basic refactoring * having.md basic refactoring * additional index.md refactoring * into-outfile.md basic refactoring * join.md basic refactoring * limit.md basic refactoring * limit-by.md basic refactoring * order-by.md basic refactoring * prewhere.md basic refactoring * adjust operators/index.md links * adjust sample.md links * adjust more links * adjust operatots links * fix some links * adjust aggregate function article titles * basic refactor of remaining select clauses * absolute paths in make_links.sh * run make_links.sh * remove old select.md locations * translate docs/es * translate docs/fr * translate docs/fa * remove old operators.md location * change operators.md links * adjust links in docs/es * adjust links in docs/es * minor texts adjustments * wip * update machine translations to use new links * fix changelog * es build fixes * get rid of some select.md links * temporary adjust ru links * temporary adjust more ru links * improve curly brace handling * adjust ru as well * fa build fix * ru link fixes * zh link fixes * temporary disable part of anchor checks
9.5 KiB
machine_translated | machine_translated_rev | toc_priority | toc_title |
---|---|---|---|
true | 72537a2d52 |
48 | Le Contrôle d'accès et de Gestion de Compte |
Le Contrôle d'accès et de Gestion de Compte
Clickhouse prend en charge la gestion du contrôle d'accès basée sur RBAC approche.
Entités d'accès ClickHouse:
Vous pouvez configurer des entités d'accès à l'aide de:
-
Flux de travail piloté par SQL.
Vous avez besoin de permettre cette fonctionnalité.
-
Serveur les fichiers de configuration
users.xml
etconfig.xml
.
Nous vous recommandons D'utiliser un workflow piloté par SQL. Les deux méthodes de configuration fonctionnent simultanément, donc si vous utilisez les fichiers de configuration du serveur pour gérer les comptes et les droits d'accès, vous pouvez passer doucement au flux de travail piloté par SQL.
!!! note "Avertissement" Vous ne pouvez pas gérer la même entité d'accès par les deux méthodes de configuration simultanément.
Utilisation
Par défaut, le serveur ClickHouse fournit le compte utilisateur default
ce qui n'est pas autorisé à utiliser le contrôle D'accès piloté par SQL et la gestion de compte, mais a tous les droits et autorisations. Le default
compte d'utilisateur est utilisé dans tous les cas, lorsque l'utilisateur n'est pas défini, par exemple, lors de la connexion du client ou dans les requêtes distribuées. Dans le traitement des requêtes distribuées, un compte utilisateur par défaut est utilisé si la configuration du serveur ou du cluster ne spécifie pas d'utilisateur et mot de passe propriété.
Si vous commencez simplement à utiliser ClickHouse, vous pouvez utiliser le scénario suivant:
- Permettre Contrôle D'accès piloté par SQL et gestion de compte pour le
default
utilisateur. - Connexion en vertu de la
default
compte d'utilisateur et de créer tous les utilisateurs. N'oubliez pas de créer un compte d'administrateur (GRANT ALL ON *.* WITH GRANT OPTION TO admin_user_account
). - Restreindre les autorisations pour l'
default
utilisateur et désactiver le contrôle D'accès piloté par SQL et la gestion des comptes pour elle.
Propriétés de la Solution actuelle
- Vous pouvez accorder des autorisations pour les bases de données et les tables même si elles n'existent pas.
- Si une table a été supprimée, tous les privilèges correspondant à cette table ne sont pas révoqués. Ainsi, si une nouvelle table est créée plus tard avec le même nom, tous les privilèges redeviennent réels. Pour révoquer les privilèges correspondant à la table supprimée, vous devez effectuer, par exemple, l'
REVOKE ALL PRIVILEGES ON db.table FROM ALL
requête. - Il n'y a pas de paramètres de durée de vie pour les privilèges.
Compte d'utilisateur
Un compte d'utilisateur est une entité qui permet d'autoriser quelqu'un à ClickHouse. Un compte utilisateur contient:
- Informations d'Identification.
- Privilège qui définissent l'étendue des requêtes que l'utilisateur peut effectuer.
- Hôtes à partir desquels la connexion au serveur ClickHouse est autorisée.
- Rôles accordés et par défaut.
- Paramètres avec leurs contraintes qui s'appliquent par défaut lors de la connexion de l'utilisateur.
- Profils de paramètres assignés.
Des privilèges à un compte d'utilisateur peuvent être accordés par GRANT requête ou en attribuant rôle. Pour révoquer les privilèges d'un utilisateur, ClickHouse fournit REVOKE requête. Pour lister les privilèges d'un utilisateur, utilisez - SHOW GRANTS déclaration.
Gestion des requêtes:
Paramètres Application
Les paramètres peuvent être définis de différentes manières: pour un compte utilisateur, dans ses profils de rôles et de paramètres accordés. Lors d'une connexion utilisateur, si un paramètre est défini dans différentes entités d'accès, la valeur et les contraintes de ce paramètre sont appliquées par les priorités suivantes (de plus haut à plus bas):
- Paramètre de compte utilisateur.
- Les paramètres de rôles par défaut du compte d'utilisateur. Si un paramètre est défini dans certains rôles, l'ordre de la mise en application n'est pas défini.
- Les paramètres dans les profils de paramètres attribués à un utilisateur ou à ses rôles par défaut. Si un paramètre est défini dans certains profils, l'ordre d'application des paramètres n'est pas défini.
- Paramètres appliqués à l'ensemble du serveur par défaut profil par défaut.
Rôle
Le rôle est un conteneur pour l'accès des entités qui peuvent être accordées à un compte d'utilisateur.
Rôle contient:
- Privilège
- Paramètres et contraintes
- Liste des rôles attribués
Gestion des requêtes:
Les privilèges d'un rôle peuvent être accordés par GRANT requête. Pour révoquer les privilèges D'un rôle ClickHouse fournit REVOKE requête.
La Ligne Politique
La stratégie de ligne est un filtre qui définit les lignes disponibles pour un utilisateur ou pour un rôle. La stratégie de ligne contient des filtres pour une table spécifique et une liste de rôles et / ou d'utilisateurs qui doivent utiliser cette stratégie de ligne.
Gestion des requêtes:
Les Paramètres De Profil
Paramètres profil est une collection de paramètre. Le profil paramètres contient les paramètres et les contraintes, ainsi que la liste des rôles et/ou des utilisateurs auxquels ce quota est appliqué.
Gestion des requêtes:
Quota
Le Quota limite l'utilisation des ressources. Voir Quota.
Quota contient un ensemble de limites pour certaines durées, et la liste des rôles et/ou des utilisateurs qui devrait utiliser ce quota.
Gestion des requêtes:
Activation du contrôle D'accès piloté par SQL et de la gestion de Compte
-
Configurez un répertoire pour le stockage des configurations.
Clickhouse stocke les configurations d'entité d'accès dans le dossier défini dans access_control_path paramètre de configuration du serveur.
-
Activez le contrôle D'accès piloté par SQL et la gestion de compte pour au moins un compte d'utilisateur.
Par défaut, le contrôle D'accès piloté par SQL et la gestion des comptes sont activés pour tous les utilisateurs. Vous devez configurer au moins un utilisateur dans le
users.xml
fichier de configuration et affecter 1 au access_management paramètre.