Lakehouse pour Apache Iceberg : contrôle des accès avec IAM

Pour gérer le contrôle des accès à Lakehouse pour Apache Iceberg, vous devez ajouter des utilisateurs à un projet Google Cloud et leur attribuer les rôles appropriés. Par défaut, les projets n'accordent l'accès qu'à leur créateur d'origine. Les autres utilisateurs ne peuvent pas accéder aux ressources tant qu'ils n'ont pas été ajoutés comme membres du projet ou associés à des ressources spécifiques.

Qu'est-ce qu'IAM ?

Google Cloud propose Identity and Access Management (IAM), qui vous permet d'attribuer un accès plus précis à des ressources Google Cloud spécifiques et empêche tout accès non souhaité à d'autres ressources. IAM vous permet d'adopter le principe de sécurité du moindre privilège afin de n'accorder que l'accès nécessaire à vos ressources dans *Lakehouse*.

En définissant des stratégies IAM, vous pouvez également contrôler qui (une identité) dispose de quelles autorisations (rôles) pour quelles ressources. Les stratégies IAM permettent d'attribuer des rôles spécifiques à un membre du projet, et ainsi d'accorder à cette identité certaines autorisations. Par exemple, pour une ressource donnée, telle qu'un projet, vous pouvez attribuer le rôle roles/biglake.admin à un compte Google. Celui-ci peut contrôler les ressources Lakehouse dans le projet, mais ne peut pas gérer d'autres ressources. IAM permet également de gérer les rôles de base accordés aux membres de l'équipe de projet.

Options de contrôle des accès pour les utilisateurs

Pour permettre à des utilisateurs de créer et de gérer vos ressources Lakehouse, vous pouvez les ajouter en tant que membres d'une équipe à votre projet ou à des ressources spécifiques, et leur accorder des autorisations à l'aide de rôles IAM.

Un membre d'équipe peut désigner un utilisateur spécifique disposant d'un compte Google valide, un groupe Google, un compte de service ou un domaine Google Workspace. Lorsque vous ajoutez un membre d'équipe à un projet ou à une ressource, vous spécifiez les rôles à lui attribuer. IAM propose trois types de rôles : les rôles prédéfinis, les rôles de base et les rôles personnalisés.

Pour afficher la liste des fonctionnalités de chaque rôle Lakehouse et les méthodes d'API auxquelles un rôle spécifique donne accès, consultez Rôles IAM Lakehouse.

Pour les autres types de membres, tels que les comptes de service et les groupes, consultez la documentation de référence sur les liaisons de stratégie.

Comptes de service

Lorsque vous appelez les API Lakehouse pour effectuer des actions dans le projet où se trouve votre service, Lakehouse effectue ces actions en votre nom à l'aide d'un compte de service d'agent de service par catalogue. Ces comptes de service sont utilisés par le catalogue du runtime Lakehouse et se voient attribuer le rôle roles/biglake.serviceAgent dans votre projet.

Stratégies IAM pour les ressources

Vous pouvez accorder l'accès aux ressources Lakehouse en associant directement des stratégies IAM à ces ressources, telles qu'un service Lakehouse. Une stratégie IAM vous permet de gérer des rôles IAM sur ces ressources au lieu ou en complément des rôles que vous gérez au niveau du projet. Vous disposez ainsi de la flexibilité nécessaire pour appliquer le principe du moindre privilège, qui consiste à restreindre l'accès aux seules ressources spécifiques dont les collaborateurs ont besoin pour effectuer leur travail.

Les ressources héritent également des stratégies de leurs ressources parentes. Si vous définissez une stratégie au niveau du projet, elle est héritée par toutes les ressources enfants. La stratégie applicable à une ressource combine la stratégie définie pour celle-ci et la stratégie héritée des niveaux supérieurs de la hiérarchie. Pour en savoir plus, consultez la hiérarchie des stratégies IAM.

Vous pouvez obtenir et définir des stratégies IAM à l'aide de la console Google Cloud , de l'API Identity and Access Management ou de la Google Cloud CLI.

Étapes suivantes