# Kiểm soát những hàng và cột mọi người được xem

> Chia sẻ một bảng với nhóm của bạn và chỉ cho phép mỗi người xem những hàng và cột họ có quyền xem.

Với quy tắc truy cập, tất cả những người được bạn chia sẻ bảng đều làm việc trên cùng một bảng, nhưng mỗi người chỉ thấy phần bạn cho phép. Bạn thiết lập các quy tắc trong bảng tùy chọn chia sẻ của bảng.

Trang này sử dụng một ví dụ xuyên suốt: bảng **Deals** trong cơ sở dữ liệu bán hàng của bạn, với các cột **Region**, **Rep**, **Amount** và **Margin**. Mỗi nhân viên bán hàng chỉ được xem các giao dịch thuộc khu vực của mình, và chỉ nhóm Finance được xem **Margin**.

## Cách quy tắc truy cập hoạt động

- **Quy tắc cho những người còn lại** áp dụng cho tất cả những người được chia sẻ bảng mà không có quy tắc riêng. Nếu không có quy tắc này, họ sẽ thấy tất cả các hàng và cột.
- **Quy tắc cho một người, một nhóm hoặc không gian làm việc** là một ngoại lệ. Người có ngoại lệ sẽ được áp dụng ngoại lệ đó thay cho quy tắc dành cho những người còn lại.
- **Nhiều ngoại lệ được kết hợp với nhau.** Nếu một người thuộc nhiều ngoại lệ, họ sẽ thấy các hàng của từng ngoại lệ, nhưng không thấy bất kỳ cột nào bị một trong các ngoại lệ đó ẩn.
- **Chủ sở hữu bảng luôn thấy mọi thứ.** Các quy tắc áp dụng cho tất cả những người khác được chia sẻ bảng, kể cả quản trị viên.

Các quy tắc thuộc về bảng. Việc chia sẻ bảng với một người hoặc thu hồi quyền truy cập của họ không thêm hay xóa quy tắc.

## Trước khi bắt đầu

- Bạn cần gói Enterprise để tạo hoặc thay đổi quy tắc.
- Chủ sở hữu bảng và quản trị viên của không gian làm việc quản lý các quy tắc của bảng.
- Chia sẻ bảng trước: mở bảng từ trang cơ sở dữ liệu chứa bảng đó rồi chọn **Chia sẻ**. Các quy tắc áp dụng cho những người được chia sẻ bảng.

## Thiết lập quy tắc cho những người còn lại

Trong ví dụ này, mỗi nhân viên bán hàng chỉ thấy các giao dịch thuộc khu vực của mình, và không ai thấy **Margin**.

1. Mở bảng và chọn **Chia sẻ**, rồi chọn **Người có quyền truy cập**.
2. Bên cạnh **Những người còn lại**, chọn **Hàng và cột…**.
3. Trong phần **Hàng**, chọn **Chỉ những hàng mà…**.
4. Chọn **Cột** (**Region**) và **Điều kiện** (**là**).
5. Chọn **Thuộc tính thành viên**, rồi chọn **Thuộc tính** (`region`). Để so sánh với một giá trị cố định, hãy chọn **Giá trị** và nhập giá trị đó.
6. Trong phần **Cột bị ẩn**, chọn **Margin**.
7. Chọn **Lưu**.

Nếu quy tắc giới hạn những gì người không có quy tắc riêng được xem, Dvina sẽ hỏi trước và cho biết có bao nhiêu người hoặc nhóm bị ảnh hưởng.

Trong phần **Hàng**, bạn cũng có thể chọn **Tất cả hàng**, hoặc chọn **Không có hàng nào** để quy tắc không hiển thị bất kỳ hàng nào.

> [!TIP]
> Điều kiện so sánh cột theo cách phù hợp với kiểu dữ liệu của cột: cột văn bản có thể dùng **là**, **không phải là**, **chứa** hoặc **không chứa**; cột số có thể lớn hơn hoặc nhỏ hơn một giá trị; cột ngày có thể trước, sau hoặc nằm giữa các ngày. Bất kỳ cột nào cũng có thể có giá trị hoặc để trống.

## Thêm ngoại lệ cho một người hoặc một nhóm

Nhóm Finance cần được xem mọi giao dịch, bao gồm **Margin**.

1. Trong **Người có quyền truy cập**, tìm nhóm Finance. Mở menu bên cạnh nhóm, nơi hiển thị vai trò của nhóm, chẳng hạn như **Có thể xem**.
2. Chọn **Hàng và cột…**.
3. Trong phần **Hàng**, chọn **Tất cả hàng**, và để tất cả các cột trong phần **Cột bị ẩn** ở trạng thái không được chọn.
4. Chọn **Lưu**.

Mỗi dòng trong **Người có quyền truy cập** cho biết người hoặc nhóm đó được xem những gì, chẳng hạn như **Tất cả hàng** hoặc **Một số hàng, 1 cột bị ẩn**. Nếu hai ngoại lệ ẩn các cột khác nhau, Dvina sẽ cho bạn biết rằng người thuộc cả hai ngoại lệ sẽ không thấy các cột bị ẩn bởi bất kỳ quy tắc nào trong hai quy tắc đó.

Quy tắc dành cho không gian làm việc áp dụng cho mọi người trong đó cùng với quy tắc riêng của họ, nên các hàng được phép xem theo cả hai sẽ được gộp lại.

## Gán thuộc tính cho thành viên

Quy tắc so sánh một cột với thuộc tính của thành viên cho mỗi người xem các hàng khớp với giá trị của riêng họ. Trong ví dụ này, nhân viên bán hàng có `region` là West chỉ thấy các giao dịch thuộc West. Thuộc tính yêu cầu gói Enterprise và do quản trị viên thiết lập.

1. Trong Cài đặt › **Mọi người**, chọn **Thuộc tính thành viên**.
2. Nhập **Thuộc tính mới**, chẳng hạn như `region`, rồi chọn **Thêm**. Dùng chữ cái viết thường, chữ số và dấu gạch dưới, bắt đầu bằng một chữ cái.
3. Trong **Mọi người**, mở menu vai trò của một thành viên rồi chọn **Thuộc tính thành viên**.
4. Nhập giá trị của họ, chẳng hạn như `West`. Phân tách nhiều giá trị bằng dấu phẩy, chẳng hạn như `West, Central`, để hiển thị các hàng của từng giá trị.
5. Chọn **Lưu**.

Với SCIM, `department`, `cost_center`, `division`, `organization`, `employee_number`, `title` và `user_type` được lấy từ nhà cung cấp danh tính của bạn.

> [!IMPORTANT]
> Người chưa được thiết lập thuộc tính sẽ không thấy hàng nào từ quy tắc so sánh với thuộc tính đó. Họ sẽ thấy **Chế độ xem bị giới hạn** kèm ghi chú yêu cầu nhờ quản trị viên thiết lập thuộc tính. Khi bạn xóa một thuộc tính, các quy tắc truy cập so sánh với thuộc tính đó sẽ không còn khớp với bất kỳ ai.

## Mọi người nhìn thấy gì

Quy tắc áp dụng ở mọi nơi có truy vấn bảng: câu trả lời trong cuộc trò chuyện, thẻ, bản xuất thẻ và thông tin chuyên sâu.

- **Chế độ xem bị giới hạn** đánh dấu thẻ hoặc thông tin chuyên sâu mà quy tắc giới hạn nội dung bạn được xem.
- Cột bị ẩn với một người sẽ hoàn toàn không xuất hiện với họ. Nếu họ yêu cầu cột đó, truy vấn sẽ bị từ chối như thể cột không tồn tại.
- Khi quy tắc không cho một người xem hàng nào, Dvina không gửi truy vấn đến cơ sở dữ liệu.
- Khi Dvina mô tả bảng cho người chịu sự áp dụng của quy tắc, Dvina bỏ qua các cột bị ẩn và những phần mô tả được tạo từ các hàng mà họ có thể không được xem hết.
- Trên trang của cơ sở dữ liệu, các bảng có quy tắc truy cập hiển thị **Chế độ xem bị giới hạn**.

### Thông tin chuyên sâu và cuộc trò chuyện được chia sẻ

- Khi mở thông tin chuyên sâu được chia sẻ, người chịu sự áp dụng của quy tắc sẽ thấy kết quả của riêng họ, không phải của bạn.
- Khi bạn chia sẻ một cuộc trò chuyện, tác vụ hoặc luồng có các thẻ truy vấn một bảng, Dvina nêu tên những người mà quy tắc giới hạn nội dung họ được xem. Thẻ của họ hiển thị dữ liệu theo quyền truy cập của họ, nhưng nội dung câu trả lời hiển thị số liệu như bạn đã thấy.

## Xem ai đã truy vấn bảng

Mỗi truy vấn trên bảng có quy tắc truy cập và mỗi truy vấn của người được chia sẻ bảng đều được ghi lại trong nhật ký kiểm tra.

1. Trong **Người có quyền truy cập**, chọn **Ai đã truy vấn bảng này**.
2. Chọn một mục để xem **Thời điểm**, **Người truy vấn**, số **Hàng** được trả về và truy vấn đến **Từ** đâu: **Cuộc trò chuyện**, **Thẻ**, **Thông tin chuyên sâu** hoặc **Khác**.

Quản trị viên cũng có thể tìm thấy các sự kiện này trong mục **Bảng** tại Cài đặt › **Nhật ký kiểm tra**. Để xem ai đã truy vấn bảng, bạn cần gói Enterprise.

## Xóa quy tắc

1. Mở quy tắc từ **Người có quyền truy cập**.
2. Chọn **Xóa quy tắc**. Nếu việc xóa quy tắc cho phép ai đó xem thêm dữ liệu, Dvina sẽ hỏi trước và cho biết đó là ai; chọn **Xóa quy tắc** để xác nhận.

## Các gói

Gói Enterprise bao gồm tính năng tạo và thay đổi quy tắc, thuộc tính thành viên và **Ai đã truy vấn bảng này**. Các quy tắc bạn đã lưu vẫn tiếp tục áp dụng trên mọi gói, và bạn vẫn có thể xem cũng như xóa chúng.

## Nội dung liên quan

- [Cơ sở dữ liệu và kho dữ liệu](/docs/connectors/databases)
- [Thành viên và vai trò](/docs/teams/members-and-roles)
- [Sử dụng nhật ký kiểm toán](/docs/teams/audit-log)
- [Chia sẻ](/docs/use-dvina/features/sharing)
