ณ จุดนี้ไม่มีสิทธิ์ที่จะให้มัน hardcoded เพื่อ superuser มีการพูดคุยกันในรายการส่งเมลเมื่อเร็ว ๆ นี้และอาจมีการเปลี่ยนแปลงใน 9.5 ถ้ามีคนหาเวลาทำงานให้
คุณสามารถสร้างSECURITY DEFINER
ฟังก์ชันที่ superuser เป็นเจ้าของและเรียกใช้คิวรีที่คุณต้องการ สิ่งนี้จะอนุญาตให้ผู้ที่ไม่ใช่ผู้ใช้ขั้นสูงสามารถดูเนื้อหาของpg_stat_activity
โดยเรียกใช้ฟังก์ชัน
เช่นทำงานเป็น superuser:
CREATE FUNCTION get_sa() RETURNS SETOF pg_stat_activity AS
$$ SELECT * FROM pg_catalog.pg_stat_activity; $$
LANGUAGE sql
VOLATILE
SECURITY DEFINER;
CREATE VIEW pg_stat_activity_allusers AS SELECT * FROM get_sa();
GRANT SELECT ON pg_stat_activity_allusers TO public;
โปรดทราบว่าการเข้าถึงฟรีpg_stat_activity
ถูก จำกัด ด้วยเหตุผล เป็นไปได้ที่จะสอดแนมข้อมูลที่ละเอียดอ่อนจากการสอบถามของคนอื่น - ลองจินตนาการว่าหากผู้ใช้รายอื่นกำลังใช้ pgcrypto แทนที่จะให้สิทธิ์แก่public
คุณคุณควรให้สิทธิ์เฉพาะกับผู้ใช้หรือบทบาทเฉพาะที่จะทำหน้าที่เป็นผู้ใช้ตัวแทนในการตรวจสอบ