sepgsql
là một mô-đun có thể tải hỗ trợ điều khiển truy cập bắt buộc dựa trên kèo bóng đá hom nay (MAC) dựa trênSelinuxChính sách bảo kèo bóng đá hom nay.
Việc triển khai hiện tại có những hạn chế đáng kể và không thực thi kiểm soát truy kèo bóng đá hom nay bắt buộc cho tất cả các hành động. Nhìn thấyPhần F.40.7.
Mô -đun này tích hợp vớiSelinuxĐể cung cấp thêm một lớp kiểm tra bảo kèo bóng đá hom nay ở trên và ngoài những gì thường được cung cấp bởikèo bóng đá hom nay. Từ quan điểm củaSelinux, Mô -đun này cho phépkèo bóng đá hom nayĐể hoạt động như một trình quản lý đối tượng không gian người dùng. Mỗi bảng hoặc quyền truy cập chức năng được bắt đầu bởi truy vấn DML sẽ được kiểm tra đối với chính sách bảo kèo bóng đá hom nay hệ thống. Kiểm tra này ngoài việc kiểm tra quyền SQL thông thường được thực hiện bởikèo bóng đá hom nay.
12524_1253312538_12639System_u: Object_r: sepgsql_table_t: S0
12702_13288
TheNhãn bảo kèo bóng đá hom nay
Câu lệnh cho phép gán nhãn bảo kèo bóng đá hom nay cho đối tượng cơ sở dữ liệu.
sepgsql
Chỉ có thể được sử dụng trênLinux2.6.28 trở lên vớiSelinuxĐã bật. Nó không có sẵn trên bất kỳ nền tảng nào khác. Bạn cũng sẽ cầnlibselinux2.1.10 trở lên vàSelinux-Policy3.9.13 trở lên (mặc dù một số phân phối có thể đặt lại kèo bóng đá hom nay quy tắc cần thiết vào kèo bóng đá hom nay phiên bản chính sách cũ hơn).
Thesestatus
Lệnh cho phép bạn kiểm tra trạng thái củaSelinux. Một màn hình điển hình là:
$ sestatus Trạng thái Selinux: Đã bật Selinuxfs gắn kết: /selinux Chế độ hiện tại: Thực thi Chế độ từ tệp cấu hình: Thực thi Phiên bản chính sách: 24 Chính sách từ tệp cấu hình: được nhắm mục tiêu
nếuSelinuxbị vô hiệu hóa hoặc chưa được cài đặt, bạn phải đặt sản phẩm đó lên trước khi cài đặt mô -đun này.
14821_14864--with-selinux
Trong kèo bóng đá hom nay của bạnCấu hình
Lệnh. Hãy chắc chắn rằnglibselinux-devel
RPM được cài đặt tại thời điểm xây dựng.
Để sử dụng mô -đun này, bạn phải bao gồmsepgsql
trongshared_preload_l Libriestham số trongkèo bóng đá hom nayconf
. Mô -đun sẽ không hoạt động chính xác nếu được tải theo bất kỳ cách nào khác. Khi mô -đun được tải, bạn nên thực thisepgsql.sql
Trong mỗi cơ sở dữ liệu. Điều này sẽ cài đặt các chức năng cần thiết để quản lý nhãn bảo kèo bóng đá hom nay và gán nhãn bảo kèo bóng đá hom nay ban đầu.
Đây là một ví dụ cho thấy cách khởi tạo cụm cơ sở dữ liệu mới vớisepgsql
Các chức năng và nhãn bảo kèo bóng đá hom nay được cài đặt. Điều chỉnh các đường dẫn hiển thị khi thích hợp cho cài đặt của bạn:
$ xuất pgdata =/path/to/data/thư mục $ initDB $ VI $ pgdata/kèo bóng đá hom nayconf thay đổi #shared_preload_l Libres = '' # (thay đổi yêu cầu khởi động lại) ĐẾN Shared_Preload_L Libries = 'sepgsql' # (thay đổi yêu cầu khởi động lại) $ cho dbname trong template0 template1 postgres; LÀM postgres - -single -f -c exit_on_error = true $ dbname \ </usr/local/pgsql/share/contrib/sepgsql.sql/dev/null xong
Xin lưu ý rằng bạn có thể thấy một số hoặc tất cả kèo bóng đá hom nay thông báo sau tùy thuộc vào kèo bóng đá hom nay phiên bản cụ thể mà bạn có củalibselinuxvàSelinux-Policy:
16550_17114
Những tin nhắn này vô hại và nên bị bỏ qua.
Nếu quá trình cài đặt hoàn thành mà không có lỗi, bây giờ bạn có thể khởi động máy chủ bình thường.
Do bản chất củaSelinux, Chạy kèo bóng đá hom nay bài kiểm tra hồi quy chosepgsql
Yêu cầu một số bước cấu hình bổ sung, một số trong đó phải được thực hiện dưới dạng gốc. kèo bóng đá hom nay bài kiểm tra hồi quy sẽ không được chạy bởi một thông thườngLàm cho kiểm tra
hoặcTạo cài đặt
lệnh; Bạn phải thiết lập cấu hình và sau đó gọi tập lệnh kiểm tra theo cách thủ công. kèo bóng đá hom nay bài kiểm tra phải được chạy trongPRINT/SEPGSQL
Thư mục của cây xây dựng PostgreSQL được cấu hình. Mặc dù chúng yêu cầu một cây xây dựng, kèo bóng đá hom nay thử nghiệm được thiết kế để thực hiện đối với máy chủ được cài đặt, đó là chúng có thể so sánh vớiTạo Installcheck
khôngLàm cho kiểm tra
.
Đầu tiên, thiết lậpsepgsql
Trong cơ sở dữ liệu làm việc theo hướng dẫn trongPhần F.40.2. Lưu ý rằng người dùng hệ điều hành hiện tại phải có thể kết nối với cơ sở dữ liệu dưới dạng Superuser mà không cần xác thực kèo bóng đá hom nay khẩu.
Thứ hai, xây dựng và cài đặt gói chính sách để kiểm tra hồi quy. Thesepgsql-regtest
Chính sách là gói chính sách mục đích đặc biệt cung cấp một bộ quy tắc được cho phép trong kèo bóng đá hom nay bài kiểm tra hồi quy. Nó phải được xây dựng từ tệp nguồn chính sáchsepgsql-regtest.te
, được thực hiện bằng cách sử dụnglàm
Với một makefile do Selinux cung cấp. Bạn sẽ cần phải xác định vị trí makefile thích hợp trên hệ thống của bạn; Đường dẫn hiển thị dưới đây chỉ là một ví dụ. (Makefile này thường được cung cấp bởiSelinux-Policy-Devel
hoặcSelinux-Policy
RPM.) Sau khi được xây dựng, hãy cài đặt gói chính sách này bằng cách sử dụngsemodule
Lệnh, tải kèo bóng đá hom nay gói chính sách được cung cấp vào kernel. Nếu gói được cài đặt chính xác,
Nên liệt kêsemodule
-Lsepgsql-regtest
Là một gói chính sách có sẵn:
$ cd .../prong/sepgsql $ make -f/usr/share/selinux/devel/makefile $ sudo semodule -u sepgsql -regtest.pp $ sudo semodule -L | GREP SEPGSQL sepgsql-regtest 1.07
thứ ba, bậtsepgsql_regression_test_mode
. Vì lý do bảo kèo bóng đá hom nay, các quy tắc trongsepgsql-regtest
không được bật theo mặc định; TheSEPGSQL_REGRESS_TEST_MODE
Tham số cho phép kèo bóng đá hom nay quy tắc cần thiết để khởi chạy kèo bóng đá hom nay bài kiểm tra hồi quy. Nó có thể được bật bằng cách sử dụngSettsebool
lệnh:
$ sudo setsebool sepgsql_regression_test_mode trên $ getsebool sepgsql_regression_test_mode sepgsql_regression_test_mode - trên
Thứ tư, xác minh vỏ của bạn đang hoạt động trongUnconfined_t
miền:
20637_20702
xemPhần F.40.8Để biết chi tiết về việc điều chỉnh miền làm việc của bạn, nếu cần thiết.
Cuối cùng, chạy tập lệnh kiểm tra hồi quy:
$ ./test_sepgsql
Tập lệnh này sẽ cố gắng xác minh rằng bạn đã thực hiện tất cả kèo bóng đá hom nay bước cấu hình một cách chính xác và sau đó nó sẽ chạy kèo bóng đá hom nay thử nghiệm hồi quy chosepgsql
Mô -đun.
Sau khi hoàn thành kèo bóng đá hom nay bài kiểm tra, bạn khuyên bạn nên vô hiệu hóasepgsql_regression_test_mode
tham số:
$ sudo setsebool sepgsql_regression_test_mode tắt
Bạn có thể thích xóasepgsql-regtest
Chính sách hoàn toàn:
$ sudo semodule -r sepgsql -regtest
sepgsql.permissive
(Boolean
) #Tham số này cho phépsepgsql
22301_22428kèo bóng đá hom nayconf
Tệp hoặc trên dòng lệnh máy chủ.
Khi tham số này,sepgsql
kèo bóng đá hom nay chức năng ở chế độ cho phép, ngay cả khi Selinux nói chung đang làm việc trong chế độ thực thi. Tham số này chủ yếu hữu ích cho mục đích thử nghiệm.
sepgsql.debug_audit
(Boolean
) #Tham số này cho phép in kèo bóng đá hom nay tin nhắn kiểm toán bất kể cài đặt chính sách hệ thống. Mặc định tắt, có nghĩa là kèo bóng đá hom nay tin nhắn sẽ được in theo cài đặt hệ thống.
Chính sách bảo kèo bóng đá hom nay củaSelinuxCũng có các quy tắc để kiểm soát xem các truy kèo bóng đá hom nay cụ thể có được ghi lại hay không. Theo mặc định, vi phạm truy kèo bóng đá hom nay được ghi lại, nhưng không được phép truy kèo bóng đá hom nay.
Tham số này buộc tất cả kèo bóng đá hom nay đăng nhập có thể được bật, bất kể chính sách hệ thống.
Mô hình bảo kèo bóng đá hom nay củaSelinuxMô tả tất cả các quy tắc kiểm soát truy cập là mối quan hệ giữa một thực thể chủ thể (thông thường là máy khách của cơ sở dữ liệu) và một thực thể đối tượng (như đối tượng cơ sở dữ liệu), mỗi đối tượng được xác định bởi nhãn bảo kèo bóng đá hom nay. Nếu quyền truy cập vào một đối tượng không được dán nhãn, đối tượng được xử lý như thể nó được gán nhãnUnlabeled_t
.
Hiện tại,sepgsql
Cho phép các nhãn bảo kèo bóng đá hom nay được gán cho các lược đồ, bảng, cột, trình tự, chế độ xem và chức năng. Khisepgsql
đang được sử dụng, các nhãn bảo kèo bóng đá hom nay được tự động được gán cho các đối tượng cơ sở dữ liệu được hỗ trợ tại thời điểm tạo. Nhãn này được gọi là nhãn bảo kèo bóng đá hom nay mặc định và được quyết định theo Chính sách bảo kèo bóng đá hom nay hệ thống, lấy làm nhãn của người tạo, nhãn được gán cho đối tượng cha mẹ của đối tượng mới và tên tùy chọn của đối tượng được xây dựng.
Một đối tượng cơ sở dữ liệu mới về cơ bản kế thừa nhãn bảo kèo bóng đá hom nay của đối tượng cha, ngoại trừ khi chính sách bảo kèo bóng đá hom nay có các quy tắc đặc biệt được gọi là quy tắc chuyển đổi loại, trong trường hợp đó có thể áp dụng nhãn khác. Đối với các lược đồ, đối tượng cha là cơ sở dữ liệu hiện tại; Đối với các bảng, trình tự, chế độ xem và chức năng, đó là lược đồ chứa; Đối với các cột, đó là bảng chứa.
cho kèo bóng đá hom nay bảng,db_table: select
, db_table: chèn
, DB_TABLE: kèo bóng đá hom nay nhật
hoặcdb_table: xóa
được kiểm tra tất cả kèo bóng đá hom nay bảng mục tiêu được tham chiếu tùy thuộc vào loại câu lệnh; Ngoài ra,db_table: select
cũng được kiểm tra tất cả kèo bóng đá hom nay bảng có chứa kèo bóng đá hom nay cột được tham chiếu trongWHERE
hoặcTrở về
mệnh đề, như một nguồn dữ liệu chokèo bóng đá hom nay nhật
, v.v.
26505_26581db_column: chọn
được kiểm tra trên không chỉ kèo bóng đá hom nay cột được đọc bằngChọn
, nhưng những người được tham chiếu trong kèo bóng đá hom nay câu lệnh DML khác;db_column: kèo bóng đá hom nay nhật
hoặcdb_column: chèn
cũng sẽ được kiểm tra kèo bóng đá hom nay cột được sửa đổi bởikèo bóng đá hom nay nhật
hoặcChèn
.
Ví dụ: xem xét:
kèo bóng đá hom nay nhật T1 Set x = 2, y = func1 (y) trong đó z = 100;
ở đây,DB_Column: kèo bóng đá hom nay nhật
sẽ được kiểm traT1.x
, vì nó đang được kèo bóng đá hom nay nhật,27278_27305
sẽ được kiểm traT1.Y
, vì nó được kèo bóng đá hom nay nhật vừa được tham chiếu vàdb_column: chọn
sẽ được kiểm traT1.Z
, vì nó chỉ được tham chiếu.db_table: chọn kèo bóng đá hom nay nhật
cũng sẽ được kiểm tra ở cấp độ bảng.
cho kèo bóng đá hom nay chuỗi,DB_Sequence: get_value
được kiểm tra khi chúng tôi tham chiếu một đối tượng chuỗi bằng cách sử dụngChọn
27803_27912lastVal ()
.
để xem,db_view: mở rộng
Sẽ được kiểm tra, sau đó mọi quyền bắt buộc khác sẽ được kiểm tra trên kèo bóng đá hom nay đối tượng được mở rộng từ chế độ xem, riêng lẻ.
cho kèo bóng đá hom nay chức năng,db_procedure: exec
sẽ được kiểm tra khi người dùng cố gắng thực thi chức năng như một phần của kèo bóng đá hom nay vấn hoặc sử dụng lời mời đường dẫn nhanh. Nếu chức năng này là một thủ tục đáng tin cậy, nó cũng kiểm traDB_Procedure: EntryPoint
Quyền kiểm tra xem nó có thể thực hiện dưới dạng điểm nhập của thủ tục đáng tin cậy không.
Để truy kèo bóng đá hom nay bất kỳ đối tượng lược đồ nào,db_schema: tìm kiếm
28618_28832sử dụng
Đặc quyền trên lược đồ). Nếu có trình độ lược đồ rõ ràng có mặt, sẽ xảy ra lỗi nếu người dùng không có quyền cần thiết trên lược đồ có tên.
Khách hàng phải được phép truy kèo bóng đá hom nay tất cả các bảng và cột được tham chiếu, ngay cả khi chúng có nguồn gốc từ các chế độ xem sau đó được mở rộng, để chúng tôi áp dụng các quy tắc kiểm soát truy kèo bóng đá hom nay nhất quán độc lập với cách thức mà nội dung bảng được tham chiếu.
Hệ thống đặc quyền cơ sở dữ liệu mặc định cho phép kèo bóng đá hom nay siêu người dùng cơ sở dữ liệu sửa đổi danh mục hệ thống bằng kèo bóng đá hom nay lệnh DML và tham chiếu hoặc sửa đổi kèo bóng đá hom nay bảng bánh mì nướng. kèo bóng đá hom nay hoạt động này bị cấm khisepgsql
được bật.
SelinuxXác định một số quyền để kiểm soát các hoạt động chung cho từng loại đối tượng; chẳng hạn như sáng tạo, thay đổi, thả và relabel của nhãn bảo kèo bóng đá hom nay. Ngoài ra, một số loại đối tượng có quyền đặc biệt để kiểm soát các hoạt động đặc trưng của chúng; chẳng hạn như bổ sung hoặc xóa các mục tên trong một lược đồ cụ thể.
Tạo đối tượng cơ sở dữ liệu mới yêu cầuTạo
quyền.Selinuxsẽ cấp hoặc từ chối quyền này dựa trên nhãn bảo kèo bóng đá hom nay của khách hàng và nhãn bảo kèo bóng đá hom nay được đề xuất cho đối tượng mới. Trong một số trường hợp, cần có các đặc quyền bổ sung:
30784_30801
Ngoài ra yêu cầuGetAttr
Quyền cho cơ sở dữ liệu nguồn hoặc mẫu.
Tạo một đối tượng lược đồ yêu cầuadd_name
quyền trên lược đồ cha.
Tạo bảng bổ sung yêu cầu quyền tạo từng cột bảng riêng lẻ, giống như mỗi cột bảng là một đối tượng cấp cao nhất.
Tạo hàm được đánh dấu làLeakproof
Ngoài ra yêu cầuCài đặt
quyền. (Quyền này cũng được kiểm tra khiLeakproof
được đặt cho một chức năng hiện có.)
Khithả
lệnh được thực thi,thả
sẽ được kiểm tra trên đối tượng bị xóa. Quyền cũng sẽ được kiểm tra cho kèo bóng đá hom nay đối tượng bị rơi gián tiếp quaCascade
. Xóa kèo bóng đá hom nay đối tượng có trong một lược đồ cụ thể (bảng, chế độ xem, trình tự và quy trình) Ngoài ra yêu cầuremove_name
Trên lược đồ.
KhiAlter
Lệnh được thực thi,SetAttr
sẽ được kiểm tra trên đối tượng được sửa đổi cho từng loại đối tượng, ngoại trừ kèo bóng đá hom nay đối tượng công ty con như chỉ mục hoặc kích hoạt của bảng, trong đó thay vào đó, kèo bóng đá hom nay quyền được kiểm tra trên đối tượng cha. Trong một số trường hợp, cần có quyền bổ sung:
Chuyển một đối tượng sang một lược đồ mới cũng yêu cầuremove_name
quyền trên lược đồ cũ vàadd_name
quyền trên cái mới.
ĐặtLeakproof
thuộc tính trên một hàm yêu cầuCài đặt
quyền.
Sử dụngNhãn bảo kèo bóng đá hom nay
Trên một đối tượng cũng yêu cầuRelabelfrom
Quyền cho đối tượng kết hợp với nhãn bảo kèo bóng đá hom nay cũ vàrelabelto
Quyền cho đối tượng kết hợp với nhãn bảo kèo bóng đá hom nay mới của nó. (Trong trường hợp nhiều nhà cung cấp nhãn được cài đặt và người dùng cố gắng đặt nhãn bảo kèo bóng đá hom nay, nhưng nó không được quản lý bởiSelinux, chỉSETATTR
nên được kiểm tra ở đây. Điều này hiện không được thực hiện do hạn chế thực hiện.)
Quy trình đáng tin cậy tương tự như các chức năng xác định bảo kèo bóng đá hom nay hoặc các lệnh setuid.Selinux34268_34686
34715_35380
kèo bóng đá hom nay hoạt động trên nên được thực hiện bởi người dùng quản trị.
35492_35785
Trong trường hợp này, người dùng thông thường không thể tham khảoKhách hàng.Credit
trực tiếp, nhưng một thủ tục đáng tin cậyshow_credit
Cho phép người dùng in số thẻ tín dụng của khách hàng với một số chữ số được che dấu.
Có thể sử dụng tính năng chuyển đổi miền động của Selinux để chuyển nhãn bảo kèo bóng đá hom nay của quy trình máy khách, miền máy khách, sang bối cảnh mới, nếu chính sách bảo kèo bóng đá hom nay cho phép. Miền máy khách cầnSetCien
cho phép và cảDyntransition
Từ tên miền cũ đến miền mới.
Chuyển đổi miền động nên được xem xét cẩn thận, vì họ cho phép người dùng chuyển kèo bóng đá hom nay của họ, và do đó, các đặc quyền của họ, theo tùy chọn của họ, thay vì (như trong trường hợp quy trình đáng tin cậy) như hệ thống bắt buộc. Do đó,Dyntransition
Quyền chỉ được coi là an toàn khi được sử dụng để chuyển sang một miền có một bộ đặc quyền nhỏ hơn so với bản gốc. Ví dụ:
hồi quy =# chọn sepgsql_getcon (); sepgsql_getcon ----------------------------------------------------------- Unconfined_u: Unconed_r: Unconed_t: S0-S0: C0.C1023 (1 hàng) hồi quy =# Chọn sepgsql_setcon ('unconfined_u: unconfined_r: unconfined_t: s0-s0: c1.c4'); sepgsql_setcon ---------------- t (1 hàng) hồi quy =# Chọn sepgsql_setcon ('unconfined_u: unconfined_r: unconfined_t: s0-s0: c1.c1023'); Lỗi: Selinux: vi phạm chính sách bảo kèo bóng đá hom nay
Trong ví dụ này, chúng tôi được phép chuyển từ phạm vi MCS lớn hơnC1.C1023
đến phạm vi nhỏ hơnC1.C4
, nhưng chuyển đổi trở lại đã bị từ chối.
37941_38268sepgsql_setcon ()
Hàm từ trong một thủ tục đáng tin cậy; Điều đó sẽ cần một số thông tin xác thực để ủy quyền cho yêu cầu chuyển nhãn máy khách. Sau đó, phiên này sẽ có đặc quyền của người dùng mục tiêu, thay vì Pooler kết nối. Kết nối Pooler sau này có thể hoàn nguyên thay đổi nhãn bảo kèo bóng đá hom nay bằng cách sử dụngsepgsql_setcon ()
vớinull
Đối số, một lần nữa được gọi từ trong một quy trình đáng tin cậy với kiểm tra quyền thích hợp. Vấn đề ở đây là chỉ có quy trình đáng tin cậy thực sự mới có quyền thay đổi nhãn bảo kèo bóng đá hom nay hiệu quả và chỉ làm như vậy khi được cung cấp thông tin phù hợp. Tất nhiên, để hoạt động an toàn, lưu trữ thông tin xác thực (bảng, định nghĩa thủ tục hoặc bất cứ điều gì) phải được bảo vệ khỏi truy cập trái phép.
Bảng F.31Hiển thị kèo bóng đá hom nay chức năng có sẵn.
Bảng F.31. Chức năng sepgsql
function Mô tả |
---|
Trả về miền máy khách, nhãn bảo kèo bóng đá hom nay hiện tại của máy khách. |
Chuyển tên máy khách của phiên hiện tại sang miền mới, nếu được chính sách bảo kèo bóng đá hom nay cho phép. Nó cũng chấp nhận |
Dịch phạm vi MLS/MCS đủ điều kiện thành định dạng RAW nếu trình nền McStrans đang chạy. |
Dịch phạm vi MLS/MCS đã cho thành định dạng đủ điều kiện nếu trình nền McStrans đang chạy. |
42475_42574 |
Do kèo bóng đá hom nay hạn chế thực hiện, một số hoạt động DDL không kiểm tra quyền.
Do kèo bóng đá hom nay hạn chế thực hiện, kèo bóng đá hom nay hoạt động DCL không kiểm tra quyền.
kèo bóng đá hom nayHỗ trợ truy kèo bóng đá hom nay cấp hàng, nhưngSEPGSQL
không.
sepgsql
Không cố gắng che giấu sự tồn tại của một đối tượng nhất định, ngay cả khi người dùng không được phép tham khảo nó. Ví dụ, chúng ta có thể suy ra sự tồn tại của một đối tượng vô hình là kết quả của các xung đột chính chính, vi phạm chính nước ngoài, v.v., ngay cả khi chúng ta không thể có được nội dung của đối tượng. Sự tồn tại của một bảng bí kèo bóng đá hom nay hàng đầu không thể được ẩn giấu; Chúng tôi chỉ hy vọng sẽ che giấu nội dung của nó.
Trang wiki này cung cấp một cái nhìn tổng quan ngắn gọn, thiết kế bảo kèo bóng đá hom nay, kiến trúc, quản trị và các tính năng sắp tới.
Tài liệu này cung cấp một loạt kiến thức để quản lýSelinuxTrên hệ thống của bạn. Nó tập trung chủ yếu vào kèo bóng đá hom nay hệ điều hành Red Hat, nhưng không giới hạn ở họ.
Tài liệu này trả lời kèo bóng đá hom nay câu hỏi thường gặp vềSelinux45737_45802
Kaigai Kohei<kaigai@ak.jp.nec.com
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.