보안 라벨 — 객체에 적용되는 보안 라벨 정의 또는 변경
보안 라벨 [ FOR공급자] 켜짐 테이블객체_이름| 열테이블_이름.열_이름| 골재aggregate_name(aggregate_signature) | 데이터 베이스객체_이름| 도메인객체_이름| 이벤트 트리거객체_이름| 외국 테이블객체_이름| 기능함수_이름[ ( [ [argmode] [인수이름]argtype[, ...] ] ) ] | 대형 개체large_object_oid| 구체화된 보기객체_이름| [ 절차 ] 언어객체_이름| 절차프로시저_이름[ ( [ [argmode] [인수이름]argtype[, ...] ] ) ] | 출판객체_이름| 역할객체_이름| 루틴routine_name[ ( [ [argmode] [인수이름]argtype[, ...] ] ) ] | 개요객체_이름| 순서객체_이름| 신청객체_이름| 테이블스페이스객체_이름| 유형객체_이름| 보다객체_이름는 입니다string_literal| NULL어디에서aggregate_signature다음과 같습니다: * | [argmode] [인수이름]argtype[ , ... ] | [ [argmode] [인수이름]argtype[ , ... ] ] 주문 방법: [argmode] [인수이름]argtype[ , ... ]
보안 라벨데이터베이스 개체에 보안 레이블을 적용합니다. 레이블 공급자당 하나씩 임의의 수의 보안 레이블을 지정된 데이터베이스 개체와 연결할 수 있습니다. 라벨 제공자는 함수를 사용하여 스스로 등록하는 로드 가능한 모듈입니다.register_label_provider.
register_label_provider은 SQL 함수가 아닙니다. 백엔드에 로드된 C 코드에서만 호출할 수 있습니다.
라벨 제공자는 주어진 라벨이 유효한지 그리고 해당 라벨을 주어진 객체에 할당하는 것이 허용되는지 여부를 결정합니다. 지정된 라벨의 의미도 마찬가지로 라벨 제공자의 재량에 따라 결정됩니다.포스트그레SQL레이블 공급자가 보안 레이블을 해석해야 하는지 여부와 방법에 제한을 두지 않습니다. 단지 이를 저장하기 위한 메커니즘을 제공할 뿐입니다. 실제로 이 기능은 다음과 같은 레이블 기반 필수 액세스 제어(MAC) 시스템과의 통합을 허용하기 위한 것입니다.SELinux. 이러한 시스템은 사용자 및 그룹과 같은 기존 임의 액세스 제어(DAC) 개념이 아닌 객체 라벨을 기반으로 모든 액세스 제어 결정을 내립니다.
사용하려면 데이터베이스 개체를 소유해야 합니다.보안 라벨.
객체_이름테이블_이름.열_이름aggregate_name함수_이름프로시저_이름routine_name라벨을 붙일 개체의 이름. 스키마(테이블, 함수 등)에 있는 개체의 이름은 스키마로 한정될 수 있습니다.
공급자이 라벨이 연결될 공급자의 이름입니다. 지정된 공급자를 로드해야 하며 제안된 라벨링 작업에 동의해야 합니다. 정확히 하나의 공급자가 로드되는 경우 간결성을 위해 공급자 이름이 생략될 수 있습니다.
argmode함수, 프로시저 또는 집계 인수의 모드:IN, 아웃, INOUT또는VARIADIC. 생략하면 기본값은IN. 참고하세요보안 라벨실제로는 전혀 관심을 기울이지 않습니다.아웃인수. 함수의 ID를 결정하는 데 입력 인수만 필요하기 때문입니다. 따라서 다음을 나열하는 것으로 충분합니다.IN, INOUT및VARIADIC인수.
argname함수, 프로시저 또는 집계 인수의 이름. 참고하세요보안 라벨함수 ID를 결정하려면 인수 데이터 유형만 필요하기 때문에 실제로 인수 이름에는 전혀 주의를 기울이지 않습니다.
argtype함수, 프로시저 또는 집계 인수의 데이터 유형.
large_object_oid대형 개체의 OID.
절차이것은 시끄러운 단어입니다.
string_literal문자열 리터럴로 작성된 보안 토토 꽁 머니의 새로운 설정.
NULL쓰기NULL보안 라벨을 삭제합니다.
다음 예는 테이블의 보안 레이블을 설정하거나 변경할 수 있는 방법을 보여줍니다.
테이블 mytable의 selinux에 대한 보안 토토 꽁 머니은 'system_u:object_r:sepgsql_table_t:s0'입니다.
라벨을 제거하려면:
mytable 테이블의 selinux에 대한 보안 라벨이 NULL입니다.
없습니다보안 라벨SQL 표준의 명령.
src/test/modules/dummy_seclabel
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.