Autorisierte Ansichten erstellen und verwalten
In diesem Dokument wird beschrieben, wie Sie eine autorisierte Ansicht mit der Google Cloud CLI oder derGoogle Cloud -Konsole definieren, erstellen und andere administrative Vorgänge für sie ausführen. Bevor Sie dieses Dokument lesen, sollten Sie sich mit der Übersicht über autorisierte Ansichten vertraut machen.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Bigtable-Administrator (roles/bigtable.admin
) für die zugrunde liegende Tabelle zuzuweisen, damit Sie die Berechtigungen erhalten, die Sie zum Ausführen administrativer Vorgänge für eine autorisierte Ansicht benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierte Rolle enthält die Berechtigungen, die zum Ausführen von administrativen Vorgängen für eine autorisierte Ansicht erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um administrative Vorgänge für eine autorisierte Ansicht auszuführen:
-
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
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Informationen zum Verwalten von Bigtable-IAM-Rollen auf Ebene der autorisierten Ansicht finden Sie unter IAM-Verwaltung auf Ebene der autorisierten Ansicht.
Autorisierte Ansicht erstellen
Berücksichtigen Sie beim Erstellen einer autorisierten Ansicht die Abfragen, die dafür ausgeführt werden. Lese-, Schreib- und Löschanfragen, die an eine autorisierte Ansicht gesendet werden, dürfen nur auf Daten verweisen, die in der autorisierten Ansicht enthalten sind. Wenn Sie beispielsweise versuchen, eine Zeile zu lesen, in sie zu schreiben oder sie zu löschen, die Spalten in der Tabelle enthält, die nicht in Ihrer autorisierten Ansicht enthalten sind, schlägt die Anfrage fehl.
Damit Datenanfragen an eine autorisierte Ansicht nicht fehlschlagen, weil der Tabelle Spalten hinzugefügt wurden, die nicht in der autorisierten Ansicht enthalten sind, können Sie für eine Spaltenfamilie ein leeres Spaltenqualifiziererpräfix „“ angeben.
Sie können bis zu 100 Definitionsparameter pro autorisierter Ansicht angeben.
Console
Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.
Klicken Sie auf die Instanz, die die Tabelle enthält, für die Sie eine autorisierte Ansicht erstellen möchten.
Klicken Sie im Navigationsbereich auf Bigtable Studio.
Klicken Sie auf Builder, um den Query Builder zu öffnen.
Wählen Sie die Tabelle aus, für die Sie eine autorisierte Ansicht erstellen möchten.
Fügen Sie Klauseln hinzu, um eine Abfrage zu erstellen, die nur Daten zurückgibt, auf die Nutzer der autorisierten Ansicht Zugriff haben sollen.
- Zulässige Anweisungen für eine autorisierte Ansicht sind Zeilenschlüsselpräfix und Spalten (Spaltenqualifizierer).
- Wenn Sie ein Präfix für den Spaltenqualifizierer angeben möchten, fügen Sie nach dem Präfix ein Sternchen ein. Wenn Sie beispielsweise alle Spalten einbeziehen möchten, die mit „data“ beginnen, geben Sie
data*
im Feld Spalten nach dem Namen der Spaltenfamilie ein. - Die Limit-Klausel wird ignoriert, wenn die autorisierte Ansicht gespeichert wird.
- Weitere Informationen zur Verwendung des Query Builders finden Sie unter Abfragen in der Console erstellen.
Klicken Sie auf Ausführen.
Nachdem Sie geprüft haben, ob im Ergebnisbereich Daten angezeigt werden, die in der autorisierten Ansicht enthalten sein sollten, klicken Sie auf Als Ansicht speichern.
Geben Sie eine permanente ID für die autorisierte Ansicht ein, die noch nicht für die Tabelle verwendet wird.
Optional: Wenn Sie speichern möchten, ohne Zugriff zu gewähren, klicken Sie auf Speichern.
Optional: Wenn Sie die autorisierte Ansicht speichern und dann den Zugriff darauf konfigurieren möchten, klicken Sie auf Speichern und Zugriff gewähren. Weitere Informationen zur Zugriffssteuerung finden Sie unter Bigtable-Zugriffssteuerung mit IAM.
- Fügen Sie mindestens ein Hauptkonto hinzu und wählen Sie die Rolle aus, die diesem Hauptkonto oder dieser Gruppe von Hauptkonten zugewiesen werden soll.
- Optional: Wenn Sie Zugriff für weitere Rollen gewähren möchten, klicken Sie auf Weitere Rolle hinzufügen und geben Sie dann das Hauptkonto und die Rolle für jede zusätzliche Rolle ein.
- Klicken Sie auf Speichern.
gcloud
Führen Sie den Befehl bigtable authorized-views create
aus: Weitere Informationen finden Sie in der Referenzdokumentation unter gcloud bigtable authorized-views create.
gcloud bigtable authorized-views create AUTHORIZED_VIEW_ID \
--instance=INSTANCE_ID \
--table=TABLE_ID \
--definition-file=DEFINITION_FILE_PATH
Ersetzen Sie Folgendes:
AUTHORIZED_VIEW_ID
: eine permanente Kennung für die autorisierte Ansicht, die noch nicht für die Tabelle verwendet wirdINSTANCE_ID
: die permanente Kennung der Instanz, die die Tabelle enthältTABLE_ID
: die permanente Kennzeichnung der Tabelle, für die Sie eine autorisierte Ansicht erstellenDEFINITION_FILE_PATH
: Der Pfad zu einer gültigen JSON-formatierten Darstellung einer autorisierten Ansicht. Beispiele für korrekt formatierte Definitionsdateien finden Sie unter Beispiele für Definitionsdateien.
Sie können den Befehl auch ohne Angabe der Definitionsdatei ausführen. In diesem Fall wird in der gcloud CLI ein Editor geöffnet, in dem Sie aufgefordert werden, Werte anzugeben.
Wenn Sie prüfen möchten, ob die autorisierte Ansicht erstellt wurde, rufen Sie eine Liste der autorisierten Ansichten für die Tabelle ab.
Java
Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken.
Richten Sie zur Authentifizierung bei Bigtable die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Autorisierte Ansicht ändern
Console
Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.
Klicken Sie auf die Instanz, die die autorisierte Ansicht enthält.
Klicken Sie im Navigationsbereich auf Bigtable Studio.
Maximieren Sie im Explorer die Tabelle und Autorisierte Ansichten.
Klicken Sie neben der autorisierten Ansicht, die Sie ändern möchten, auf das Aktionsmenü more_vert und dann auf Öffnen.
Ändern oder fügen Sie Klauseln hinzu, um eine Abfrage zu erstellen, die nur Daten zurückgibt, auf die Nutzer der autorisierten Ansicht Zugriff haben sollen.
- Zulässige Anweisungen für eine autorisierte Ansicht sind Zeilenschlüsselpräfix und Spalten (Spaltenqualifizierer).
- Wenn Sie ein Präfix für den Spaltenqualifizierer angeben möchten, fügen Sie nach dem Präfix ein Sternchen ein. Wenn Sie beispielsweise alle Spalten einbeziehen möchten, die mit „data“ beginnen, geben Sie
data*
im Feld Spalten nach dem Namen der Spaltenfamilie ein. - Die Limit-Klausel wird ignoriert, wenn die autorisierte Ansicht gespeichert wird.
- Weitere Informationen zur Verwendung des Query Builders finden Sie unter Abfragen in der Console erstellen.
Klicken Sie auf Ausführen.
Nachdem Sie geprüft haben, ob im Ergebnisbereich Daten angezeigt werden, die in der autorisierten Ansicht enthalten sein sollten, klicken Sie auf Als Ansicht speichern.
Geben Sie im Dialogfeld die ID der autorisierten Ansicht ein, die Sie geändert haben.
Im Dialogfeld wird eine Warnung angezeigt, dass Sie die vorhandene autorisierte Ansicht überschreiben.
Optional: Wenn Sie speichern möchten, ohne Zugriff zu gewähren, klicken Sie auf Speichern.
Wenn Sie den Zugriff für die autorisierte Ansicht nicht neu konfigurieren, nachdem Sie die zugrunde liegende Abfrage geändert haben, werden die vorherigen Einstellungen für die Zugriffssteuerung überschrieben und die autorisierte Ansicht erbt Berechtigungen von der Tabelle.Optional: Wenn Sie die autorisierte Ansicht speichern und dann den Zugriff darauf konfigurieren möchten, klicken Sie auf Speichern und Zugriff gewähren. Weitere Informationen zur Zugriffssteuerung finden Sie unter Bigtable-Zugriffssteuerung mit IAM.
- Fügen Sie mindestens ein Hauptkonto hinzu und wählen Sie die Rolle aus, die diesem Hauptkonto oder dieser Gruppe von Hauptkonten zugewiesen werden soll.
- Optional: Wenn Sie Zugriff für weitere Rollen gewähren möchten, klicken Sie auf Weitere Rolle hinzufügen und geben Sie dann das Hauptkonto und die Rolle für jede zusätzliche Rolle ein.
- Klicken Sie auf Speichern.
gcloud
Ändern Sie eine autorisierte Ansicht mit dem Befehl bigtable authorized-views
update
. Weitere Informationen finden Sie in der Referenzdokumentation zu gcloud bigtable authorized-views update.
gcloud bigtable authorized-views update AUTHORIZED_VIEW_ID \
--instance=INSTANCE_ID \
--table=TABLE_ID \
--definition-file=DEFINITION_FILE_PATH
Ersetzen Sie Folgendes:
AUTHORIZED_VIEW_ID
: Die permanente Kennzeichnung der autorisierten AnsichtINSTANCE_ID
: Die permanente Kennzeichnung der InstanzTABLE_ID
: Die permanente Kennzeichnung der QuelltabelleDEFINITION_FILE_PATH
: Der Pfad zu einer gültigen JSON-formatierten Darstellung einer autorisierten Ansicht. Beispiele für korrekt formatierte Definitionsdateien finden Sie unter Beispiele für Definitionsdateien.
Sie können den Befehl auch ohne Angabe der Definitionsdatei ausführen. In diesem Fall wird in der gcloud CLI ein Editor geöffnet, in dem Sie aufgefordert werden, Werte anzugeben.
Optional: Wenn Sie verhindern möchten, dass in der gcloud CLI eine Bestätigungsaufforderung mit dem Unterschied zwischen der aktuellen autorisierten Ansichtsstruktur und der Struktur nach der Aktualisierung angezeigt wird, hängen Sie dem Befehl das Flag --no-interactive
an.
Java
Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken.
Richten Sie zur Authentifizierung bei Bigtable die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Löschschutz aktivieren oder deaktivieren
Wenn Sie den Löschschutz für eine autorisierte Ansicht aktivieren möchten, ändern Sie die JSON-Datei, in der die autorisierte Ansicht definiert ist, indem Sie das Flag deletionProtection
auf true
setzen.
Wenn Sie den Löschschutz deaktivieren möchten, ändern Sie die JSON-Datei, in der die autorisierte Ansicht definiert ist, indem Sie das Flag deletionProtection
auf false
setzen.
Schließen Sie die Änderungen an der autorisierten Ansicht ab, indem Sie den Befehl bigtable
authorized-views update
mit dem Namen der aktualisierten JSON-Datei ausführen. Weitere Informationen finden Sie in der Referenzdokumentation unter gcloud bigtable authorized-views update.
Autorisierte Ansicht löschen
Wenn Sie eine Tabelle löschen, werden auch alle autorisierten Ansichten der Tabelle gelöscht.
Wenn Sie eine autorisierte Ansicht löschen, kann sie nicht wiederhergestellt werden. Wenn Sie jedoch eine Tabelle löschen und dann wiederherstellen, werden alle autorisierten Ansichten der Tabelle zusammen mit der Tabelle wiederhergestellt. Anschließend müssen Sie IAM für die autorisierten Ansichten und die Tabellen neu konfigurieren. Weitere Informationen finden Sie unter Gelöschte Tabelle wiederherstellen.
Console
Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.
Klicken Sie auf die Instanz, die die autorisierte Ansicht enthält.
Klicken Sie im Navigationsbereich auf Bigtable Studio.
Maximieren Sie im Explorer die Tabelle und Autorisierte Ansichten.
Klicken Sie neben der autorisierten Ansicht, die Sie löschen möchten, auf das Aktionsmenü more_vert und dann auf Löschen.
gcloud
Löschen Sie eine autorisierte Ansicht mit dem Befehl bigtable instances tables
authorized-views delete
. Weitere Informationen finden Sie in der Referenzdokumentation unter gcloud bigtable authorized-views delete.
gcloud bigtable authorized-views delete AUTHORIZED_VIEW_ID \
--instance=INSTANCE_ID \
--table=TABLE_ID
Ersetzen Sie Folgendes:
AUTHORIZED_VIEW_ID
: Die permanente Kennzeichnung der autorisierten AnsichtINSTANCE_ID
: Die permanente Kennzeichnung der InstanzTABLE_ID
: Die permanente Kennzeichnung der Quelltabelle
Optional: Wenn Sie verhindern möchten, dass in der gcloud CLI eine Bestätigungsaufforderung angezeigt wird, in der Sie das Löschen bestätigen oder abbrechen müssen, hängen Sie das Flag --nointeractive
an den Befehl an.
Java
Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken.
Richten Sie zur Authentifizierung bei Bigtable die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Liste der autorisierten Ansichten für eine Tabelle abrufen
Console
Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.
Klicken Sie auf die Instanz, die die autorisierte Ansicht enthält.
Klicken Sie im Navigationsbereich auf Bigtable Studio.
Maximieren Sie im Explorer die Tabelle und Autorisierte Ansichten.
gcloud
Führen Sie den Befehl bigtable authorized-views list
aus: Weitere Informationen finden Sie in der Referenzdokumentation unter gcloud bigtable authorized-views list.
gcloud bigtable authorized-views list \
--instance=INSTANCE_ID \
--table=TABLE_ID
Ersetzen Sie Folgendes:
INSTANCE_ID
: Die permanente Kennzeichnung der InstanzTABLE_ID
: Die permanente Kennzeichnung der Tabelle
Java
Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken.
Richten Sie zur Authentifizierung bei Bigtable die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Details zu einer autorisierten Ansicht ansehen
Console
Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.
Klicken Sie auf die Instanz, die die autorisierte Ansicht enthält.
Klicken Sie im Navigationsbereich auf Bigtable Studio.
Maximieren Sie im Explorer die Tabelle und Autorisierte Ansichten.
Klicken Sie neben der autorisierten Ansicht, die Sie aufrufen möchten, auf das Aktionsmenü more_vert und dann auf Öffnen.
gcloud
Führen Sie den Befehl bigtable instances
tables authorized-views describe
aus, um Details zu einer autorisierten Ansicht abzurufen. Weitere Informationen finden Sie in der Referenzdokumentation unter gcloud bigtable authorized-views describe.
gcloud bigtable authorized-views describe \
–-instance=INSTANCE_ID \
–-table=TABLE_ID \
AUTHORIZED_VIEW_ID
Ersetzen Sie Folgendes:
INSTANCE_ID
: Die permanente Kennzeichnung der InstanzTABLE_ID
: Die permanente Kennzeichnung der TabelleAUTHORIZED_VIEW_ID
: Die permanente Kennzeichnung der autorisierten Ansicht
Java
Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken.
Richten Sie zur Authentifizierung bei Bigtable die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Zugriff auf eine autorisierte Ansicht gewähren
Weitere Informationen zur Zugriffssteuerung finden Sie unter Bigtable-Zugriffssteuerung mit IAM.
Console
Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.
Klicken Sie auf die Instanz, die die autorisierte Ansicht enthält.
Klicken Sie im Navigationsbereich auf Bigtable Studio.
Maximieren Sie im Explorer-Bereich die Tabelle und Autorisierte Ansichten.
Klicken Sie neben dem Namen der autorisierten Ansicht auf das Aktionsmenü more_vert und dann auf Zugriff gewähren.
Fügen Sie mindestens ein Hauptkonto hinzu und wählen Sie die Rolle aus, die diesem Hauptkonto oder dieser Gruppe von Hauptkonten zugewiesen werden soll.
Optional: Wenn Sie Zugriff für weitere Rollen gewähren möchten, klicken Sie auf Weitere Rolle hinzufügen und geben Sie dann das Hauptkonto und die Rolle für jede zusätzliche Rolle ein.
Klicken Sie auf Speichern.
gcloud
Verwenden Sie den Befehl bigtable
authorized-views add-iam-policy-binding
, um Zugriff auf eine autorisierte Ansicht zu gewähren. Weitere Informationen finden Sie in der Referenzdokumentation unter 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
Ersetzen Sie Folgendes:
AUTH_VIEW_ID
: die ID der autorisierten AnsichtTABLE_ID
: Die ID der Tabelle, auf der die autorisierte Ansicht basiert.INSTANCE_ID
: die Instanz, die die Tabelle enthältPRINCIPAL
: das Hauptkonto (Nutzer), dem Sie Zugriff gewähren möchten, z. B.user:222larabrown@gmail.com
ROLE
: Die Rolle, die Sie zuweisen, z. B.roles/bigtable.reader
.