postgresql는 일반적으로 필요한 특정 특권 기능 및 정보에 대한 액세스를 제공하는 사전 정의 된 토토 캔 세트를 제공합니다. 관리자 (있는 토토 캔 포함Createrole
특권) cangrant
이러한 토토 캔은 사용자 및/또는 해당 환경의 다른 토토 캔에 대한 지정된 기능 및 정보에 액세스 할 수 있도록 제공합니다..
사전 정의 된 토토 캔은에 설명되어 있습니다.표 21.1. 추가 기능이 추가됨에 따라 각 토토 캔에 대한 특정 권한이 향후 변경 될 수 있습니다. 관리자는 변경 사항에 대한 릴리스 노트를 모니터링해야합니다.
표 21.1. 사전 정의 된 토토 캔
토토 캔 | 허용 액세스 |
---|---|
PG_READ_ALL_DATA | 모든 데이터 (테이블, 뷰, 시퀀스) 읽기 마치 마치select 해당 개체에 대한 권리 및 명시 적으로도하지 않고도 모든 스키마에 대한 사용 권한. 이 토토 캔은 토토 캔 속성이 없습니다BYSPASSRLS 세트. RLS를 사용하는 경우 관리자가 설정하기를 원할 수 있습니다Bypassrls 이 토토 캔이 부여되는 토토 캔에. |
pg_write_all_data | 모든 데이터 (테이블, 뷰, 시퀀스)를 작성하여삽입 , 업데이트 및삭제 해당 개체에 대한 권리와 모든 스키마에 대한 사용 권한을 명시 적으로하지 않아도. 이 토토 캔은 토토 캔 속성이 없습니다BYSPASSRLS 세트. RLS를 사용하는 경우 관리자가 설정하기를 원할 수 있습니다BYSPASSRLS 이 토토 캔이 부여되는 토토 캔에. |
PG_READ_ALL_SETTINGS | 모든 구성 변수, 심지어 일반적으로 슈퍼 유행자에게만 보이는 변수를 읽습니다. |
PG_READ_ALL_STATS | 모든 PG_STAT_*보기를 읽고 다양한 통계 관련 확장, 심지어 일반적으로 슈퍼업자에게만 보이는 것도 사용합니다. |
PG_STAT_SCAN_TABLE | 취할 수있는 모니터링 기능 실행액세스 공유 오랫동안 테이블의 잠금. |
pg_monitor | 다양한 모니터링보기 및 기능을 읽고/실행합니다. 이 토토 캔은의 회원입니다.PG_READ_ALL_SETTINGS , PG_READ_ALL_STATS andPG_STAT_SCAN_TABLE . |
pg_database_owner | 없음. 멤버십은 현재 데이터베이스 소유자의 암시 적으로 구성됩니다. |
pg_signal_backend | 쿼리를 취소하거나 세션을 종료하기 위해 다른 백엔드를 신호합니다. |
PG_READ_SERVER_FILES | 모든 위치에서 파일을 읽을 수 있습니다. 데이터베이스는 사본 및 기타 파일 액세스 기능으로 서버에서 액세스 할 수 있습니다. |
pg_write_server_files | 데이터베이스가 사본 및 기타 파일 액세스 함수로 서버에서 액세스 할 수있는 파일에 파일에 쓰기 허용 |
pg_execute_server_program | 데이터베이스 서버에서 프로그램 실행 허용 사용자로서 데이터베이스는 서버 측 프로그램을 실행할 수있는 사본 및 기타 기능과 같이 실행됩니다.. |
pg_checkpoint | 실행 허용PostgreSQL 명령. |
pg_maintain | 실행 허용진공 , 분석 , 클러스터 , PostgreSQL : 문서 : 17 : , reindex 및잠금 테이블 모든 관계에서 마치 마치 마치유지 관리 명시 적으로하지 않더라도 해당 개체에 대한 권리. |
pg_use_reserved_connections | Reserved_Connections. |
pg_create_subscription | 생성 Database에 대한 허가구독 생성 . |
thepg_monitor
, PG_READ_ALL_SETTINGS
, PG_READ_ALL_STATS
andPG_STAT_SCAN_TABLE
토토 캔은 관리자가 데이터베이스 서버를 모니터링 할 목적으로 토토 캔을 쉽게 구성 할 수 있도록하기위한 것입니다. 그들은 토토 캔이 다양한 유용한 구성 설정, 통계 및 기타 시스템 정보를 슈퍼업자로 일반적으로 제한 할 수 있도록 일련의 공통 권한을 부여합니다.
thepg_database_owner
토토 캔은 하나의 암시 적, 상황에 따라 구성된 회원, 즉 현재 데이터베이스의 소유자가 있습니다. 다른 토토 캔과 마찬가지로, 객체를 소유하거나 액세스 권한의 보조금을받을 수 있습니다. 결과적으로 한 번pg_database_owner
템플릿 데이터베이스 내에 권한이 있으며, 해당 템플릿에서 인스턴스화 된 데이터베이스의 각 소유자는 해당 권한을 행사할 것입니다.pg_database_owner
어떤 토토 캔의 구성원이 될 수 없으며, 비어원이 아닌 회원을 가질 수 없습니다. 처음 에이 토토 캔은를 소유합니다.public
스키마, 따라서 각 데이터베이스 소유자는 스키마의 로컬 사용을 관리합니다.
thepg_signal_backend
토토 캔은 관리자가 신뢰할 수 있지만 비 슈퍼 관리자가 다른 백엔드에 신호를 보내는 토토 캔을 신뢰할 수 있도록하기위한 것입니다. 현재이 토토 캔을 통해 다른 백엔드에서 쿼리를 취소하거나 세션을 종료 할 수있는 신호를 보낼 수 있습니다. 이 토토 캔을 부여한 사용자는 슈퍼 사용자가 소유 한 백엔드로 신호를 보낼 수 없습니다. 보다섹션 9.28.2.
thePG_READ_SERVER_FILES
, pg_write_server_files
andpg_execute_server_program
토토 캔은 관리자가 데이터베이스 서버에서 파일에 액세스하고 데이터베이스를 실행할 수있는 비 슈퍼 라이저가 데이터베이스를 실행할 수있는 토토 캔을 신뢰할 수 있도록하기위한 것입니다. 이러한 토토 캔이 서버 파일 시스템의 모든 파일에 액세스 할 수 있으므로 파일에 직접 액세스 할 때 모든 데이터베이스 수준 권한 점검을 우회하고 슈퍼 사용자 수준 액세스를 얻는 데 사용될 수 있으므로 사용자에게 이러한 토토 캔을 부여 할 때 큰주의를 기울여야합니다..
이러한 토토 캔을 부여 할 때는 필요한 경우에만 사용되도록하고 이러한 토토 캔이 특권 정보에 대한 액세스 권한을 부여한다는 것을 이해하기 위해 이러한 토토 캔을 부여 할 때주의를 기울여야합니다.
관리자는을 사용하여 사용자에게 이러한 토토 캔에 대한 액세스 권한을 부여 할 수 있습니다grant
명령, 예 :
Grant PG_Signal_backend에 admin_user;
문서에 올바른 것이 없으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면