21.5. 사전 정의된 범퍼카 토토#

포스트그레SQL는 일반적으로 필요한 특정 권한 있는 기능 및 정보에 대한 액세스를 제공하는 사전 정의된 역할 세트를 제공합니다. 관리자(다음을 가진 역할 포함크리에이터롤특권) 가능부여이러한 역할을 사용자 및/또는 해당 환경의 다른 역할에 전달하여 해당 사용자에게 지정된 기능 및 정보에 대한 액세스 권한을 제공합니다. 예를 들면:

admin_user에게 pg_signal_backend 부여;

경고

이러한 역할을 부여할 때는 필요한 경우에만 사용되도록 주의해야 하며 이러한 역할은 권한 있는 정보에 대한 액세스 권한을 부여한다는 점을 이해해야 합니다.

사전 정의된 범퍼카 토토은 아래에 설명되어 있습니다. 향후 기능이 추가되면 각 범퍼카 토토에 대한 특정 권한이 변경될 수 있습니다. 관리자는 출시 노트에서 변경 사항을 모니터링해야 합니다.

pg_checkpoint #

pg_checkpoint실행을 허용합니다체크포인트명령.

pg_create_subscription #

pg_create_subscription사용자에게 다음을 허용합니다생성발행할 데이터베이스에 대한 권한구독 작성.

pg_database_owner #

pg_database_owner항상 정확히 하나의 암시적 구성원, 즉 현재 데이터베이스 소유자를 갖습니다. 어떤 역할에도 멤버십을 부여할 수 없으며, 어떤 역할에도 멤버십을 부여할 수 없습니다.pg_database_owner. 그러나 다른 역할과 마찬가지로 개체를 소유하고 액세스 권한을 부여받을 수 있습니다. 결과적으로 한번pg_database_owner는 템플릿 데이터베이스 내에서 권한을 가지며, 해당 템플릿에서 인스턴스화된 데이터베이스의 각 소유자는 해당 권한을 보유합니다. 처음에 이 역할은 다음을 소유합니다.공개스키마이므로 각 데이터베이스 소유자가 해당 스키마의 로컬 사용을 관리합니다.

pg_maintain #

pg_maintain실행을 허용합니다진공, 분석, 클러스터, 구체화된 보기 새로고침, REINDEX락 테이블모든 관계에 대해, 마치 가지고 있는 것처럼유지해당 개체에 대한 권리.

pg_monitor
pg_read_all_settings
pg_read_all_stats
pg_stat_scan_tables #

이러한 역할은 관리자가 데이터베이스 서버 모니터링을 위한 역할을 쉽게 구성할 수 있도록 하기 위한 것입니다. 이는 역할이 일반적으로 슈퍼유저에게만 제한된 다양한 유용한 구성 설정, 통계 및 기타 시스템 정보를 읽을 수 있도록 허용하는 일련의 공통 권한을 부여합니다.

pg_monitor다양한 모니터링 뷰 및 기능을 읽고 실행할 수 있습니다. 이 역할은 다음 그룹의 구성원입니다.pg_read_all_settings, pg_read_all_stats그리고pg_stat_scan_tables.

pg_read_all_settings일반적으로 수퍼유저에게만 표시되는 변수를 포함한 모든 구성 변수를 읽을 수 있습니다.

pg_read_all_stats모든 pg_stat_* 보기를 읽고 다양한 통계 관련 확장 기능을 사용할 수 있습니다. 일반적으로 슈퍼유저에게만 표시되는 확장 기능도 포함됩니다.

pg_stat_scan_tables모니터링 기능 실행을 허용합니다.액세스 공유잠재적으로 오랫동안 테이블 잠금(예:pgrowlocks(텍스트)에서범퍼카 토토 : 문서 : 18 : F.31. pgrowlocks - 테이블의 행 잠금 정보 표시확장).

pg_read_all_data
pg_write_all_data #

pg_read_all_data모든 데이터(테이블, 뷰, 시퀀스)를 읽는 것을 허용합니다.선택해당 객체에 대한 권리 및사용모든 스키마에 대한 권리. 이 역할은 RLS(행 수준 보안) 정책을 우회하지 않습니다. RLS를 사용하는 경우 관리자가 설정할 수 있습니다.BYPASSRLS이 역할이 부여된 역할에 대해.

pg_write_all_data모든 데이터(테이블, 뷰, 시퀀스)를 마치 있는 것처럼 쓸 수 있습니다.삽입, 업데이트삭제해당 개체에 대한 권리 및사용모든 스키마에 대한 권리. 이 역할은 RLS(행 수준 보안) 정책을 우회하지 않습니다. RLS를 사용하는 경우 관리자가 설정할 수 있습니다.BYPASSRLS이 역할이 부여된 역할에 대해.

pg_read_server_files
pg_write_server_files
pg_execute_server_program #

이러한 역할은 관리자가 데이터베이스를 실행하는 사용자로서 데이터베이스 서버에서 파일에 액세스하고 프로그램을 실행할 수 있는 신뢰할 수 있는 그러나 수퍼유저가 아닌 역할을 가질 수 있도록 하기 위한 것입니다. 파일에 직접 액세스할 때 모든 데이터베이스 수준 권한 검사를 우회하며 슈퍼유저 수준 액세스 권한을 얻는 데 사용될 수 있습니다. 따라서 사용자에게 이러한 역할을 부여할 때는 세심한 주의가 필요합니다.

pg_read_server_files다음을 사용하여 데이터베이스가 서버에서 액세스할 수 있는 모든 위치에서 파일을 읽을 수 있습니다.복사및 기타 파일 액세스 기능.

pg_write_server_files다음을 사용하여 데이터베이스가 서버에서 액세스할 수 있는 모든 위치의 파일에 쓰기를 허용합니다.복사및 기타 파일 액세스 기능.

pg_execute_server_program데이터베이스를 실행하는 사용자로 데이터베이스 서버에서 프로그램을 실행할 수 있습니다.복사및 서버측 프로그램 실행을 허용하는 기타 함수.

pg_signal_autovacuum_worker #

pg_signal_autovacuum_worker신호 autovacuum 작업자가 현재 테이블의 Vacuum을 취소하거나 해당 세션을 종료할 수 있도록 허용합니다. 참조섹션 9.28.2.

pg_signal_backend #

pg_signal_backend다른 백엔드에 신호를 보내 쿼리를 취소하거나 해당 세션을 종료하도록 허용합니다. 이 범퍼카 토토은 수퍼유저가 소유한 백엔드 신호 전달을 허용하지 않습니다. 참조섹션 9.28.2.

pg_use_reserved_connections #

pg_use_reserved_connections다음을 통해 예약된 연결 슬롯 사용을 허용합니다.reserved_connections.

수정사항 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.