Yalnızca bir partikül şema tablosuna erişen bir kullanıcıyı kısıtlamam gerekiyor. Sorguyu izledim ve user1_gmail_com olarak oturum açmayı denedim. Ancak, herhangi bir şema tablosunu taramaya çalışırken hatayla karşılaştım.HATA: schema user1_gmail_com şema için izin reddedildi 46
Benim Sorgu:
SELECT clone_schema('my_application_template_schema','user1_gmail_com');
CREATE USER user1_gmail_com WITH PASSWORD 'myloginpassword';
REVOKE ALL ON ALL TABLES IN SCHEMA user1_gmail_com FROM PUBLIC;
GRANT SELECT ON ALL TABLES IN SCHEMA user1_gmail_com TO user1_gmail_com;
SQL hatası:
ERROR: permission denied for schema user1_gmail_com at character 46
In statement:
SELECT COUNT(*) AS total FROM (SELECT * FROM "user1_gmail_com"."organisations_table") AS sub
Güncelleme Çalışma Sorgu:
SELECT clone_schema('my_application_template_schema','user1_gmail_com');
CREATE USER user1_gmail_com WITH PASSWORD 'myloginpassword';
REVOKE ALL ON ALL TABLES IN SCHEMA user1_gmail_com FROM PUBLIC;
GRANT USAGE ON SCHEMA user1_gmail_com TO user1_gmail_com;
GRANT SELECT ON ALL TABLES IN SCHEMA user1_gmail_com TO user1_gmail_com;
Yani 'clone_schema()' ne yapıyor? –
my_application_template_schema'daki tüm tabloların kopyalarını user1_gmail_com şema.https: //wiki.postgresql.org/wiki/Clone_schema – Ramprasad
içine alır. Ne clone_schema() 'ne de örnekleriniz hatanın oluştuğu bildirimi içerir. Peki, hatayı üreten bu ifade nereden geliyor? –