---
schema_version: "1"
id: d11bb4f7e1a1c09242ff2a24fb83ff29f878a58f65b8a91cf068b2b2781e2589
title: Tableau Lightning Web コンポーネントでユーザー属性関数 (UAF) を活用する
collection: tableau
version: next
locale: ja-jp
portal_url: https://docs.salesforce.com/tableau/next/ja-jp/server-linux/lwc_uaf.md
canonical_url: https://help.tableau.com/v0.0/server-linux/ja-jp/lwc_uaf.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 92d6e7b032b82490e9e40b44fee7ad99d22aa40f6580ee9d9835caab44d6c816
description: Use User Attribute Functions (UAF) with Tableau Lightning web components for row-level security.
---
[メイン コンテンツに進む](#main-content)

# Tableau Lightning Web コンポーネントでユーザー属性関数 (UAF) を活用する

Tableau ビューおよび Pulse Lightning Web コンポーネント (LWC) でユーザー属性関数 (UAF) を活用して、Viz を見ているユーザーの属性に基づいて特定のデータを表示できます。[ユーザー属性関数](https://help.tableau.com/current/pro/desktop/ja-jp/functions_functions_user.htm)は行レベルのセキュリティを提供して、Viz を見るユーザーに自分に関連するデータのみが表示されるようにします。UAF の詳細については、[「ユーザー属性関数でパーソナライズされた分析のパワーを解放する](https://www.tableau.com/ja-jp/blog/unlock-power-personalized-analytics-user-attribute-functions)」を参照してください。

前提条件

- Tableau Lightning Web コンポーネントには、トークン認証を使用したシングル サインオン (SSO) が設定されています。「[Tableau Lightning Web コンポーネントとトークン認証によるシングル サインオン (SSO) の設定](https://help.tableau.com/current/server/ja-jp/lwc_seamless_auth.htm)」を参照してください。
- Tableau は、認証ワークフローでユーザー属性を取得するように構成されています。「[ユーザー属性の取得を許可する](https://help.tableau.com/current/server/ja-jp/lwc_seamless_auth.htm#allow-capture-of-user-attributes)」を参照してください。
- 埋め込まれる Tableau コンテンツには、[ユーザー属性関数](https://help.tableau.com/current/pro/desktop/ja-jp/functions_functions_user.htm)が含まれます。Tableau ワークブックでユーザー属性関数を使用する方法の例については、「[コンテンツ作成者がユーザー属性関数を含めていることを確認する](https://help.tableau.com/current/api/embedding_api/ja-jp/docs/embedding_api_user_attributes.html#4-ensure-the-content-author-includes-user-attribute-functions)」を参照してください。

## Salesforce での Tableau UAF クレーム定義

Tableau UAF クレーム定義を使用すると、JWT にユーザー属性のクレームを含めることができます。これらの属性の値は、Salesforce のアカウント オブジェクト、商談オブジェクト、またはケース オブジェクトから取得できます。Tableau コンテンツ内のユーザー属性関数と組み合わせて使用すると、指定された属性に一致するデータのみが表示されます。

たとえば、Tableau ダッシュボードは、\[State/Province (都道府県/州)\] データ列の値が属性「state」の JWT クレームの値の 1 つと一致する売上データのみを表示するように構成できます。

**構文**: USERATTRIBUTEINCLUDES('attribute\_name', expected value)

**例**: USERATTRIBUTEINCLUDES('state', \[State/Province\])

Salesforce でクレーム定義を作成すると、JWT にユーザー固有の適切な情報を含めることができます。この例では、Billing State/Province フィールドから値を取得することにより、現在のユーザーがアカウント所有者であるアカウントの値が属性「state」に入力されます。

**クレーム定義の例**

- 定義名: state\_Account\_BillingState
- 属性名: state
- ターゲット オブジェクト: Account
- ターゲット オブジェクト フィールド: Billing State/Province
- 閲覧者とターゲット オブジェクトの関係: 現在の閲覧者はアカウント所有者

ワシントン州、オレゴン州、カリフォルニア州にアカウントを持つ営業担当者の場合、JWT には \[WA, OR, CA\] という値を持つ「state」のクレームが含まれます。Tableau ダッシュボードには、\[State/Province\] 値が WA、OR、または CA に一致するデータのみが表示されます。

## Experience Cloud における外部ユーザーのサポート

ユーザー属性関数 (UAF) とホスト マッピングは、Experience Cloud サイトを介して Tableau にアクセスする**外部ユーザー**向けにサポートされています。これにより、ログインした外部ユーザーに関連付けられた Salesforce の属性を JWT に含めることができ、そのユーザーのデータに基づいてパーソナライズされた Tableau ビューを使用できるようになります。

外部ユーザーには、パートナーおよびカスタマー コミュニティ ユーザーなど、認証済み Experience Cloud ユーザーが含まれます。**ゲスト ユーザーはサポートされていません。**

正常に機能させるには、次を実行します。

- 外部ユーザーは、UAF およびホスト マッピングで使用される関連レコードにアクセスできる必要があります。
- 次のオブジェクトは、外部アクセスを許可するように構成する必要があります (たとえば、\[パブリック読み取り専用\] など)。
    - 分析ユーザー属性関数トークン
    - ホストのマッピング
- UAF クレームは、\[設定\] アクセス権を持つ内部 Salesforce ユーザーが作成して設定する必要があります。

適切な共有構成が設定されている場合、UAF とホスト マッピングは、内部ユーザーの場合と同様に外部ユーザーに対しても機能します。

## 定義の作成

ユーザー属性の定義を作成するには、次の手順を実行します。

1. Salesforce アプリで、右上隅にある歯車を選択し、\[設定\] を選択します。
2. 左側のナビゲーション ペインで、\[Quick Find (クイック検索)\] 検索バーに「Tableau」と入力します。
3. \[Tableau UAF Claims Definition (Tableau UAF クレーム定義)\] 設定ページを選択します。
4. \[Create New (新規作成)\] を選択します。
5. 定義の値を入力します。
    
    1. 定義名: 一意の名前を入力します。(例: state\_Account\_BillingState)
    2. 属性名: Tableau のユーザー属性関数で指定された属性名を入力します。(例: state)
    3. ターゲット オブジェクト: 値を取り出したいターゲット オブジェクトを選択します。Tableau LWC は現在、User オブジェクトと Account オブジェクトをサポートしています。
    4. ターゲット オブジェクト フィールド: 値を取り出すターゲット オブジェクトのフィールドを選択します。(例: Billing State/Province)
    5. 閲覧者とターゲット オブジェクトの関係: 現在の閲覧者とターゲット オブジェクトの関係を選択します。(例: 現在の閲覧者はアカウント所有者)。
6. \[保存\] を選択します。または、保存せずに \[Tableau UAF Claims Definition (Tableau UAF クレーム定義)\] 設定ページに戻る場合は、\[キャンセル\] を選択します。

## Tableau Lightning Web コンポーネント ページに定義を追加する

### ホーム ページ、アプリ ページ、およびレコード Lightning ページ

定義を追加するには、次の手順を実行します。

1. \[Select… (選択…)\] を選択します。
2. 矢印を使用して、利用可能な定義を \[Selected (選択済み)\] フィールドに移動します。
3. \[OK\] を選択します。
4. 同じページのすべての Tableau Lightning Web コンポーネントに対してこの手順を繰り返します。詳細については、「[同じページに複数のコンポーネントがある場合の考慮事項](#Consider)」を参照してください。

### Experience Cloud ページとユーティリティ バー

UAF クレーム定義名のコンマ区切りリストを入力します。定義名をコピーするには、Salesforceアプリから \[Tableau UAF Claims Definition (Tableau UAF クレーム定義)\] 設定ページに移動し、\[コピー\] を選択します。

### 同じページに複数のコンポーネントがある場合の考慮事項

複数の Tableau View または Tableau Pulse Lightning Web コンポーネントを同じページに追加する場合、各コンポーネントには同じ UAF 定義名のセットが必要です。コンポーネントの 1 つのみが Tableau に対して認証され、そのセッションが両方のコンポーネントの読み込みに使用されます。つまり、認証されるコンポーネントがどちらであっても、そのセッションに両方のコンポーネントに関連するユーザー属性情報が存在している必要があります。

例:

- 2 つの Tableau ビュー コンポーネントがあり、1 つが定義 A のユーザー属性情報を必要とし、もう 1 つが定義 B のユーザー属性情報を必要とする場合、両方のコンポーネントに定義 A と B の両方が含まれている必要があります。
- Tableau ビューのコンポーネントが定義 A を必要としているものの、同じページ上の Tableau Pulse コンポーネントがユーザー属性情報を必要としない場合は、両方のコンポーネントに定義 A を含める必要があります。

## 定義の削除

ユーザー属性の定義を削除するには、次の手順を実行します。

1. Salesforce アプリで、右上隅にある歯車を選択し、\[設定\] を選択します。
2. 左側のナビゲーション ペインで、\[Quick Find (クイック検索)\] 検索バーに「Tableau」と入力します。
3. \[Tableau UAF Claims Definition (Tableau UAF クレーム定義)\] 設定ページを選択します。
4. 削除する定義に対して \[削除\] を選択します。

### ホーム ページ、アプリ ページ、およびレコード Lightning ページ

Tableau LWC にすでに追加されている定義を削除する場合は、Lightning アプリケーション ビルダーでページを更新して、使用可能な定義を更新します。削除された定義は自動的に取り除かれます。

### Experience Cloud ページとユーティリティ バー

削除された定義は、Tableau LWC コンポーネント フィールドから自動的に取り除かれません\[UAF Definition Names (UAF 定義名)\] コンポーネント フィールドの削除された定義は問題を引き起こしませんが、不要かつ乱雑な状態を作り出します。Tableau LWC コンポーネント フィールドから定義を削除するには、\[UAF Definition Names (UAF 定義名)\] フィールドを選択し、使用されなくなった名前を手動で削除します。