포스트그레SQL은 일반적으로 필요한 특정 권한 있는 기능 및 정보에 대한 액세스를 제공하는 기본 토토 꽁 머니 세트를 제공합니다. 관리자는 해당 환경의 사용자 및/또는 기타 토토 꽁 머니에 이러한 토토 꽁 머니을 부여하여 해당 사용자에게 지정된 기능 및 정보에 대한 액세스 권한을 제공할 수 있습니다.
기본 토토 꽁 머니은 다음에 설명되어 있습니다.표 21.1. 각 기본 토토 꽁 머니에 대한 특정 권한은 향후 추가 기능이 추가됨에 따라 변경될 수 있습니다. 관리자는 출시 노트에서 변경 사항을 모니터링해야 합니다.
표 21.1. 기본 토토 꽁 머니
| 토토 꽁 머니 | 액세스 허용 |
|---|---|
| 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_signal_backend | 다른 백엔드에 신호를 보내 쿼리를 취소하거나 세션을 종료하도록 합니다. |
| pg_read_server_files | COPY 및 기타 파일 액세스 기능을 사용하여 데이터베이스가 서버에서 액세스할 수 있는 모든 위치에서 파일 읽기를 허용합니다. |
| pg_write_server_files | COPY 및 기타 파일 액세스 기능을 사용하여 데이터베이스가 서버에서 액세스할 수 있는 모든 위치의 파일에 쓰기를 허용합니다. |
| pg_execute_server_program | COPY 및 서버 측 프로그램 실행을 허용하는 기타 기능을 사용하여 데이터베이스를 실행하는 사용자로 데이터베이스 서버에서 프로그램을 실행하도록 허용합니다. |
그pg_monitor, pg_read_all_settings, pg_read_all_stats그리고pg_stat_scan_tables토토 꽁 머니은 관리자가 데이터베이스 서버 모니터링을 위해 토토 꽁 머니을 쉽게 구성할 수 있도록 하기 위한 것입니다. 이는 토토 꽁 머니이 일반적으로 슈퍼유저에게만 제한된 다양한 유용한 구성 설정, 통계 및 기타 시스템 정보를 읽을 수 있도록 허용하는 일련의 공통 권한을 부여합니다.
그pg_signal_backend토토 꽁 머니은 관리자가 신뢰할 수 있지만 수퍼유저가 아닌 토토 꽁 머니을 활성화하여 다른 백엔드에 신호를 보낼 수 있도록 하기 위한 것입니다. 현재 이 토토 꽁 머니을 사용하면 다른 백엔드에서 쿼리를 취소하거나 해당 세션을 종료하기 위한 신호를 보낼 수 있습니다. 그러나 이 토토 꽁 머니이 부여된 사용자는 슈퍼유저가 소유한 백엔드에 신호를 보낼 수 없습니다. 참조섹션 9.26.2.
그pg_read_server_files, pg_write_server_files그리고pg_execute_server_program토토 꽁 머니은 관리자가 데이터베이스를 실행하는 사용자로서 데이터베이스 서버에서 파일에 액세스하고 프로그램을 실행할 수 있는 신뢰할 수 있지만 수퍼유저가 아닌 토토 꽁 머니을 가질 수 있도록 하기 위한 것입니다. 이러한 토토 꽁 머니은 서버 파일 시스템의 모든 파일에 액세스할 수 있으므로 파일에 직접 액세스할 때 모든 데이터베이스 수준 권한 확인을 우회하고 슈퍼유저 수준 액세스 권한을 얻는 데 사용될 수 있으므로 사용자에게 이러한 토토 꽁 머니을 부여할 때 세심한 주의가 필요합니다.
이러한 토토 꽁 머니을 부여할 때는 필요한 경우에만 사용되도록 주의해야 하며 이러한 토토 꽁 머니이 특권 정보에 대한 액세스 권한을 부여한다는 점을 이해해야 합니다.
관리자는 다음을 사용하여 사용자에게 이러한 토토 꽁 머니에 대한 액세스 권한을 부여할 수 있습니다.그랜트명령, 예:
admin_user에게 pg_signal_backend 부여;