required_access_grants (pour les jointures)

Cette page fait référence au paramètre required_access_grants qui fait partie d'un join.

required_access_grants peut également faire partie d'une exploration, décrite sur la page de documentation du paramètre required_access_grants (pour les explorations).

required_access_grants peut également faire partie d'une vue, comme décrit sur la page de documentation du paramètre required_access_grants (pour les vues).

required_access_grants peut également faire partie d'une dimension, d'un groupe de dimensions, d'une mesure, d'un filtre ou d'un paramètre, comme décrit sur la page de documentation du paramètre required_access_grants.

Utilisation

explore: explore_name {
  join: view_name {
    required_access_grants: [access_grant_name, access_grant_name, ...]
  }
}
Hiérarchie
required_access_grants
Valeur par défaut
Aucun

Acceptation
Crochets contenant une liste de noms d'octrois d'accès séparés par une virgule

Définition

required_access_grants est associé au paramètre access_grant au niveau du modèle pour limiter l'accès à une jointure aux seuls utilisateurs auxquels une valeur d'attribut utilisateur spécifique a été attribuée.

required_access_grants fonctionne comme suit :

  1. Vous définissez un accès à l'aide du paramètre access_grant. Dans la définition, vous associez l'autorisation d'accès à un attribut utilisateur. Vous spécifiez également les valeurs d'attribut utilisateur qui donnent accès au droit d'accès.
  2. Ensuite, vous utilisez required_access_grants pour limiter une jointure aux seuls utilisateurs ayant accès à tous les droits d'accès listés.

Ce LookML exige que les utilisateurs aient accès aux droits d'accès can_view_financial_data et view_payroll pour voir la jointure payroll :

join: payroll {
  ...
  required_access_grants: [can_view_financial_data, view_payroll]
}

Les utilisateurs qui n'ont pas accès à tous les droits d'accès attribués à la jointure ne verront aucun des champs ajoutés à une exploration via la jointure restreinte. Ils ne verront pas ces champs dans le sélecteur de champs lorsqu'ils exploreront les données. Si les utilisateurs consultent un Look qui inclut des champs auxquels ils n'ont pas accès, le message d'avertissement suivant s'affiche : "<view.field> n'existe plus dans <view>, ou vous n'y avez pas accès. Cet élément sera ignoré." Le message d'avertissement est masqué dans les vignettes du tableau de bord.

Pour savoir comment définir un accès autorisé, consultez la page de documentation sur le paramètre access_grant.

Exemple

N'exposez la jointure payroll qu'aux utilisateurs ayant accès au droit d'accès pr_dept :

explore: financial {
  join: payroll {
    ...
    required_access_grants: [pr_dept]
  }
}

Informations complémentaires

Afficher les jointures restreintes avec des champs calculés dans les Looks et les tableaux de bord enregistrés

Étant donné que les utilisateurs qui n'ont pas accès à une jointure restreinte ne peuvent pas voir les champs ajoutés par la jointure, cela peut modifier les données qu'ils voient dans un Look enregistré ou une tuile de tableau de bord.

Par exemple, une mesure qui utilise une dimension issue d'une jointure restreinte n'aura pas accès aux données de cette dimension. L'agrégation de la mesure se fera donc sans ces données. Par conséquent, les utilisateurs qui n'ont pas accès à la jointure restreinte verront des données différentes pour la mesure par rapport à ceux qui y ont accès.

Les calculs de tableau basés sur un champ dans une jointure restreinte affichent une erreur pour les utilisateurs qui n'ont pas accès à la jointure restreinte, car le calcul de tableau n'a pas accès au champ de la jointure restreinte.

Restreindre l'accès aux structures LookML sous-jacentes

Limiter l'accès à une jointure ne limite pas l'accès à ses structures LookML sous-jacentes. Une vue ou un champ non restreint qui fait partie d'autres jointures reste disponible si ces jointures ne sont pas restreintes. Utilisez le paramètre required_access_grants au niveau de la vue ou du champ pour restreindre ces éléments individuellement.