> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloudthinker.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Guardrails tùy chỉnh

> Chọn định danh mà agent chỉ thấy dưới dạng placeholder, khóa chúng cho mọi workspace và thêm mẫu cho định dạng ID riêng.

Guardrails quyết định giá trị nhạy cảm nào agent không bao giờ thấy ở dạng gốc. Khi một giá trị được bảo vệ xuất hiện trong dữ liệu agent làm việc, chẳng hạn email khách hàng trong một dòng log, agent đọc placeholder thay thế. Bạn quản lý tính năng này trong **Admin Settings → Guardrails**: bật hoặc tắt các định danh có sẵn và thêm mẫu cho các định dạng ID chỉ nhóm bạn dùng.

## Điều kiện tiên quyết

* Vai trò **Admin** trong workspace, để thay đổi cài đặt cho workspace đó.
* Vai trò **Owner** hoặc **Admin** của tổ chức, để đặt cấu hình nền của tổ chức, khóa quy tắc hoặc chuyển mẫu lên tổ chức.
* Một biểu thức chính quy cho mỗi định dạng ID tùy chỉnh bạn muốn ẩn. Bạn không cần giá trị mẫu.

## Agent thấy gì

Mỗi dòng trong bảng là một định danh có sẵn hoặc một mẫu tùy chỉnh. Nhấn vào dòng định danh có sẵn để xem mô tả và ví dụ về những gì agent thấy.

| Định danh | Mặc định | Giá trị gốc | Agent thấy |
| - | - | - | - |
| Email | Bật | `ops@mail.example.com` | `ct:pii:v3:email:4c1f0a9e27b3 [op***@ma***.com]` |
| Số điện thoại | Bật | `(012) 345-6789` | `ct:pii:v3:phone:8e25b0d4c7a1 [***-***-**89]` |
| Thẻ tín dụng | Bật | `4111 1111 1111 1111` | `ct:pii:v3:creditcard:0a1b2c3d4e5f` |
| IBAN | Bật | `GB82WEST12345698765432` | `ct:pii:v3:iban:b7e3915c0d2a` |
| Địa chỉ MAC | Bật | `00:00:5E:00:53:01` | `ct:pii:v3:mac:5f08a2c9e1d4` |
| API key | Bật | `sk-…` | `ct:secret:v3:openai-api-key:2d9c4e7a0b16` |
| Thông tin xác thực cloud | Bật | `AIza…` | `ct:secret:v3:gcp-api-key:9a4e1c7b3f20` |
| Địa chỉ IP | Tắt | `203.0.113.7` | `ct:pii:v3:ip:6c3a8f1e0b95 [203.0.***.7]` |
| Public key | Tắt | `ssh-ed25519 AAAA…` | `ct:pii:v3:publickey:e1b6d3a09c42` |
| ID tài khoản cloud | Tắt | `arn:aws:iam::123456789012:role/ops` | `arn:aws:iam::ct:pii:v3:account:3b0f7d2e9a61 [**********12]:role/ops` |

Các định danh bật theo mặc định bắt đầu ở phạm vi **Organization**. Một số chi tiết của các quy tắc có sẵn:

* **Email** bỏ qua địa chỉ thuộc các tên miền dành riêng `example.com`, `example.net` và `example.org`. **Phone** bỏ qua dải dành riêng 555-0100 đến 555-0199.
* **Credit card** và **IBAN** chỉ khớp các số vượt qua kiểm tra checksum, nên chuỗi số ngẫu nhiên vẫn hiển thị.
* **API keys** và **Cloud credentials** là bảo vệ secret, không phải PII. **Cloud credentials** bao gồm secret key và service account key của AWS, Azure, Google Cloud và các nhà cung cấp khác. Key ID `AKIA…` đứng riêng vẫn hiển thị. Hãy khóa cả hai dòng ở cấp tổ chức để không workspace nào tắt được chúng.

> [!TIP]
>
> Không thể khôi phục giá trị gốc từ placeholder, nên agent không thể tìm kiếm theo giá trị đã che, ví dụ tra cứu người dùng theo email. Chỉ che những gì agent không bao giờ cần truy vấn. Đó là lý do **IP addresses** và **Cloud account IDs** mặc định tắt: agent điều tra sự cố mạng hoặc IAM thường cần đọc chúng.

Thay đổi áp dụng cho đầu ra công cụ từ thời điểm đó. Đầu ra đã lưu vẫn giữ nguyên placeholder cũ, và bật một quy tắc không che lại các giá trị đã hiển thị.

## Đặt phạm vi chạy của bảo vệ

Cột **Scope** có ba vị trí cho mỗi dòng.

| Phạm vi | Tác dụng |
| - | - |
| **Off** | Không chạy trong workspace này |
| **Workspace** | Chỉ chạy trong workspace này |
| **Organization** | Chạy trong mọi workspace của tổ chức. Owner và Admin của tổ chức đặt phạm vi này. |

Ai nhấn sẽ quyết định thay đổi có hiệu lực rộng đến đâu. Với một quy tắc có sẵn ở **Organization**:

| Ai nhấn | Nhấn | Workspace này | Các workspace khác |
| - | - | - | - |
| Workspace Admin | **Off** | Quy tắc dừng ở đây. Nhấn **Organization** để hoàn tác. | Vẫn giữ quy tắc |
| Workspace Admin | **Workspace** | Không khả dụng | Không ảnh hưởng |
| Owner hoặc Admin của tổ chức | **Workspace** | Quy tắc tiếp tục chạy ở đây | Mất quy tắc, vì quy tắc rời khỏi cấu hình nền của tổ chức |
| Owner hoặc Admin của tổ chức | **Off** | Quy tắc dừng ở đây | Mất quy tắc, trừ khi chính họ đặt về **Workspace** |

Quy tắc đã khóa không thay đổi với bất kỳ ai cho đến khi Admin của tổ chức mở khóa.

**1. Mở Guardrails**

Vào **Admin Settings → Guardrails**. Dùng **Search identifiers**, hoặc lọc theo phạm vi và theo loại (**Built-in** hoặc **Custom**).

**2. Chọn phạm vi**

Nhấn **Off**, **Workspace** hoặc **Organization** trên dòng. Thay đổi được lưu ngay khi nhấn. Không có thanh Save.

**Trạng thái thành công:** dòng hiển thị phạm vi mới.

**3. Khóa quy tắc (tùy chọn, Admin của tổ chức)**

Đặt dòng về **Organization** trước; biểu tượng ổ khóa chỉ hoạt động ở đó. Sau đó nhấn ổ khóa trong cột **Actions** để giữ quy tắc có sẵn luôn bật cho mọi workspace.

**Trạng thái thành công:** workspace Admin không thể đặt quy tắc về **Off** nữa. Nhấn ổ khóa lần nữa để mở khóa.

Workspace Admin chỉ có thể tắt quy tắc của tổ chức cho workspace của mình khi quy tắc chưa bị khóa. Không thể khóa mẫu tùy chỉnh.

## Thêm mẫu tùy chỉnh

Dùng mẫu tùy chỉnh cho ID có cấu trúc mà quy tắc có sẵn không bao gồm, chẳng hạn số tài khoản khách hàng. Viết định dạng dưới dạng biểu thức chính quy. Không nhập giá trị thật.

**1. Bắt đầu một mẫu**

Trong **Admin Settings → Guardrails**, nhấn **Add pattern**. Mẫu mới bắt đầu ở phạm vi **Workspace**.

**2. Đặt tên**

Nhập **Name** mà nhóm bạn dễ nhận ra, chẳng hạn `Customer account ID`.

**3. Chọn danh mục**

Chọn **Category** từ danh sách hoặc tự nhập, chẳng hạn `customer-id`. Agent thấy danh mục trong placeholder, ví dụ `ct:pii:v3:customer-id:<hash>`. Các danh mục mà quy tắc có sẵn dùng, chẳng hạn `email`, được dành riêng.

**4. Nhập mẫu và lưu**

Nhập biểu thức chính quy vào **Pattern**, ví dụ `\bACC-\d{6}\b` cho `ACC-` theo sau bởi đúng sáu chữ số. Ranh giới từ `\b` ngăn mẫu khớp bên trong một ID dài hơn như `ACC-1234567`. Nhấn **Save**.

Mẫu dùng cú pháp regex của Rust, mặc định phân biệt hoa thường. Thêm `(?i)` ở đầu để bỏ qua hoa thường. Không hỗ trợ lookaround và backreference. Để thử mẫu trước, dùng công cụ kiểm tra đặt ở chế độ Rust, chẳng hạn [regex101](https://regex101.com).

**Trạng thái thành công:** mẫu xuất hiện trong bảng với loại **Custom**, ở phạm vi **Workspace**. CloudThinker kiểm tra mẫu khi lưu, và mẫu không hợp lệ hoặc quá rộng sẽ hiển thị lỗi (xem [Khắc phục sự cố](#khắc-phục-sự-cố)).

Không có bản xem trước kết quả khớp, nên hãy viết mẫu cụ thể. Một mẫu rộng, chẳng hạn mọi UUID, có thể ẩn các giá trị agent cần để làm việc.

### Giới hạn

| Mục | Giới hạn |
| - | - |
| Mẫu tùy chỉnh mỗi workspace | 5, tính cả mẫu riêng của workspace và mẫu của tổ chức |
| Name | 200 ký tự |
| Pattern | 512 ký tự |
| Category | 32 ký tự, gồm chữ thường, số và dấu gạch ngang |

Để dùng một mẫu cho toàn tổ chức, Owner hoặc Admin của tổ chức chuyển mẫu sang **Organization** bằng điều khiển phạm vi. Khi đó mẫu hiển thị trong bảng của mọi workspace, và chỉ Admin của tổ chức mới có thể sửa, chuyển hoặc xóa.

Mẫu của tổ chức chiếm một chỗ trong mọi workspace. Thao tác chuyển hoặc thêm mẫu lên tổ chức sẽ bị từ chối nếu khiến bất kỳ workspace nào vượt quá 5 mẫu. Hãy giải phóng một chỗ trong workspace đầy nhất trước.

## Thay đổi hoặc xóa mẫu

| Hành động | Cách làm | Ghi chú |
| - | - | - |
| Sửa | Nhấn vào dòng của mẫu để đổi tên hoặc mẫu | Danh mục cố định. Để dùng danh mục mới, thêm mẫu mới. |
| Tạm dừng | Đặt phạm vi về **Off** | Mẫu vẫn được lưu và giữ chỗ |
| Xóa | Nhấn **Delete** trong cột **Actions** và xác nhận | Không thể hoàn tác. Agent lại thấy các giá trị khớp trừ khi quy tắc khác bắt được chúng. |

## Khắc phục sự cố

> **Mẫu không lưu được**
>
> Thông báo lỗi cho biết bước kiểm tra nào thất bại.
>
> | Thông báo cho biết | Cách khắc phục |
> | - | - |
> | Không đọc được mẫu | Kiểm tra cú pháp regex, đặc biệt là dấu ngoặc và ký tự thoát |
> | Mẫu có thể khớp chuỗi rỗng | Đặt mọi phần là bắt buộc, ví dụ `\d{6}` thay vì `\d*` |
> | Cần mẫu đơn giản hơn hoặc ít lặp hơn | Giới hạn số lần lặp, ví dụ `{1,32}`, và giảm các lựa chọn thay thế |
> | Danh mục đã được một bảo vệ có sẵn dùng | Chọn danh mục khác |
> | Đã dùng hết 5 chỗ | Xóa một mẫu. Đặt mẫu về **Off** không giải phóng chỗ. |

> **Tôi không tắt được một quy tắc**
>
> Admin của tổ chức đã khóa quy tắc. Nhờ họ mở khóa, hoặc giữ quy tắc bật.

> **Tôi không sửa hoặc xóa được một mẫu**
>
> Đó là mẫu của tổ chức. Chỉ Owner và Admin của tổ chức mới thay đổi được.

> **Guardrails không có trong Admin Settings**
>
> **Admin Settings** dành cho Owner và Admin của tổ chức. Workspace Admin chỉ mở được trang **Guardrails** trong đó. Nếu bạn có một trong các vai trò đó mà vẫn không thấy trang, có thể Guardrails chưa được bật cho bản triển khai của bạn. Liên hệ bộ phận hỗ trợ CloudThinker.

## Bước tiếp theo

> **[Bảo vệ dữ liệu](https://docs.cloudthinker.io/vi/guide/security/data-protection.md)**
>
> Xem cách xử lý secret được dán hoặc in ra

> **[Bảo mật và tin cậy](https://docs.cloudthinker.io/vi/guide/security/overview.md)**
>
> Xem mọi cơ chế kiểm soát bảo mật ở một nơi


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.