Administratoreinstellungen – Nutzerattribute

Mit Benutzerattributen können Sie die Nutzererfahrung für jeden Looker-Nutzer anpassen. Ein Looker-Administrator definiert ein Nutzerattribut und wendet dann einen Nutzerattributwert auf eine Nutzergruppe oder einzelne Nutzer an.

Administratoren können auch Nutzerattribute definieren, für die die Nutzer selbst Werte angeben, z. B. Passwörter oder Kontaktdaten. An verschiedenen Stellen in Looker kann auf die Nutzerattribute verwiesen werden, um für jeden Nutzer eine benutzerdefinierte Umgebung zu schaffen.

Looker enthält automatisch einige Nutzerattribute, z. B. email, first_name, landing_page, last_name, full_name, ID, timezone (falls konfiguriert), locale und number_format.

Nutzerattribute ansehen

Wenn Sie Ihre Liste der Nutzerattribute aufrufen möchten, gehen Sie im Menü Verwaltung zum Bereich Nutzer und dort zur Seite Nutzerattribute.

In der Tabelle mit Nutzerattributen finden Sie den Namen, das Label und den Typ für jedes Nutzerattribut (weitere Informationen). Außerdem enthält die Tabelle eine Schaltfläche für Aktionen, die Sie für das Nutzerattribut ausführen können. Bei einigen Attributen wird „Systemstandard“ anstelle einer Schaltfläche für Aktionen angezeigt. Das bedeutet, dass Looker diese Attribute automatisch für jeden Nutzer erstellt. Die Standardnutzerattribute des Systems sind von Looker für die interne Verwendung reserviert und können nicht bearbeitet werden.

Nutzerattribute erstellen

Wenn Sie ein Nutzerattribut definieren möchten, klicken Sie im Menü Verwaltung im Bereich Nutzer auf der Seite Nutzerattribute auf die Schaltfläche Nutzerattribut erstellen. Jedes Nutzerattribut hat die folgenden Einstellungen:

  • Name: Der Name des Nutzerattributs zur Verwendung in textbasierten Umgebungen wie LookML. Namen dürfen nur Kleinbuchstaben, Ziffern und Unterstriche enthalten.
  • Label: Die nutzerfreundliche Version des Namens. Standardmäßig ist das der Name des Attributs, wobei Unterstriche durch Leerzeichen ersetzt werden und jedes Wort mit einem Großbuchstaben beginnt. Das Label kann jedoch nach Bedarf geändert werden.
  • Datentyp: Mit dieser Einstellung wird geprüft, ob Nutzern für dieses Nutzerattribut gültige Werte zugewiesen sind. Der Datentyp des Nutzerattributs kann einer der folgenden sein:

    • String: Wählen Sie diese Option aus, um ein Nutzerattribut zu erstellen, das genau einem Stringwert entspricht, z. B. einem Nutzernamen. Wenn Sie mehrere String-Werte oder einen Looker-Filterausdruck im Wert des Nutzerattributs verwenden möchten, wählen Sie stattdessen die Option String-Filter (erweitert) aus. Wenn Ihr Nutzerattribut als Literalstring behandelt werden soll, müssen Sie in der Syntax einfache Anführungszeichen ' verwenden, wie in diesem Beispiel: none '{{ _user_attributes['name_of_attribute'] }}'
    • Nummer: Wählen Sie diese Option aus, um eine einzelne Nummer anzugeben, z. B. eine Mitarbeiternummer. Wenn Sie einen Zahlenbereich oder einen Looker-Filterausdruck verwenden möchten, verwenden Sie stattdessen den erweiterten Zahlenfilter.
    • Datum/Uhrzeit: Wählen Sie diese Option aus, um ein einzelnes Datum oder eine einzelne Uhrzeit anzugeben, z. B. das Geburtsdatum des Nutzers. Wenn Sie einen Datumsbereich oder einen Looker-Filterausdruck verwenden möchten, nutzen Sie stattdessen den Datums-/Zeitfilter (erweitert).
    • Relative URL: Wählen Sie diese Option aus, um eine relative URL wie /browse/boards/2 anzugeben, die auf bestimmte Inhalte wie ein Board, einen Ordner oder eine Markdown-Datei (z. B. eine README- oder Dokumentdatei in einem Projekt) in Ihrer Looker-Instanz verweist. Das Nutzerattribut landing_page hat beispielsweise den Datentyp Relative URL und kann verwendet werden, um eine bestimmte Startseite für einen Nutzer oder eine Gruppe anzugeben.
    • String-Filter (erweitert): Wählen Sie diese Option aus, um mehrere String-Werte oder einen Looker-Filterausdruck im Nutzerattribut zuzulassen. Eine Liste der Filterausdrücke, die Sie für Strings verwenden können, finden Sie auf der Dokumentationsseite Filterausdrücke.
    • Zahlenfilter (erweitert): Wählen Sie diese Option aus, um einen Bereich numerischer Werte oder einen Looker-Filterausdruck im Nutzerattribut zuzulassen. Eine Liste der Filterausdrücke, die Sie für Zahlen verwenden können, finden Sie auf der Dokumentationsseite Filterausdrücke.
    • Datums-/Zeitfilter (erweitert): Wählen Sie diese Option aus, um einen Datumsbereich oder einen Looker-Filterausdruck im Nutzerattribut zuzulassen. Eine Liste der Filterausdrücke, die Sie für Datum und Uhrzeit verwenden können, finden Sie auf der Dokumentationsseite Filterausdrücke.

    Mit den Datentypen String-Filter (erweitert), Zahlenfilter (erweitert) und Datums-/Zeitfilter (erweitert) können Sie Werte mit Looker-Filterausdrücken eingeben, die einen Wertebereich für ein Nutzerattribut zurückgeben.

  • Nutzerzugriff: Sie können die Sichtbarkeit und Bearbeitungsmöglichkeiten für Nutzerattribute festlegen:

    • Keine: Wird nicht auf den Kontoseiten der Nutzer angezeigt.
    • Anzeigen: Wird auf den Kontoseiten der Nutzer angezeigt, kann aber nicht bearbeitet werden.
    • Bearbeiten: Wird auf den Kontoseiten der Nutzer angezeigt und kann vom Nutzer festgelegt werden.
  • Werte ausblenden: Auch wenn Nutzerattribute für Nutzer sichtbar sind, werden die Werte des Nutzerattributs maskiert, wenn Sie diese Option auf Ja setzen. Das ist nützlich für Passwörter oder andere vertrauliche Informationen. Wenn Sie diesen Wert auf Ja festlegen, wird der Wert des Nutzerattributs auch in den Drop-down-Menüs für Nutzerattribute auf der Seite Verbindungseinstellungen maskiert. Sobald dieser Wert auf Yes festgelegt ist, kann er nie wieder in No geändert werden. Wenn Sie Hide Values auf Yes festlegen, müssen Sie auch eine Zulassungsliste von Domains angeben, die als Ziel für das Nutzerattribut zulässig sind.

  • Liste zulässiger Domains: Wenn Sie die Werte für ein neues Nutzerattribut ausblenden, müssen Sie auch eine Liste zulässiger Domains angeben, die die URLs enthält, an die das Attribut gesendet werden kann, z. B. Hostnamen für Datenbankverbindungen und URLs für Git-HTTPS-Integrationen für Projekte. Mit dem Platzhalter (*) können Sie die Auslieferung auf mehreren Seiten derselben Website aktivieren. Nachdem Sie eine Zulassungsliste für Domains angegeben haben, kann das Nutzerattribut nur an die von Ihnen aufgeführten Ziele gesendet werden.

    Nachdem Sie die Zulassungsliste für diese Nutzerattribute angegeben haben, können Sie die Zulassungsliste nicht mehr ändern, um die URLs weniger restriktiv zu gestalten, wenn dem Nutzerattribut Werte zugewiesen wurden – für einen Nutzer, für eine Gruppe oder durch Festlegen eines Standardwerts. Sie können URLs nur restriktiver gestalten oder aus der Zulassungsliste entfernen. Wenn beispielsweise Domain-Zulassungsliste den Eintrag my_domain/route/* enthält, können Sie ihn später nicht in my_domain/* ändern. Wenn Sie die Zulassungsliste weniger restriktiv gestalten müssen, löschen Sie alle vorhandenen Werte, die dem Nutzerattribut zugewiesen sind, einschließlich der Standardwerte.

  • Standardwert festlegen: Wenn Sie dieses Kästchen auswählen, wird ein Standardwert festgelegt, falls einem Nutzer kein Wert zugewiesen ist.

Nachdem Sie ein Nutzerattribut definiert haben, können Sie einzelnen Nutzern oder Nutzergruppen Werte zuweisen. Klicken Sie dazu auf der Seite auf die Tabs Nutzerwerte und Gruppenwerte.

Einzelnen Nutzern Werte zuweisen

Nachdem Sie ein Nutzerattribut definiert haben, können Sie einem einzelnen Nutzer einen Wert dafür zuweisen:

  1. Klicken Sie im Menü Verwaltung im Bereich Nutzer auf der Seite Nutzerattribute auf den Tab Nutzerwerte.
  2. Wählen Sie im Drop-down-Menü den Nutzer aus, dem Sie einen Wert zuweisen möchten. Daraufhin wird eine Tabelle mit den Werten angezeigt, die für diesen Nutzer gelten.
  3. Klicken Sie auf die Schaltfläche Wert für Nutzer festlegen.
  4. Geben Sie den neuen Wert in das Feld Neuer Wert ein.
  5. Klicken Sie auf Speichern.

Wenn einem einzelnen Nutzer ein Wert zugewiesen wird, hat dieser Wert immer Vorrang vor allen Werten, die den Gruppen dieses Nutzers zugewiesen sind. Auf dem Tab Nutzerwerte sehen Sie, wann einem Nutzerattribut ein benutzerdefinierter Wert zugewiesen wurde, der einen Gruppenwert überschreibt. Neben überschriebenen Werten wird der Text „Überschrieben“ angezeigt. Diese Werte werden nicht berücksichtigt. Neben dem Attributwert für aktive Nutzer wird der Text „Aktueller Wert“ angezeigt.

Wenn Sie einem Nutzerattribut mehrere Werte zuweisen möchten, verwenden Sie den Datentyp String-Filter (erweitert) und geben Sie mehrere durch Kommas getrennte Werte ein. Achten Sie darauf, dass zwischen den Werten keine Leerzeichen stehen. Sie können beispielsweise den String Executive, Management, Contributors eingeben.

Wenn Sie einem Looker-Administrator oder einem anderen Nutzer alle möglichen Werte zuweisen möchten, verwenden Sie im Nutzerattribut einen Platzhalterwert:

  • Wenn Sie einem Administrator oder einem anderen Nutzer Zugriff auf alle Werte eines String-Felds gewähren möchten, legen Sie den Datentyp des Nutzerattributs auf String-Filter (erweitert) fest und verwenden Sie den Wert %, NULL.

  • Wenn Sie einem Administrator oder einem anderen Nutzer Zugriff auf alle Werte eines Zahlenfelds gewähren möchten, legen Sie den Datentyp des Nutzerattributs auf Zahlenfilter (erweitert) fest und verwenden Sie den Wert <0, >=0, NULL.

Nutzergruppen Werte zuweisen

Sie können einer Nutzergruppe einen Wert für ein Nutzerattribut zuweisen. Wählen Sie im Bereich Verwaltung auf der Seite Nutzerattribute rechts neben dem Attribut, das Sie festlegen möchten, die Option Bearbeiten aus. Führen Sie dann folgende Schritte aus:

  1. Klicken Sie auf den Tab Gruppenwerte.
  2. Klicken Sie auf die Schaltfläche + Gruppe hinzufügen.
  3. Wählen Sie im Drop-down-Menü die Gruppe aus, der Sie einen Wert zuweisen möchten.
  4. Geben Sie den Wert für die Gruppe in das Feld Wert ein.
  5. Klicken Sie auf Speichern.

Wenn ein Wert mehreren Gruppen zugewiesen wird, müssen Sie entscheiden, welche Gruppe Vorrang haben soll, falls ein Nutzer mehreren Gruppen angehört. Ziehen Sie die Gruppen dazu in die gewünschte Reihenfolge. Jede Gruppe hat Vorrang vor den darunter aufgeführten Gruppen.

Sie haben beispielsweise die Gruppen „Führungsteam“ und „Managementteam“. Führungskräfte sind auch Manager und daher Mitglieder beider Gruppen. Wenn Sie die Gruppe „Führungsteam“ an den Anfang der Liste ziehen, wird ihren Mitgliedern der Wert Führungskraft anstelle des Werts Manager zugewiesen.

Wenn ein Nutzer einen benutzerdefinierten Wert für ein Nutzerattribut festgelegt hat, überschreibt der vom Nutzer festgelegte Wert jeden Wert, der einer Gruppe zugewiesen ist, der der Nutzer angehört.

Wo können Nutzerattribute verwendet werden?

Nutzerattribute haben die folgenden Funktionen:

Datenbankverbindungen

Der Host, der Port, die Datenbank, der Nutzername, das Passwort und das Schema einer Verbindung können jeweils den Wert eines Nutzerattributs erhalten. Im Feld „Verbindungshost“ wird kein Nutzerattribut akzeptiert, für das die Nutzerzugriffsebene auf Bearbeitbar festgelegt ist.

Durch diese Nutzerattribute wird die Verbindung auf den Nutzer beschränkt, der eine Abfrage ausführt. Nutzerattribute können auch im Feld Zusätzliche JDBC-Parameter referenziert werden, um den JDBC-Verbindungsstring anzupassen. Wenn ein Nutzer eine Abfrage über die Verbindung ausführt, werden die ihm zugewiesenen Nutzerattributwerte angewendet. So lässt sich die Verbindung an den jeweiligen Nutzer anpassen.

Konfiguration

Jede Verbindung kann so konfiguriert werden, dass Nutzerattribute von der Seite Verbindungen im Bereich Administrator von Looker verwendet werden. Informationen zur Seite Verbindungen finden Sie auf der Dokumentationsseite Administratoreinstellungen – Verbindungen. Klicken Sie auf Verbindung hinzufügen, um eine neue Verbindung zu erstellen. Klicken Sie neben der Verbindung auf Bearbeiten, um eine vorhandene Verbindung zu konfigurieren.

Wenn eine Eingabe auf ein Nutzerattribut festgelegt werden kann, wird in Looker neben der Eingabe  die Schaltfläche Nutzerattribut angezeigt.

Klicken Sie auf die Schaltfläche Nutzerattribut, um ein Drop-down-Menü aufzurufen, in dem Sie das gewünschte Nutzerattribut auswählen können. In der Liste wird der Name des Nutzerattributs mit dem aktuellen Nutzerattributwert des Nutzers in Klammern angezeigt.

Wenn Sie im Feld Zusätzliche JDBC-Parameter auf ein Nutzerattribut verweisen möchten, verwenden Sie dieselbe Liquid-Vorlagensyntax, die in LookML verfügbar ist. Nutzerattribute sind über die Liquid-Variable _user_attributes verfügbar. Wenn Sie beispielsweise auf ein Nutzerattribut mit dem Namen my_jdbc_param_attribute verweisen möchten, verwenden Sie die folgende Syntax:

my_jdbc_param={{ _user_attributes['name_of_attribute'] }}

Anwendungsfall: Berechtigungen auf Datenbankebene in Looker anwenden

Wenn Ihre Datenbank verschiedene Konten mit unterschiedlichen Zugriffsbeschränkungen hat, können Sie Ihre Datenbankberechtigungen in Looker verwenden. Sie können den Nutzernamen und das Passwort einer Verbindung parametrisieren, damit jeder Nutzer mit den entsprechenden Anmeldedaten für seine Datenbankzugriffsebene verbunden wird. So wird zwar sichergestellt, dass Nutzer keine Daten sehen, auf die sie keinen Zugriff haben, aber es wird nicht beeinflusst, welche Explores, Dimensionen und Messwerte ihnen in Looker angezeigt werden.

Wenn ein Nutzer beispielsweise so konfiguriert ist, dass er mit einem Konto eine Verbindung zur Datenbank herstellt, mit dem er die Spalte credit_card_number in der Tabelle user nicht sehen kann, wird ihm jede Dimension, die diese Datenbankspalte verwendet, in Looker weiterhin angezeigt. Wenn sie versuchen, eine Abfrage auszuführen, die diese Dimension enthält, erhalten sie einen Fehler von der Datenbank.

Anwendungsfall: Ein Modell für mehrere identische Datenbanken verwenden

Das ist beispielsweise der Fall, wenn Sie mehrere Datenbanken mit genau demselben Schema haben, etwa wenn die Daten jedes Kunden aus Gründen der Datensicherheit (z. B. HIPAA-Konformität) in einer eigenen Datenbank gespeichert werden. Oder Sie möchten, dass Ihre LookML-Entwickler Abfragen für eine Entwicklungskopie einer Produktionsdatenbank ausführen.

Wenn sich diese Datenbanken auf demselben Datenbankserver befinden, müssen Sie keine separaten Verbindungen und Modelle einrichten. Legen Sie stattdessen die Datenbank einer Verbindung auf ein Nutzerattribut fest. Jeder Nutzer wird dann auf die Datenbank verwiesen, die in seinem Wert für das Nutzerattribut Database Name angegeben ist.

Datenaktionen

Datenaktionen können so konfiguriert werden, dass bestimmte Nutzerattribute in ihre JSON-Nutzlast aufgenommen werden. Damit können Sie nutzerspezifische Informationen zusammen mit den Daten senden, z. B. die Anmeldedaten, um einen Vorgang für einen bestimmten Dienst auszuführen.

Konfiguration

Wenn Sie ein Nutzerattribut in eine Datenaktion einbeziehen möchten, fügen Sie der action-Definition einen user_attribute_param-Block hinzu. Jeder Block hat zwei Parameter:

  • user_attribute: Der Name des Nutzerattributs
  • name: Der Name, der in der JSON-Nutzlast verwendet werden soll

In diesem Beispiel werden zwei Nutzerattribute verwendet: salesforce_username und salesforce_password. Sie enthalten die Salesforce-Anmeldedaten der einzelnen Nutzer in Looker. Wenn ein Nutzer die Aktion „Salesforce-Daten aktualisieren“ ausführt, sendet Looker seine Salesforce-Anmeldedaten mit der JSON-Nutzlast. Der empfangende Server kann diese zur Authentifizierung bei Salesforce verwenden.

dimension: stage_name {
  type: string
  sql: ${TABLE}.stage_name;;
  action: {
    label: "Update in Salesforce"
    url: "https://example.com/my_salesforce_url"
    user_attribute_param: {
      user_attribute: salesforce_username
      name: "username"
    }
    user_attribute_param: {
      user_attribute: salesforce_password
      name: "password"
    }
    form_param: {
      name: "new_stage_name"
      type: string
      required: yes
    }
  }
}

Benutzerdefinierte Aktionen in einem Aktionshub

Sie können eine benutzerdefinierte Aktion so konfigurieren, dass sie Nutzerattribute enthält, die verhindern, dass Nutzer Looker-Inhalte an das Aktionsziel senden oder planen, wenn für dieses Nutzerattribut kein Wert definiert ist.

Konfiguration

Der Parameter params in einer benutzerdefinierten Aktion steht für die Formularfelder, die ein Looker-Administrator auf der Aktivierungsseite der Aktion in der Liste Aktionen im Admin-Bereich konfigurieren muss. Fügen Sie im Parameter params Ihrer Aktionsdatei Folgendes ein:

  params = [{
    description: "A description of the param.",
    label: "A label for the param.",
    name: "action_param_name",
    user_attribute_name: "user_attribute_name",
    required: true,
    sensitive: true,
  }]

Dabei ist user_attribute_name das Nutzerattribut, das im Feld Name auf der Seite Nutzerattribute im Bereich Nutzer des Bereichs Verwaltung definiert ist. required: true bedeutet, dass ein Nutzer einen nicht leeren und gültigen Wert für dieses Nutzerattribut haben muss, um die Aktion bei der Bereitstellung von Daten zu sehen. sensitive: true bedeutet, dass der Wert des Nutzerattributs verschlüsselt ist und nach der Eingabe nie in der Looker-Benutzeroberfläche angezeigt wird. Sie können mehrere Unterparameter für Nutzerattribute angeben.

Ein Looker-Administrator muss die Formularfelder der Aktion mit dem Nutzerattribut konfigurieren:

  1. Klicken Sie im Admin-Bereich auf der Seite Aktionen neben der Aktion auf die Schaltfläche Aktivieren oder Einstellungen.
  2. Klicken Sie für das entsprechende Feld auf das Symbol für Nutzerattribute  und wählen Sie das gewünschte Nutzerattribut aus.

Weitere Informationen finden Sie im Abschnitt Nutzerattribute zu benutzerdefinierten Aktionen hinzufügen auf der Dokumentationsseite Daten über einen Action Hub freigeben.

Filter

Filter für Explores, Looks und Dashboards können auf ein Nutzerattribut festgelegt werden, um die Abfrage basierend auf dem Nutzer anzupassen, der sie ausführt.

Sie können beispielsweise ein Benutzerattribut mit dem Namen salesforce_username erstellen und jeden Looker-Nutzer so konfigurieren, dass sein Wert für dieses Attribut sein Salesforce-Nutzername ist. Anschließend können Sie einen Filter für das Nutzerattribut salesforce_username in einem Dashboard festlegen. Jeder Nutzer sieht dann das Dashboard gefiltert nach seinem jeweiligen Salesforce-Nutzernamen.

Konfiguration

Im Bereich FILTER eines Explores, Looks oder Dashboards:

  1. Wählen Sie beim gewünschten Filter die Option stimmt mit einem Nutzerattribut überein aus.

    Das Auswahlfeld rechts wird automatisch mit einer Liste von Nutzerattributen aktualisiert, die denselben Typ wie das Feld des Filters haben, z. B. Zahl, String (Text), Datum usw. In Looker wird der Wert für jedes Nutzerattribut in Klammern angezeigt.

  2. Wählen Sie das gewünschte Nutzerattribut aus.

Erweiterte Filtersyntax

Wenn Sie etwas Komplexeres als einen einfachen Gleichheitsvergleich für den Filter durchführen möchten, wählen Sie Entspricht (erweitert) aus und verweisen Sie mit einer Liquid-Variable auf das Nutzerattribut:

{{ _user_attributes['name_of_attribute'] }}

Sie müssen beispielsweise ein sf_-Präfix zum Wert des salesforce_username-Nutzerattributs hinzufügen, da die Werte in der Datenbank so gespeichert sind. Um das Präfix zum Benutzerattributwert hinzuzufügen, verwenden Sie die Liquid-Variablensyntax _user_attributes:


sf_{{_user_attributes['salesforce_username']}}

Sie können dasselbe Muster verwenden, um Nutzerattribute in LookML-Dashboard-Filtern und Filtern für Dashboard-Elemente einzufügen.

Geplante Dashboards und Looks

Dashboard- und Look-Filter können für jeden Zeitplan festgelegt werden. Dabei besteht auch die Möglichkeit, ein Nutzerattribut zu verwenden. So können Sie die Ergebnisse der Datenlieferung für jeden E-Mail-Empfänger anpassen. Sie können Zustellungen von Inhalten anpassen, die als einmalige und wiederkehrende Zustellungen gesendet werden.

Sie können beispielsweise ein Nutzerattribut mit dem Namen salesforce_username erstellen und den Wert auf den Salesforce-Nutzernamen jedes Nutzers festlegen. Legen Sie für einen Dashboard- oder Look-Zeitplan einen Filter für das Nutzerattribut salesforce_username fest, damit jeder Empfänger das Dashboard gefiltert nach seinem Salesforce-Nutzernamen erhält.

Vorbereitung

Nur für Looker-Nutzer sind Werte für Nutzerattribute festgelegt. Daher muss jeder Empfänger der Datenübermittlung ein Looker-Konto haben. Benutzerattribute werden angewendet, indem das Dashboard oder der Look einmal für jeden Empfänger ausgeführt wird.

Konfiguration

Öffnen Sie den Scheduler für den Look oder das Dashboard:

  1. Wählen Sie im Bereich Filter für den gewünschten Filter die Option entspricht einem Nutzerattribut aus.

    Das Auswahlfeld rechts wird automatisch mit einer Liste von Nutzerattributen aktualisiert, die denselben Typ wie der Filter haben. Ihr eigener Wert für jedes Nutzerattribut wird in Klammern angezeigt.

  2. Wählen Sie das gewünschte Nutzerattribut aus.

  3. Klicken Sie neben dem Feld E-Mail-Optionen auf das Kästchen Zeitplan als Empfänger ausführen.

Auf Filter zugreifen

Mit Zugriffsfiltern, die Sicherheit auf Zeilenebene bieten, können Sie die Daten einschränken, auf die ein Nutzer zugreifen kann. Sie können zwar den Parameter access_grant verwenden, Zugriffsfilter lassen sich aber mit Nutzerattributen einfacher implementieren und verwalten.

Zugriffsfilter bieten eine sichere Möglichkeit, nutzerspezifische Datenbeschränkungen anzuwenden. Wenn Sie einen oder mehrere Zugriffsfilter für ein LookML-Explore definieren, werden die aus einem Explore zurückgegebenen Daten basierend auf dem Nutzer gefiltert, der die Abfrage ausführt. Zugriffsfilter bieten also eine zusätzliche Einschränkungsebene, die dafür sorgt, dass der Nutzer nur bestimmte Teilmengen der Daten aus einer Datenbankverbindung sehen kann.

Konfiguration

  1. Nutzerattribut erstellen:
    • Konfigurieren Sie Nutzerzugriff auf Kein (empfohlen) oder Ansehen. Ein Nutzerattribut, das so konfiguriert ist, dass es von Nutzern bearbeitet werden kann, kann nicht für einen Zugriffsfilter verwendet werden.
    • Weisen Sie Gruppen oder einzelnen Nutzern Werte für Nutzerattribute zu.
  2. Fügen Sie der LookML-Definition für den Explore, in dem Sie den Zugriffsfilter verwenden möchten, einen access_filter-Block mit den folgenden Parametern hinzu:
    • field: Der Name des LookML-Felds, nach dem gefiltert werden soll.
    • user_attribute: Der Name des Nutzerattributs, in dem der Wert gespeichert ist, mit dem Sie die Daten filtern möchten.
  3. Führen Sie eine Abfrage für diese Analyse aus.
  4. Prüfen Sie die WHERE-Klausel des SQL-Codes der Abfrage, um zu sehen, ob die Daten entsprechend Ihrem Wert für das Nutzerattribut gefiltert werden.

Mit diesem LookML werden Abfragen zu Bestellungen nach Marke gefiltert. Die jeweilige Marke basiert auf dem zugewiesenen Wert des Nutzers für ein Nutzerattribut mit dem Namen company:

explore: orders {
  view_name: orders
  access_filter: {
    field: products.brand_name
    user_attribute: company
  }
  join: products {
    foreign_key: orders.product_id
  }
}

Verbindung zu Git-Anbietern herstellen

Für LookML-Projekte können Sie die Git-Authentifizierung über HTTPS konfigurieren. Bei Projekten, die die HTTPS-Git-Authentifizierung verwenden, können Nutzerattribute genutzt werden, um sich bei den Git-Konten einzelner Entwickler anzumelden, wenn Git-Vorgänge für den Entwickler ausgeführt werden.

Nutzerattribute für Git-Kontopasswörter müssen verborgen sein. Wählen Sie beim Erstellen des Passwortattributs unter der Option Werte ausblenden die Option Ja aus und geben Sie die URL des Git-Anbieters in das Feld Zulassungsliste für Domains ein.

Zugriff mit Zugriffserteilungen steuern

Sie können Zugriffsrechte erstellen, mit denen der Zugriff auf einen LookML-Explore, einen Join, eine Ansicht oder ein Feld mithilfe von Benutzerattributwerten, dem Parameter access_grant und dem Parameter required_access_grants eingeschränkt wird.

So funktionieren Zugriffsgewährungen:

  1. Sie definieren eine Zugriffsberechtigung mit dem Parameter access_grant. Im Rahmen der Definition verknüpfen Sie die Zugriffsberechtigung mit einem Nutzerattribut. Sie geben auch an, mit welchen Benutzerattributwerten Zugriff auf das Zugriffsrecht gewährt wird.
  2. Anschließend verwenden Sie den Parameter required_access_grants auf der Ebene Explore, Join, View oder Feld, um diese Struktur auf Nutzer zu beschränken, die Zugriff auf jede aufgeführte Zugriffsberechtigung haben.

Sie können beispielsweise ein Zugriffsrecht verwenden, um den Zugriff auf die Dimension salary auf Nutzer zu beschränken, deren Nutzerattribut department den Wert payroll hat.

Weitere Informationen zum Definieren von Zugriffsberechtigungen finden Sie auf der Dokumentationsseite zum Parameter access_grant.

Liquid-Variablen

In LookML können verschiedene Liquid-Variablen verwendet werden, die für komplexere Arten von benutzerdefinierten Ausgaben nützlich sein können. Die Attributwerte eines Nutzers können jetzt in Liquid verwendet werden. Für den Liquid-Ausdruck muss die Syntax verwendet werden, die für Ihren Datenbankdialekt geeignet ist.

Beispiele finden Sie in diesem Dokument im Abschnitt Verbindung und auf der Seite Best Practices für die dynamische Schema- und Tabellennamen-Einfügung mit Nutzerattributen.

Google BigQuery-Datenlimits

Wenn Sie Google BigQuery als Datenbank verwenden, werden Ihnen die Kosten für jede Abfrage basierend auf der Größe der Abfrage in Rechnung gestellt. Damit Nutzer nicht versehentlich zu teure Abfragen ausführen, können Sie in Ihrer BigQuery-Verbindung ein Nutzerattribut in der Einstellung Max. Abrechnungs-Gigabytes anwenden. Die Werte, die Sie im Nutzerattribut angeben, sollten die Anzahl der Gigabyte sein, die ein Nutzer in einer einzelnen Anfrage abrufen darf.

Eingebettete Dashboards

Sie können die in eingebetteten Looks und Dashboards angezeigten Daten einschränken, indem Sie Filterwerte auf Nutzerattributwerte stützen. Weitere Informationen finden Sie im Communitybeitrag Creating a Proof of Concept Embedded Dashboard (Powered by Looker) .

Lokalisierung

Mit den Nutzerattributen locale und number_format kann das Erscheinungsbild von Daten, Visualisierungen und Teilen der Looker-Benutzeroberfläche für bestimmte Nutzer oder Nutzergruppen festgelegt werden. Weitere Informationen finden Sie auf der Dokumentationsseite Looker lokalisieren.

Auf externe API-Endpunkte zugreifen

Nutzerattribute können vom Looker-Erweiterungs-Framework verwendet werden, um über einen Serverproxy auf externe API-Endpunkte zuzugreifen. Ein Beispiel finden Sie auf der Dokumentationsseite Beispiele für React- und JavaScript-Code für das Erweiterungs-Framework.

Nutzerattribute und Zugriffsfilter testen

Mit der sudo-Funktion von Looker können Sie die Auswirkungen Ihrer Nutzerattribute testen. Administratoren (oder Nutzer mit den see_users- und sudo-Berechtigungen) können im SUDO-Status als anderer Nutzer agieren, um zu sehen, wie dieser Looker verwendet.

Wenn Sie sich im Entwicklungsmodus befinden, sind Ihre Änderungen für andere Nutzer erst sichtbar, wenn Sie Ihre Änderungen in der Produktion bereitstellen. Falls Sie Ihre Änderungen nicht implementiert haben, damit sie für andere Nutzer sichtbar sind, sehen Sie die Änderungen nicht, wenn Sie im SUDO-Status als anderer Nutzer agieren.