---
schema_version: "1"
id: bed6c346a6380db40706de02b21bc792a3a8365844e747d91516cf7fe3a10e86
title: สร้างนโยบายข้อมูลสำหรับการรักษาความปลอดภัยระดับแถว
collection: tableau
version: next
locale: th-th
portal_url: https://docs.salesforce.com/tableau/next/th-th/server-linux/dm_vconn_create_rlspolicy.md
canonical_url: https://help.tableau.com/v0.0/server-linux/th-th/dm_vconn_create_rlspolicy.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 897b692100ab6c5e7339c1c776883403ab4cfb8d140e58d67fe947c60592e57a
description: Create a data policy that applies row-level security to tables in a virtual connection.
---
[ข้ามไปยังเนื้อหาหลัก](#main-content)

# สร้างนโยบายข้อมูลสำหรับการรักษาความปลอดภัยระดับแถว

ใช้นโยบายข้อมูลเพื่อนำการรักษาความปลอดภัยระดับแถวไปใช้กับตารางอย่างน้อยหนึ่งตารางในการเชื่อมต่อแบบเสมือน นโยบายข้อมูลจะกรองข้อมูล เพื่อให้แน่ใจว่าผู้ใช้จะเห็นเฉพาะข้อมูลที่ควรจะเห็นเท่านั้น นโยบายข้อมูลใช้ได้กับทั้งการเชื่อมต่อแบบสดและแบบแยกข้อมูล

## เกี่ยวกับนโยบายข้อมูล

นโยบายข้อมูลมีส่วนประกอบหลัก 3 ส่วนดังนี้

![ตัวอย่างของสามองค์ประกอบของนโยบายข้อมูลในตัวแก้ไขการเชื่อมต่อแบบเสมือน](/tableau/next/th-th/server-linux/th-th/Img/dm_vconn_policy_components.png)

1. ตารางที่ใช้กับนโยบายดังกล่าว เรียกว่าตารางนโยบาย ตารางเหล่านี้คือตารางที่มีการกรอง
2. คอลัมน์ที่จับคู่ไว้ซึ่งกำหนดความสัมพันธ์ระหว่างตาราง (เช่น ระหว่างตารางการให้สิทธิ์กับตารางข้อเท็จจริง) และระหว่างคอลัมน์ของตารางและคอลัมน์ของนโยบาย คอลัมน์ของนโยบายคือคอลัมน์ที่ใช้กรองข้อมูล
3. เงื่อนไขของนโยบาย ซึ่งเป็นนิพจน์หรือการคำนวณที่นำไปประเมินสำหรับทุกแถวในเวลาค้นหา หากเงื่อนไขของนโยบายเป็น TRUE แถวจะปรากฏขึ้นในการค้นหา

เมื่อคุณสร้างนโยบายข้อมูลแล้ว คุณต้องมีคอลัมน์ที่คุณสามารถใช้เพื่อกรองข้อมูลได้ คอลัมน์นี้เรียกว่าคอลัมน์ของนโยบาย ข้อมูลจะถูกกรองตามเงื่อนไขของนโยบาย ซึ่งโดยปกติแล้วจะใช้ฟังก์ชันของผู้ใช้ เช่น USERNAME() หรือ FULLNAME()

หากตารางนโยบายของคุณมีคอลัมน์ที่คุณสามารถกรองได้ ให้ใช้คอลัมน์นั้นเป็นคอลัมน์ของนโยบาย

หากตารางนโยบายไม่มีคอลัมน์ดังกล่าว ให้ใช้ตารางการให้สิทธิ์พร้อมคอลัมน์ที่คุณสามารถใช้เพื่อกรองข้อมูลได้ ตารางการให้สิทธิ์คือตารางที่มีทั้งคอลัมน์ของนโยบายที่คุณสามารถใช้เพื่อกรองตารางนโยบาย และอีกคอลัมน์หนึ่งที่คุณสามารถเชื่อมโยง (ทำแผนที่) กับคอลัมน์ในตารางนโยบายได้ (ดังที่แสดงในภาพตัวอย่างนโยบายข้อมูลด้านบน)

## กรองด้วยคอลัมน์ของนโยบายจากตารางนโยบาย

วิธีที่พบมากที่สุดในการกรองข้อมูลคือการใช้คอลัมน์ในตารางที่มีข้อมูลที่คุณต้องการกรอง ใช้คอลัมน์นั้นเป็นคอลัมน์ของนโยบาย แล้วทำแผนที่คอลัมน์ตารางที่เหมาะสมกับคอลัมน์ของนโยบาย

หากต้องการใช้คอลัมน์ของนโยบายเพื่อกรองข้อมูล ก่อนอื่นให้เพิ่มตารางไปยังนโยบายจากแผงด้านซ้าย หากต้องการเพิ่มตาราง ทำตามขั้นตอนอย่างใดอย่างหนึ่งต่อไปนี้:

- ดับเบิลคลิกชื่อตาราง
- คลิกลูกศรดรอปดาวน์ที่อยู่ใกล้กับชื่อตารางและเลือกจัดการตารางที่มีนโยบาย
- หรือลากตารางไปทางขวาแล้ววางบนเพิ่มเป็นตารางนโยบาย

หลังจากที่มีการเพิ่มตารางไปยังนโยบาย ไอคอนโล่ ![ไอคอนนโยบายข้อมูล](/tableau/next/th-th/server-linux/th-th/Img/dm_vconn_shield_18.png) จะปรากฏทางด้านขวาของชื่อตารางในแผงทางด้านซ้ายที่ระบุว่าเป็นตารางนโยบาย

จากนั้น ให้ทำแผนที่คอลัมน์เพื่อสร้างความสัมพันธ์ระหว่างชื่อคอลัมน์ในตารางกับชื่อคอลัมน์ของนโยบาย ใช้ชื่อคอลัมน์ของนโยบายในเงื่อนไขนโยบายข้อมูลเพื่อควบคุมการเข้าถึงข้อมูลระดับแถวสำหรับผู้ใช้:

1. คลิก +เพิ่มคอลัมน์ไปยังแผนที่ เพื่อเพิ่มคอลัมน์อย่างน้อยหนึ่งคอลัมน์ที่คุณจะใช้ในการกรองข้อมูล
2. ตั้งชื่อคอลัมน์ของนโยบาย คุณจะใช้ชื่อนี้ในเงื่อนไขของนโยบาย
3. สำหรับแต่ละตารางที่มีการบังคับใช้นโยบาย ให้ใช้เมนูแบบดรอปดาวน์เพื่อเลือกคอลัมน์ตารางที่ทำแผนที่กับคอลัมน์ของนโยบาย
4. ทำซ้ำกระบวนการนี้ตามจำนวนคอลัมน์ของนโยบายที่คุณต้องการใช้ในเงื่อนไขของนโยบาย

Your browser does not support the video tag.

> [!TIP]
> 
> **เคล็ดลับ:** คุณสามารถเริ่มพิมพ์การคำนวณในช่องเงื่อนไขของนโยบาย และใช้การดำเนินการอัตโนมัติเพื่อเลือกชื่อคอลัมน์ ซึ่งจะเติมข้อมูลคอลัมน์ของนโยบายภายใต้ขั้นตอนที่ 1 แทนการใช้ปุ่ม +เพิ่มคอลัมน์ไปยังแผนที่

Your browser does not support the video tag.

### ตัวอย่างของการใช้คอลัมน์ของนโยบายจากตารางนโยบาย

![แผนผังของนโยบายข้อมูลที่ใช้คอลัมน์ของนโยบายจากตารางนโยบายเพื่อกรองข้อมูล](/tableau/next/th-th/server-linux/th-th/Img/dm_vconn_policy_table_diagram.png)

1. ตาราง Sales มีคอลัมน์ \[Salesperson\] และตาราง Region มีคอลัมน์ \[SalesRep\] ข้อมูล Salesperson และ SalesRep ตรงกับชื่อเต็มของผู้ใช้ Tableau บนไซต์ของคุณ
2. คุณต้องการกรองข้อมูล Sales และ Region ตาม Salesperson ดังนั้น ให้คุณตั้งชื่อคอลัมน์ของนโยบายว่า "Salesperson" จากนั้นจึงจับทำแผนที่คอลัมน์ Salesperson จากคอลัมน์ Sales และ SalesRep จากคอลัมน์ Region กับคอลัมน์ของนโยบาย Salesperson
3. จากนั้นเขียนเงื่อนไขของนโยบายเพื่อกรองทั้งสองตาราง ใช้คอลัมน์ของนโยบาย \[Salesperson\] และฟังก์ชันผู้ใช้ FULLNAME() เพื่อให้ผู้ใช้แต่ละรายสามารถดูได้เฉพาะข้อมูลของตนเองเท่านั้น

## กรองด้วยคอลัมน์ของนโยบายจากตารางการให้สิทธิ์

ใช้ตารางการให้สิทธิ์เมื่อตารางนโยบายของคุณไม่มีคอลัมน์ที่คุณสามารถกรองได้ คุณสามารถใช้ตารางการให้สิทธิ์เพื่อทำแผนที่คอลัมน์ในตารางข้อมูลเข้ากับคอลัมน์ในตารางการให้สิทธิ์ โปรดทราบข้อต่อไปนี้:

- อย่าลืมรวมตารางการให้สิทธิ์เป็นตารางในการเชื่อมต่อแบบเสมือน คุณสามารถใช้ตารางจากการเชื่อมต่อหรือฐานข้อมูลใดก็ได้เป็นตารางการให้สิทธิ์ส่วนกลางที่รักษาความปลอดภัยของตารางในฐานข้อมูลอื่นๆ จำนวนมาก ในบางกรณี ตารางการให้สิทธิ์ที่อยู่ในฐานข้อมูลเดียวกับตารางที่คุณกำลังรักษาความปลอดภัยอยู่อาจมีความเสี่ยงด้านการรักษาความปลอดภัย เนื่องจากมีโอกาสที่จะเปิดเผยข้อมูลพนักงาน และการมีตารางการให้สิทธิ์ในฐานข้อมูลอื่นจะทำให้ควบคุมสิทธิ์ได้ง่ายขึ้น เช่น ให้สิทธิ์เข้าถึงฐานข้อมูลแก่บางคน
- หากคุณไม่ต้องการให้ผู้ใช้การเชื่อมต่อแบบเสมือนเห็นตารางการให้สิทธิ์ คุณสามารถสลับการตั้งค่าในคอลัมน์การมองเห็นบนแท็บตารางเพื่อซ่อนได้ เมื่อซ่อนแล้ว จะยังคงใช้ตารางการให้สิทธิ์สำหรับการกรองนโยบายได้ แต่ไม่สามารถใช้ในแหล่งข้อมูลการแสดงเป็นภาพหรือเวิร์กบุ๊กได้

**หมายเหตุ**: ระบบไม่รองรับการเชื่อมต่อโดยตรงกับเอาต์พุตโฟลว์ (ไฟล์ .hyper) สำหรับตารางการให้สิทธิ์ เอาต์พุตโฟลว์ต้องเขียนไปยังฐานข้อมูลโดยตรง

หากต้องการใช้ตารางการให้สิทธิ์เพื่อกรองข้อมูลของคุณ:

1. เพิ่มตารางข้อมูลที่คุณต้องการนำนโยบายข้อมูลไปใช้ ทำตามขั้นตอนอย่างใดอย่างหนึ่งต่อไปนี้:
    - ดับเบิลคลิกชื่อตาราง
    - คลิกลูกศรดรอปดาวน์ที่อยู่ใกล้กับชื่อตารางและเลือกจัดการตารางที่มีนโยบาย
    - หรือลากตารางไปทางขวาแล้ววางบนเพิ่มเป็นตารางนโยบาย
2. หลังจากที่มีการเพิ่มตารางไปยังนโยบาย ไอคอนโล่ ![ไอคอนนโยบายข้อมูล](/tableau/next/th-th/server-linux/th-th/Img/dm_vconn_shield_18.png) จะปรากฏทางด้านขวาของชื่อตารางในแผงทางด้านซ้ายที่ระบุว่าเป็นตารางนโยบาย
3. เลือกตารางการให้สิทธิ์ จากนั้น:
    - คลิกลูกศรดรอปดาวน์แล้วเลือกใช้เป็นตารางการให้สิทธิ์
    - หรือลากตารางไปทางขวาแล้ววางบนเพิ่มเป็นตารางการให้สิทธิ์
4. สำหรับแต่ละตารางที่มีการบังคับใช้นโยบาย ให้คลิกเมนูแบบดรอปดาวน์แล้วเลือกคอลัมน์เพื่อทำแผนที่ตารางนโยบายกับตารางการให้สิทธิ์
    
    Your browser does not support the video tag.

### ตัวอย่างของการใช้คอลัมน์ของนโยบายจากตารางการให้สิทธิ์

![แผนผังของนโยบายข้อมูลที่ใช้คอลัมน์ของนโยบายจากตารางการให้สิทธิ์เพื่อกรองข้อมูล](/tableau/next/th-th/server-linux/th-th/Img/dm_vconn_entitlement_diagram.png)

1. ข้อมูลที่คุณต้องการกรองมีคอลัมน์ EMP\_ID แต่ไม่มีคอลัมน์ชื่อพนักงาน แต่คุณมีตารางที่สองที่รวมคอลัมน์สำหรับทั้ง EMP\_ID และ FULL NAME ของพนักงาน และค่าในคอลัมน์ FULL NAME ของพนักงานตรงกับชื่อเต็มของผู้ใช้ Tableau บนไซต์ของคุณ
2. คุณสามารถเพิ่มตาราง Employees ลงในนโยบายเป็นตารางการให้สิทธิ์ จากนั้นทำแผนที่ชื่อคอลัมน์ตารางนโยบาย EMP\_ID กับชื่อคอลัมน์การให้สิทธิ์ EMP\_ID สำหรับแต่ละตาราง
3. จากนั้นใช้ฟังก์ชัน FULLNAME() ในเงื่อนไขของนโยบายของคุณเพื่อจับคู่ชื่อเต็มของผู้ใช้ Tableau Server กับคอลัมน์ \[FULL NAME\] ของตารางการให้สิทธิ์ (ซึ่งเป็นคอลัมน์ของนโยบาย) เพื่อให้ผู้ใช้แต่ละรายสามารถดูได้เฉพาะข้อมูลของตนเองเท่านั้น

## เขียนเงื่อนไขของนโยบาย

ขั้นตอนสุดท้ายในการสร้างนโยบายข้อมูลคือการเขียนเงื่อนไขของนโยบาย ซึ่งเป็นการคำนวณหรือนิพจน์ที่ใช้กำหนดการเข้าถึงระดับแถว เรามักจะใช้เงื่อนไขของนโยบายเพื่อจำกัดการเข้าถึงผู้ใช้หรือกลุ่มผ่านฟังก์ชันผู้ใช้

เงื่อนไขของนโยบาย:

- ต้องมีอยู่ในนโยบายข้อมูล
- ต้องประเมินเป็นจริงหรือเท็จ
- แสดงแถวเมื่อเงื่อนไขของนโยบายเป็น TRUE

เมื่อคุณปิดแท็บนโยบาย งานของคุณจะไม่ถูกยกเลิก

### ตัวอย่างของเงื่อนไขของนโยบาย

แสดงเฉพาะแถวที่ค่าคอลัมน์ Region เป็น North:

`[Region] = "North"`

อนุญาตให้ผู้ใช้ที่เข้าสู่ระบบดูแถวที่ชื่อผู้ใช้ตรงกับค่าใน EmployeeName:

`FULLNAME() = [EmployeeName]`

อนุญาตให้สมาชิกของกลุ่ม Managers สามารถดูทุกแถวได้ ในขณะที่ผู้ใช้สามารถดูได้เฉพาะแถวที่ชื่อผู้ใช้ตรงกับค่าในคอลัมน์ employee\_name:

`ISMEMBEROF('Managers') OR USERNAME() = [employee_name]`

### ฟังก์ชัน Tableau ที่รองรับในเงื่อนไขของนโยบาย

เงื่อนไขของนโยบายรองรับชุดย่อยของฟังก์ชัน Tableau:

- ตรรกะ (ยกเว้นที่เกี่ยวข้องกับ null)
- สตริง
- ผู้ใช้
- วันที่
- จำนวน: MIN, MID, MAX

หากต้องการดูว่าฟังก์ชันใดบางที่รองรับ ในตัวแก้ไขการเชื่อมต่อแบบเสมือน บนแท็บนโยบายข้อมูล โปรดดูแผงอ้างอิงทางด้านขวา

**หมายเหตุ**: หากการเชื่อมต่อแบบเสมือนมีนโยบายข้อมูลที่ประกอบด้วย[ฟังก์ชันของผู้ใช้](https://help.tableau.com/current/pro/desktop/th-th/functions_functions_user.htm) (เช่น, `USERNAME()`) และคุณเชื่อมต่อจากเวิร์กบุ๊กหรือแหล่งข้อมูลและสร้างการแยกข้อมูลไว้ที่นั่น การแยกข้อมูลจะมีเฉพาะแถวที่ตรงกับนโยบายข้อมูลการเชื่อมต่อแบบเสมือนในขณะที่สร้างการแยกข้อมูลเท่านั้น หากต้องการใช้ประโยชน์จากการเชื่อมต่อแบบเสมือนกับฟังก์ชันของผู้ใช้ในนโยบายข้อมูล ให้ใช้การเชื่อมต่อแบบเรียลไทม์จากเวิร์กบุ๊กหรือแหล่งข้อมูลไปยังการเชื่อมต่อแบบเสมือนแทนการแยกข้อมูล

## ใครสามารถดำเนินการนี้ได้บ้าง

หากต้องการสร้างนโยบายข้อมูล คุณจะต้อง

- มีข้อมูลเข้าสู่ระบบไปยังฐานข้อมูลที่เชื่อมต่อกับการเชื่อมต่อแบบเสมือน และ
- เป็นผู้ดูแลเซิร์ฟเวอร์หรือผู้ดูแลไซต์ หรือ Creator

## ขั้นตอนถัดไป

หลังจากที่คุณสร้างนโยบายข้อมูลแล้ว ขั้นตอนถัดไปคือการตรวจสอบว่านโยบายได้ผลตามที่คุณคาดหวังหรือไม่ โปรดดู[ทดสอบความปลอดภัยระดับแถวกับการดูตัวอย่างในฐานะผู้ใช้](https://help.tableau.com/v0.0/server-linux/th-th/dm_vconn_test_preview.htm) หรือหากคุณพร้อมที่จะแชร์การเชื่อมต่อแบบเสมือนและนโยบายข้อมูลกับคนอื่นๆ แล้ว โปรดดู[เผยแพร่การเชื่อมต่อเสมือนและกำหนดสิทธิ์](https://help.tableau.com/v0.0/server-linux/th-th/dm_vconn_publish_save.htm)

## ทรัพยากร

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการคำนวณ โปรดดู[การทำความเข้าใจการคำนวณใน Tableau](https://help.tableau.com/current/pro/desktop/th-th/calculations_calculatedfields_understand.htm) ในความช่วยเหลือเกี่ยวกับ Tableau Desktop และการเขียนเว็บ

สำหรับข้อมูลเกี่ยวกับฟังก์ชันผู้ใช้ โปรดดู[ฟังก์ชันผู้ใช้](https://help.tableau.com/current/pro/desktop/th-th/functions_functions_user.htm)ในความช่วยเหลือเกี่ยวกับ Tableau Desktop และการเขียนเว็บ

สำหรับข้อมูลเกี่ยวกับตัวเลือกการรักษาความปลอดภัยระดับแถวอื่นๆ ใน Tableau โปรดดูที [ภาพรวมของตัวเลือกการรักษาความปลอดภัยระดับแถวใน Tableau](https://help.tableau.com/current/server/th-th/rls_options_overview.htm) ในความช่วยเหลือ Tableau Server