포스트그레SQL은 일반적으로 필요한 특정 권한 있는 기능 및 정보에 대한 액세스를 제공하는 사전 정의된 배트맨 토토 세트를 제공합니다. 관리자(다음을 가진 배트맨 토토 포함크리에이터롤특권) 가능부여이러한 배트맨 토토을 사용자 및/또는 해당 환경의 다른 배트맨 토토에 부여하여 해당 사용자에게 지정된 기능 및 정보에 대한 액세스 권한을 제공합니다.
사전 정의된 배트맨 토토은 다음에 설명되어 있습니다.표 22.1. 향후 기능이 추가되면 각 배트맨 토토에 대한 특정 권한이 변경될 수 있습니다. 관리자는 출시 노트에서 변경 사항을 모니터링해야 합니다.
표 22.1. 사전 정의된 배트맨 토토
| 배트맨 토토 | 액세스 허용됨 |
|---|---|
| pg_read_all_data | 모든 데이터(테이블, 뷰, 시퀀스)를 마치 있는 것처럼 읽습니다.선택8257_8396BYPASSRLS설정합니다. RLS를 사용하는 경우 관리자가 설정할 수 있습니다.BYPASSRLS이 배트맨 토토이 부여된 배트맨 토토에 대해. |
| pg_write_all_data | 모든 데이터(테이블, 뷰, 시퀀스)를 마치 있는 것처럼 쓰기삽입, 업데이트그리고삭제8832_8971BYPASSRLS설정. RLS를 사용하는 경우 관리자가 설정할 수 있습니다.BYPASSRLS이 배트맨 토토이 부여된 배트맨 토토에 대해. |
| pg_read_all_settings | 모든 구성 변수를 읽으십시오. 일반적으로 슈퍼유저에게만 표시되는 변수도 포함됩니다. |
| pg_read_all_stats | 모든 pg_stat_* 보기를 읽고 다양한 통계 관련 확장 기능을 사용하십시오. 일반적으로 슈퍼유저에게만 표시되는 확장 기능도 포함됩니다. |
| pg_stat_scan_tables | 다음에 걸릴 수 있는 모니터링 기능 실행액세스 공유잠재적으로 오랫동안 테이블을 잠급니다. |
| pg_monitor | 다양한 모니터링 보기 및 기능을 읽고 실행합니다. 이 배트맨 토토은 다음 그룹의 구성원입니다.pg_read_all_settings, pg_read_all_stats그리고pg_stat_scan_tables. |
| pg_database_owner | 없음. 멤버십은 암시적으로 현재 데이터베이스 소유자로 구성됩니다. |
| pg_signal_backend | 다른 백엔드에 신호를 보내 쿼리를 취소하거나 세션을 종료하도록 합니다. |
| pg_read_server_files | COPY 및 기타 파일 액세스 기능을 사용하여 데이터베이스가 서버에서 액세스할 수 있는 모든 위치에서 파일 읽기를 허용합니다. |
| pg_write_server_files | COPY 및 기타 파일 액세스 기능을 사용하여 데이터베이스가 서버에서 액세스할 수 있는 모든 위치의 파일에 쓰기를 허용합니다. |
| pg_execute_server_program | COPY 및 서버 측 프로그램 실행을 허용하는 기타 기능을 사용하여 데이터베이스를 실행하는 사용자로 데이터베이스 서버에서 프로그램을 실행하도록 허용합니다. |
| pg_checkpoint | 다음 실행 허용체크포인트명령. |
| pg_use_reserved_connections | 다음을 통해 예약된 연결 슬롯 사용 허용reserved_connections. |
| pg_create_subscription | 사용자에게 허용만들기발행할 데이터베이스에 대한 권한구독 작성. |
그pg_monitor, pg_read_all_settings, pg_read_all_stats그리고pg_stat_scan_tables배트맨 토토은 관리자가 데이터베이스 서버 모니터링을 위해 배트맨 토토을 쉽게 구성할 수 있도록 하기 위한 것입니다. 이는 배트맨 토토이 일반적으로 슈퍼유저에게만 제한된 다양한 유용한 구성 설정, 통계 및 기타 시스템 정보를 읽을 수 있도록 허용하는 일련의 공통 권한을 부여합니다.
그pg_database_owner배트맨 토토에는 상황에 따라 달라지는 암시적 구성원, 즉 현재 데이터베이스의 소유자가 하나 있습니다. 다른 배트맨 토토과 마찬가지로 개체를 소유하거나 액세스 권한을 부여받을 수 있습니다. 결과적으로 한번pg_database_owner템플릿 데이터베이스 내에서 권한이 있으며, 해당 템플릿에서 인스턴스화된 데이터베이스의 각 소유자는 해당 권한을 행사합니다.pg_database_owner어떤 배트맨 토토의 구성원이 될 수 없으며 암시적이 아닌 구성원을 가질 수 없습니다. 처음에 이 배트맨 토토은 다음을 소유합니다.공개스키마이므로 각 데이터베이스 소유자가 스키마의 로컬 사용을 관리합니다.
그pg_signal_backend배트맨 토토은 관리자가 신뢰할 수 있지만 수퍼유저가 아닌 배트맨 토토을 활성화하여 다른 백엔드에 신호를 보낼 수 있도록 하기 위한 것입니다. 현재 이 배트맨 토토을 사용하면 다른 백엔드에서 쿼리를 취소하거나 해당 세션을 종료하기 위한 신호를 보낼 수 있습니다. 그러나 이 배트맨 토토이 부여된 사용자는 슈퍼유저가 소유한 백엔드에 신호를 보낼 수 없습니다. 참조섹션 9.27.2.
그pg_read_server_files, pg_write_server_files그리고pg_execute_server_program배트맨 토토은 관리자가 데이터베이스를 실행하는 사용자로서 데이터베이스 서버에서 파일에 액세스하고 프로그램을 실행할 수 있는 신뢰할 수 있지만 수퍼유저가 아닌 배트맨 토토을 가질 수 있도록 하기 위한 것입니다. 이러한 배트맨 토토은 서버 파일 시스템의 모든 파일에 액세스할 수 있으므로 파일에 직접 액세스할 때 모든 데이터베이스 수준 권한 확인을 우회하고 슈퍼유저 수준 액세스 권한을 얻는 데 사용될 수 있으므로 사용자에게 이러한 배트맨 토토을 부여할 때 세심한 주의가 필요합니다.
이러한 배트맨 토토을 부여할 때는 필요한 경우에만 사용되도록 주의해야 하며 이러한 배트맨 토토은 권한 있는 정보에 대한 액세스 권한을 부여한다는 점을 이해해야 합니다.
관리자는 다음을 사용하여 사용자에게 이러한 배트맨 토토에 대한 액세스 권한을 부여할 수 있습니다.그랜트명령, 예:
admin_user에게 pg_signal_backend 부여;
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.