Ứng dụng này làm gì
Module này cung cấp proxy (SQL view) an toàn cho các model metadata IR trong Odoo/Viindoo.
Trong nhiều ứng dụng nghiệp vụ (phê duyệt, báo cáo, mapping dữ liệu động, tự động hóa quy trình…), người dùng cần chọn Model/Field/Action để cấu hình.
Tuy nhiên, việc cấp quyền đọc trực tiếp lên các bảng hệ thống như ir.model, ir.model.fields, ir.actions.* thường bị hạn chế và có thể gây rủi ro bảo mật.
Module này tạo các model proxy public chỉ đọc, giữ nguyên ID so với bảng gốc, giúp dev tích hợp liền mạch,
đồng thời người dùng chỉ cần ACL trên proxy là có thể cấu hình an toàn.
Các Proxy Models được cung cấp
- Metadata Model
* Proxy model: viin.ir.model.public (SQL view từ ir.model)
* Cung cấp: technical name, tên hiển thị, order, info, state, transient flag, v.v.
* ID giữ nguyên như ir.model.id
- Metadata Field
* Proxy model: viin.ir.model.fields.public (SQL view từ ir.model.fields)
* Cung cấp: field name, nhãn, kiểu dữ liệu, quan hệ, required, readonly, store, index, metadata compute/related/depends, v.v.
* Lưu ý: Một số field nhạy cảm được giới hạn theo group ngay trong định nghĩa proxy.
* ID giữ nguyên như ir.model.fields.id
- Option cho Selection / Reference
* Proxy model: viin.ir.model.fields.selection.public (SQL view từ ir.model.fields.selection)
* Cung cấp danh sách option selection/reference an toàn.
* ID giữ nguyên như ir.model.fields.selection.id
- Metadata Action
* Proxy model: viin.ir.actions.act_window.public (SQL view từ ir.actions.act_window)
* Proxy model: viin.ir.actions.server.public (SQL view từ ir.actions.server)
* Cung cấp metadata cơ bản để chọn action (name, state, usage, v.v.)
* ID giữ nguyên như action gốc
Cơ chế Fallback runtime (Dễ dùng cho Developer)
Module này cũng patch các model IR gốc để khi user không có quyền đọc trên model gốc,
một số thao tác phổ biến sẽ tự động fallback sang proxy tương ứng:
- search/fetch fallback sang proxy recordset
- nạp view (get_view/get_views) fallback sang proxy
- mở form action có thể được redirect sang proxy đối với user không phải admin
Nhờ đó dev tránh được các hack ACL và code rườm rà, trong khi vẫn giữ ranh giới bảo mật.
Ấn bản được Hỗ trợ
- Ấn bản Community
- Ấn bản Enterprise
Phần mềm này và các tệp liên kết ("Phần mềm")
được sử dụng (chạy, tuỳ biến, chạy sau khi được tuỳ biến)
chỉ khi bạn mua được giấy phép có hiệu lực từ tác giả,
điển hình như qua các Ứng dụng Odoo, hoặc trong trường hợp
bạn nhận được thoả thuận bằng văn bản từ tác giả của Phần mềm (chi tiết tại tệp COPYRIGHT).
Bạn có thể phát triển các phân hệ Odoo có sử dụng Phần mềm như một Thư viện (thường là phụ thuộc vào, nhập vào và sử dụng nguồn của nó)
nhưng không sao chéo bất kỳ mã nguồn hay tài liệu nào thuộc Phần mềm. Bạn có thể phân phối những phân hệ này theo giấy phép
mà bạn lựa chọn, miễn sao nội dung giấy phép đó tương tích với điều khoản của Giấy phép Phần mềm Độc quyền Odoo
(ví dụ: LGPL, MIT hay bất kỳ loại giấy phép phần mềm độc quyền nào tương tự vậy).
Nghiêm cấm phát hành, phân phối, cấp phép lại hoặc bán bản sao của Phần mềm hoặc
bản sao
Phần mềm đã được sửa đổi.
Thông báo bản quyền và chấp thuận nêu trên buộc phải được bao gồm trong tất cả các bản sao hoặc các phần quan trọng của Phần mềm.
PHẦN MỀM ĐƯỢC CUNG CẤP "NGUYÊN TRẠNG", KHÔNG BẢO ĐẢM DƯỚI BẤT KỲ HÌNH THỨC NÀO, ĐƯỢC THỂ HIỆN RÕ RÀNG HOẶC NGỤ Ý, KHÔNG GIỚI HẠN
ĐẢM BẢO VỀ CÁC BẢO ĐẢM NGỤ Ý VỀ KHẢ NĂNG THƯƠNG MẠI, PHÙ HỢP VỚI MỤC ĐÍCH CỤ THỂ VÀ KHÔNG VI PHẠM.
TRONG MỌI TRƯỜNG HỢP SẼ KHÔNG CÓ TÁC GIẢ HOẶC CHỦ SỞ HỮU BẢN QUYỀN NÀO CHỊU TRÁCH NHIỆM VỀ BẤT KỲ KHIẾU NẠI,
THIỆT HẠI HOẶC TRÁCH NHIỆM PHÁP LÝ KHÁC NÀO TRONG PHẠM VI HỢP ĐỒNG, CÁC THIỆT HẠI HOẶC CÁCH KHÁC, PHÁT SINH TỪ, NGOÀI HOẶC
CÓ LIÊN KẾT VỚI PHẦN MỀM HOẶC VIỆC SỬ DỤNG HOẶC KINH DOANH KHÁC TẠI PHẦN MỀM.