Aller au contenu principal

Gérer les autorisations de projet

Les autorisations de projet contrôlent qui peut accéder et gérer les Ressources de votre projet Lakebase. Utilisez les permissions de projet pour accorder l'accès aux identités, aux groupes et aux Service Principal Databricks afin d'effectuer des actions telles que la création de Branch, la gestion de compute et la visualisation des détails de connexion.

remarque

Les autorisations de projet sont distinctes des autorisations d'accès à la base de données. Les autorisations de projet contrôlent les actions de la plateforme Lakebase, tandis que les autorisations de rôle Postgres contrôlent l'accès à la base de données. Consultez Comprendre les niveaux d'autorisation pour plus d'informations.

Pour un tutoriel étape par étape sur l'octroi d'un accès au projet et à la base de données aux utilisateurs, consultez Tutoriel : Accorder un accès au projet et à la base de données à un nouvel utilisateur.

Architecture d'authentification

Lakebase utilise deux couches d'authentification distinctes qui servent à des fins différentes :

Couche Workspace (Gestion de plateforme)

Utilisez l’authentification au niveau du Workspace pour gérer l’infrastructure Lakebase par programmation :

  • Objet : Créer et gérer des projets, des Branches et des computes
  • Authentification : jetons OAuth Workspace
  • Autorisations requises : CAN_MANAGE, CAN_USE ou CAN_CREATE ACL de projet (CAN_CREATE est hérité par tous les utilisateurs du Workspace par default)
  • Interfaces : API REST, Databricks CLI, Databricks SDKs (Python, Java, Go), Terraform
  • **Documentation** : Consultez l'API, laCLI et Terraform

Les jetons Workspace peuvent également générer des jetons OAuth de base de données en utilisant l'generate_database_credential opération.

Couche de base de données (Accès aux données)

Utilisez l'authentification au niveau de la base de données pour vous connecter à votre base de données Postgres et travailler avec les données :

  • **Objectif** : Interroger des tables, insérer/mettre à jour/supprimer des données, gérer les schémas
  • Authentification : jetons de base de données OAuth OU mots de passe Postgres
  • **Autorisations requises** : Rôles Postgres et autorisations GRANT
  • Interfaces : clients Postgres (psql, pgAdmin), drivers (psycopg, JDBC), Data API
  • Documentation : Consultez À propos de l'authentification

Distinction clé : les jetons de Workspace gèrent les ressources de la plateforme, mais ne sont pas utilisés directement pour les connexions de base de données. Les connexions de base de données nécessitent soit un jeton de base de données OAuth (généré à partir d'un jeton de workspace), soit un mot de passe Postgres.

Quand utiliser chaque couche

Les deux couches ensemble : Les développeurs qui ont besoin d'automatiser le provisionnement de l'infrastructure ET d'accéder aux données (par exemple, les pipelines CI/CD qui créent des branches de test et exécutent des queries)

Gestion de la plateforme uniquement : Ingénieurs de plateforme ou scripts d'automatisation qui provisionnent l'infrastructure, mais n'ont pas besoin d'accès aux données.

Accès à la base de données uniquement : Data analysts, applications ou services qui query/modifient des données à l'aide d'une infrastructure pré-provisionnée

Types d’autorisations

Les projets Lakebase prennent en charge trois niveaux d'autorisation :

  • **CAN CREATE** : Afficher et créer des ressources de projet
  • PEUT UTILISER : consulter et utiliser les ressources du projet (connecter, lister, afficher) sans les créer ni les gérer
  • CAN MANAGE : contrôle total sur la configuration du projet et les ressources

Pour une ventilation détaillée des actions que chaque permission autorise, consultez les fonctionnalités de permission de projet.

Autorisations default

Lorsque vous créez un projet Lakebase, les autorisations suivantes sont automatiquement attribuées aux identités dans le workspace où le projet a été créé :

Identité/Groupe

Autorisation

Description

Utilisateurs du Workspace

CRÉATION AUTORISÉE

Tous les utilisateurs du Workspace peuvent afficher et créer des projets.

Propriétaire du projet

Gestion autorisée

L'utilisateur qui a créé le projet a le contrôle total.

Administrateurs de Workspace

Gestion autorisée

Tous les administrateurs de Workspace ont un contrôle total

Identité/Groupe

Autorisation

Description

Utilisateurs du Workspace

CRÉATION AUTORISÉE

Tous les utilisateurs du Workspace peuvent afficher et créer des projets.

Propriétaire du projet

Gestion autorisée

L'utilisateur qui a créé le projet a le contrôle total.

Administrateurs de Workspace

Gestion autorisée

Tous les administrateurs de Workspace ont un contrôle total

Ces autorisations par default garantissent que le créateur du projet et les administrateurs du Workspace ont un contrôle total, tandis que tous les utilisateurs du Workspace peuvent découvrir et créer des ressources de projet. Pour accorder l'accès à d'autres, vous devez explicitement accorder les autorisations CAN USE ou CAN MANAGE à des utilisateurs, des groupes ou des Service Principals spécifiques.

remarque

À propos des utilisateurs et des administrateurs du Workspace :

  • **Les utilisateurs du workspace** sont tous les utilisateurs du workspace qui sont membres du users groupe. Voir les autorisations de workspace par default.
  • Les administrateurs du Workspace disposent de privilèges élevés et peuvent gérer tous les projets du Workspace. Voir Créer un workspace.
  • Les autorisations de projet sont limitées au Workspace où le projet a été créé. Les utilisateurs d'autres workspaces n'ont pas automatiquement accès à votre projet.

Accorder les autorisations de projet

Pour accorder des autorisations de projet à d’autres utilisateurs, groupes ou Service Principal :

  1. Accédez à votre projet dans l'application Lakebase.
  2. Cliquez sur Paramètres dans la barre latérale gauche.
  3. Faites défiler jusqu'à la section **Autorisations du projet**.
  4. Cliquez sur Accorder l'autorisation .
  5. Sélectionnez l'identité, le groupe ou le Service Principal auquel vous souhaitez accorder l'accès.
  6. Choisissez le niveau d'autorisation : CAN USE ou CAN MANAGE .
  7. Cliquez sur Accorder .

Accorder la permission de projet

remarque

Seuls les utilisateurs disposant de l'autorisation CAN MANAGE sur le projet peuvent accorder ou modifier les autorisations.

important

À propos de l'application des autorisations :

Les autorisations du projet sont appliquées via l’API. Si vous tentez d’effectuer une action pour laquelle vous n’avez pas l’autorisation (par exemple, créer une Branch sans CAN MANAGE), l’Opération échouera.

Actuellement, l'interface utilisateur de Lakebase ne masque pas encore les fonctionnalités ou ne désactive pas les boutons en fonction de votre niveau d'autorisation. Vous pouvez voir des options pour des actions que vous ne pouvez pas effectuer. Si vous tentez ces actions, vous recevrez une erreur d'autorisation.

Modifier ou révoquer les autorisations

Pour modifier ou révoquer les autorisations :

  1. Accédez aux Paramètres de votre projet dans l'application Lakebase.
  2. Dans la section **Autorisations du projet**, recherchez l'utilisateur, le groupe ou le Service Principal.
  3. Pour modifier les autorisations : Cliquez sur Icône de crayon. l'icône de modification à côté de l'identité et sélectionnez un niveau d'autorisation différent.
  4. Pour révoquer l'accès : Cliquez sur l'icône de suppression à côté de l'identité et confirmez la suppression.
important

Vous ne pouvez pas modifier ou supprimer les autorisations pour les administrateurs de Workspace ou le propriétaire du projet. Ces autorisations sont définies par default et ne peuvent pas être modifiées.

Pour gérer les autorisations de projet à l'aide de l'API REST, de la CLI, des SDK ou de Terraform, consultez Octroyer des autorisations par programmation.

Fonctionnalités d'autorisation de projet

Chaque niveau d'autorisation (CAN CREATE, CAN USE, CAN MANAGE) permet différentes actions sur les ressources de projet, y compris les projets, les branches, les snapshots, les endpoints de compute et les opérations.

Pour une liste complète des actions permises par chaque niveau d'autorisation, consultez les ACL du projet Lakebase.

Comprendre les niveaux d'autorisation

Lakebase Postgres utilise deux couches d'autorisations :

Autorisations du projet

Les permissions de projet contrôlent les actions au niveau de la plateforme, telles que la création de branches, la gestion des computes et la gestion des paramètres de projet.

Géré via : Interface utilisateur de l'application Lakebase (Paramètres du projet > Permissions du projet)

Octroi à : identités Databricks, groupes et Service Principal

astuce

Permissions de projet vs accès à la base de données : Les permissions de projet contrôlent les opérations de gestion de la plateforme (création de branches, gestion des computes). Pour gérer les autorisations du projet par programmation, consultez Accorder des autorisations par programmation. Pour la gestion programmatique des ressources du projet (branches, computes, etc.), consultez le guide de l'API Autoscaling Lakebase et la CLI Databricks pour Lakebase.

Autorisations de base de données

Les autorisations de rôle Postgres contrôlent qui peut accéder aux données au sein de la base de données elle-même.

Géré via : Commandes SQL Postgres (GRANT, REVOKE)

Accorder à : Rôles Postgres

important

Ces systèmes n'ont aucune synchronisation automatique.

Vous pouvez accorder ces autorisations indépendamment ou ensemble, selon les exigences de votre organisation :

  • Accordez les deux couches aux utilisateurs qui ont besoin d'un accès à la plateforme et à la base de données.
  • Accordez uniquement les autorisations de projet aux utilisateurs qui gèrent l’infrastructure mais n’ont pas besoin de query les données.
  • N'accordez l'accès à la base de données qu'aux utilisateurs qui ont besoin d'interroger des données mais pas de gérer les ressources Lakebase (ils peuvent se connecter à l'aide d'outils comme psql avec les détails de connexion).

Pour configurer l'accès à la base de données pour les utilisateurs, voir Créer des rôles Postgres et Gérer les autorisations de base de données. Pour un didacticiel complet, consultez Didacticiel : Accorder l'accès au projet et à la base de données à un nouvel utilisateur.

Ressources supplémentaires