Créer et gérer des vues autorisées
Ce document explique comment définir, créer et effectuer d'autres opérations administratives sur une vue autorisée à l'aide de la Google Cloud CLI ou de la consoleGoogle Cloud . Avant de lire ce document, vous devez avoir pris connaissance de la présentation des vues autorisées.
Rôles requis
Pour obtenir les autorisations nécessaires pour effectuer des opérations d'administration sur une vue autorisée, demandez à votre administrateur de vous accorder le rôle IAM Administrateur Bigtable (roles/bigtable.admin
) sur la table sous-jacente.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour effectuer des opérations d'administration sur une vue autorisée. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour effectuer des opérations d'administration sur une vue autorisée :
-
bigtable.authorizedViews.get
-
bigtable.authorizedViews.list
-
bigtable.authorizedViews.create
-
bigtable.authorizedViews.update
-
bigtable.authorizedViews.delete
-
bigtable.authorizedViews.getIamPolicy
-
bigtable.authorizedViews.setIamPolicy
-
bigtable.authorizedViews.readRows
-
bigtable.authorizedViews.sampleRowKeys
-
bigtable.authorizedViews.mutateRows
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour savoir comment gérer les rôles IAM Bigtable au niveau de la vue autorisée, consultez Gestion des rôles IAM au niveau de la vue autorisée.
Créer une vue autorisée
Lorsque vous créez une vue autorisée, tenez compte des requêtes qui seront exécutées sur celle-ci. Les requêtes de lecture, d'écriture et de suppression envoyées à une vue autorisée ne doivent référencer que les données qui se trouvent dans la vue autorisée. Cela signifie, par exemple, que si vous tentez de lire, d'écrire ou de supprimer une ligne dont les colonnes de la table ne figurent pas dans votre vue autorisée, la requête échoue.
Pour éviter que les demandes de données à une vue autorisée échouent parce que des colonnes ont été ajoutées à la table et ne figurent pas dans la vue autorisée, vous pouvez spécifier un préfixe de qualificatif de colonne vide "" pour une famille de colonnes.
Vous pouvez spécifier jusqu'à 100 paramètres de définition par vue autorisée.
Console
Ouvrez la liste des instances Bigtable dans la console Google Cloud .
Cliquez sur l'instance contenant la table pour laquelle vous souhaitez créer une vue autorisée.
Dans le volet de navigation, cliquez sur Bigtable Studio.
Cliquez sur Générateur pour ouvrir le générateur de requêtes.
Choisissez la table pour laquelle vous souhaitez créer une vue autorisée.
Ajoutez des clauses pour créer une requête qui ne renvoie que les données auxquelles vous souhaitez que les utilisateurs de la vue autorisée aient accès.
- Les clauses acceptables pour une vue autorisée sont row key prefix (préfixe de clé de ligne) et columns (colonnes, c'est-à-dire les qualificatifs de colonne).
- Pour spécifier un préfixe de qualificatif de colonne, ajoutez un astérisque après le préfixe. Par exemple, pour inclure toutes les colonnes commençant par "data", saisissez
data*
dans le champ Colonnes après le nom de la famille de colonnes. - La clause Limit est ignorée lorsque la vue autorisée est enregistrée.
- Pour en savoir plus sur l'utilisation du générateur de requêtes, consultez Créer des requêtes dans la console.
Cliquez sur Exécuter.
Une fois que vous avez vérifié que le volet des résultats affiche les données qui doivent être incluses dans la vue autorisée, cliquez sur Enregistrer en tant que vue.
Saisissez un identifiant permanent pour la vue autorisée qui n'est pas déjà utilisé pour la table.
Facultatif : Pour enregistrer sans accorder l'accès, cliquez sur Enregistrer.
Facultatif : Pour enregistrer la vue autorisée et configurer l'accès, cliquez sur Enregistrer et accorder l'accès. Pour en savoir plus sur le contrôle des accès, consultez Contrôle des accès Bigtable avec IAM.
- Ajoutez au moins un compte principal et sélectionnez le rôle qui doit lui être attribué ou au groupe de comptes principaux.
- Facultatif : Pour accorder l'accès à des rôles supplémentaires, cliquez sur Ajouter un autre rôle, puis saisissez le compte principal et le rôle pour chaque rôle supplémentaire.
- Cliquez sur Enregistrer.
gcloud
Exécutez la commande bigtable authorized-views create
. Pour en savoir plus, consultez la documentation de référence sur gcloud bigtable authorized-views create.
gcloud bigtable authorized-views create AUTHORIZED_VIEW_ID \
--instance=INSTANCE_ID \
--table=TABLE_ID \
--definition-file=DEFINITION_FILE_PATH
Remplacez les éléments suivants :
AUTHORIZED_VIEW_ID
: identifiant permanent de la vue autorisée qui n'est pas déjà utilisé pour la table.INSTANCE_ID
: identifiant permanent de l'instance contenant la table.TABLE_ID
: identifiant permanent de la table pour laquelle vous créez une vue autoriséeDEFINITION_FILE_PATH
: chemin d'accès à une représentation valide au format JSON d'une vue autorisée. Pour obtenir des exemples de fichiers de définition correctement mis en forme, consultez Exemples de fichiers de définition.
Vous pouvez également exécuter la commande sans fournir le fichier de définition. Dans ce cas, la gcloud CLI ouvre un éditeur et vous invite à saisir des valeurs.
Pour confirmer que la vue autorisée a été créée, obtenez la liste des vues autorisées pour la table.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez la section Bibliothèques clientes Bigtable.
Pour vous authentifier auprès de Bigtable, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Modifier une vue autorisée
Console
Ouvrez la liste des instances Bigtable dans la console Google Cloud .
Cliquez sur l'instance contenant la vue autorisée.
Dans le volet de navigation, cliquez sur Bigtable Studio.
Dans l'explorateur, développez la table et Vues autorisées.
À côté de la vue autorisée que vous souhaitez modifier, cliquez sur le menu d'actions more_vert, puis sur Ouvrir.
Modifiez ou ajoutez des clauses pour créer une requête qui ne renvoie que les données auxquelles vous souhaitez que les utilisateurs de la vue autorisée aient accès.
- Les clauses acceptables pour une vue autorisée sont row key prefix (préfixe de clé de ligne) et columns (colonnes, c'est-à-dire les qualificatifs de colonne).
- Pour spécifier un préfixe de qualificatif de colonne, ajoutez un astérisque après le préfixe. Par exemple, pour inclure toutes les colonnes commençant par "data", saisissez
data*
dans le champ Colonnes après le nom de la famille de colonnes. - La clause Limit est ignorée lorsque la vue autorisée est enregistrée.
- Pour en savoir plus sur l'utilisation du générateur de requêtes, consultez Créer des requêtes dans la console.
Cliquez sur Exécuter.
Une fois que vous avez vérifié que le volet des résultats affiche les données qui doivent être incluses dans la vue autorisée, cliquez sur Enregistrer en tant que vue.
Dans la boîte de dialogue, saisissez l'ID de la vue autorisée que vous avez modifiée.
La boîte de dialogue affiche un message vous avertissant que vous êtes sur le point d'écraser la vue autorisée existante.
Facultatif : Pour enregistrer sans accorder l'accès, cliquez sur Enregistrer.
Facultatif : Pour enregistrer la vue autorisée et configurer l'accès, cliquez sur Enregistrer et accorder l'accès. Pour en savoir plus sur le contrôle des accès, consultez Contrôle des accès Bigtable avec IAM.
- Ajoutez au moins un compte principal et sélectionnez le rôle qui doit lui être attribué ou au groupe de comptes principaux.
- Facultatif : Pour accorder l'accès à des rôles supplémentaires, cliquez sur Ajouter un autre rôle, puis saisissez le compte principal et le rôle pour chaque rôle supplémentaire.
- Cliquez sur Enregistrer.
gcloud
Modifiez une vue autorisée à l'aide de la commande bigtable authorized-views
update
. Pour en savoir plus, consultez la documentation de référence sur gcloud bigtable authorized-views update.
gcloud bigtable authorized-views update AUTHORIZED_VIEW_ID \
--instance=INSTANCE_ID \
--table=TABLE_ID \
--definition-file=DEFINITION_FILE_PATH
Remplacez les éléments suivants :
AUTHORIZED_VIEW_ID
: identifiant permanent de la vue autorisée.INSTANCE_ID
: identifiant permanent de l'instance.TABLE_ID
: identifiant permanent de la table source.DEFINITION_FILE_PATH
: chemin d'accès à une représentation valide au format JSON d'une vue autorisée. Pour obtenir des exemples de fichiers de définition correctement mis en forme, consultez Exemples de fichiers de définition.
Vous pouvez également exécuter la commande sans fournir le fichier de définition. Dans ce cas, la gcloud CLI ouvre un éditeur et vous invite à saisir des valeurs.
Facultatif : Pour empêcher gcloud CLI d'afficher une invite de confirmation indiquant la différence entre la structure de la vue autorisée actuelle et celle après l'application de la mise à jour, ajoutez l'option --no-interactive
à la commande.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez la section Bibliothèques clientes Bigtable.
Pour vous authentifier auprès de Bigtable, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Activer ou désactiver la protection contre la suppression
Pour activer la protection contre la suppression pour une vue autorisée, modifiez le fichier JSON qui définit votre vue autorisée en définissant l'indicateur deletionProtection
sur true
.
Pour désactiver la protection contre la suppression, modifiez le fichier JSON qui définit votre vue autorisée en définissant l'indicateur deletionProtection
sur false
.
Finalisez les modifications apportées à votre vue autorisée en exécutant la commande bigtable
authorized-views update
avec le nom du fichier JSON mis à jour. Pour en savoir plus, consultez la documentation de référence sur gcloud bigtable authorized-views update.
Supprimer une vue autorisée
Si vous supprimez une table, toutes les vues autorisées de la table sont également supprimées.
Si vous supprimez une vue autorisée, vous ne pouvez pas l'annuler. Toutefois, si vous supprimez une table, puis que vous la récupérez, toutes les vues autorisées de la table sont restaurées en même temps que la table. Vous devez ensuite reconfigurer IAM pour les vues autorisées et pour les tables. Pour en savoir plus, consultez Annuler la suppression d'une table.
Console
Ouvrez la liste des instances Bigtable dans la console Google Cloud .
Cliquez sur l'instance contenant la vue autorisée.
Dans le volet de navigation, cliquez sur Bigtable Studio.
Dans l'explorateur, développez la table et Vues autorisées.
À côté de la vue autorisée que vous souhaitez supprimer, cliquez sur le menu d'actions more_vert, puis sur Supprimer.
gcloud
Supprimez une vue autorisée à l'aide de la commande bigtable instances tables
authorized-views delete
. Pour en savoir plus, consultez la documentation de référence sur gcloud bigtable authorized-views delete.
gcloud bigtable authorized-views delete AUTHORIZED_VIEW_ID \
--instance=INSTANCE_ID \
--table=TABLE_ID
Remplacez les éléments suivants :
AUTHORIZED_VIEW_ID
: identifiant permanent de la vue autorisée.INSTANCE_ID
: identifiant permanent de l'instance.TABLE_ID
: identifiant permanent de la table source.
Facultatif : Pour empêcher gcloud CLI d'afficher une invite de confirmation vous demandant de confirmer ou d'annuler la suppression, ajoutez l'option --nointeractive
à la commande.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez la section Bibliothèques clientes Bigtable.
Pour vous authentifier auprès de Bigtable, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Obtenir la liste des vues autorisées pour une table
Console
Ouvrez la liste des instances Bigtable dans la console Google Cloud .
Cliquez sur l'instance contenant la vue autorisée.
Dans le volet de navigation, cliquez sur Bigtable Studio.
Dans l'explorateur, développez la table et Vues autorisées.
gcloud
Exécutez la commande bigtable authorized-views list
. Pour en savoir plus, consultez la documentation de référence sur gcloud bigtable authorized-views list.
gcloud bigtable authorized-views list \
--instance=INSTANCE_ID \
--table=TABLE_ID
Remplacez les éléments suivants :
INSTANCE_ID
: identifiant permanent de l'instance.TABLE_ID
: identifiant permanent de la table.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez la section Bibliothèques clientes Bigtable.
Pour vous authentifier auprès de Bigtable, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Afficher les détails d'une vue autorisée
Console
Ouvrez la liste des instances Bigtable dans la console Google Cloud .
Cliquez sur l'instance contenant la vue autorisée.
Dans le volet de navigation, cliquez sur Bigtable Studio.
Dans l'explorateur, développez la table et Vues autorisées.
À côté de la vue autorisée que vous souhaitez afficher, cliquez sur le menu d'actions more_vert, puis sur Ouvrir.
gcloud
Pour obtenir des informations sur une vue autorisée, exécutez la commande bigtable instances
tables authorized-views describe
. Pour en savoir plus, consultez la documentation de référence gcloud bigtable authorized-views describe.
gcloud bigtable authorized-views describe \
–-instance=INSTANCE_ID \
–-table=TABLE_ID \
AUTHORIZED_VIEW_ID
Remplacez les éléments suivants :
INSTANCE_ID
: identifiant permanent de l'instance.TABLE_ID
: identifiant permanent de la table.AUTHORIZED_VIEW_ID
: identifiant permanent de la vue autorisée.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez la section Bibliothèques clientes Bigtable.
Pour vous authentifier auprès de Bigtable, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Accorder l'accès à une vue autorisée
Pour en savoir plus sur le contrôle des accès, consultez Contrôle des accès à Bigtable avec IAM.
Console
Ouvrez la liste des instances Bigtable dans la console Google Cloud .
Cliquez sur l'instance contenant la vue autorisée.
Dans le volet de navigation, cliquez sur Bigtable Studio.
Dans le volet de l'explorateur, développez la table et Vues autorisées.
À côté du nom de la vue autorisée, cliquez sur le menu d'action more_vert, puis sur Accorder l'accès.
Ajoutez au moins un compte principal et sélectionnez le rôle qui doit lui être attribué ou au groupe de comptes principaux.
Facultatif : Pour accorder l'accès à des rôles supplémentaires, cliquez sur Ajouter un autre rôle, puis saisissez le compte principal et le rôle pour chaque rôle supplémentaire.
Cliquez sur Enregistrer.
gcloud
Pour accorder l'accès à une vue autorisée, utilisez la commande bigtable
authorized-views add-iam-policy-binding
. Pour en savoir plus, consultez la documentation de référence sur gcloud bigtable authorized-views add-iam-policy-binding.
gcloud bigtable authorized-views add-iam-policy-binding AUTH_VIEW_ID \
--instance=INSTANCE_ID --table=TABLE_ID \
--member=PRINCIPAL --role=ROLE
Remplacez les éléments suivants :
AUTH_VIEW_ID
: ID de la vue autoriséeTABLE_ID
: ID de la table à partir de laquelle la vue autorisée est crééeINSTANCE_ID
: instance contenant la tablePRINCIPAL
: entité principale (utilisateur) à laquelle vous souhaitez accorder l'accès, par exempleuser:222larabrown@gmail.com
ROLE
: rôle que vous attribuez, tel queroles/bigtable.reader
.