কখন access l দ্বারা অ্যাক্সেস সুবিধাগুলি তালিকাভুক্ত হয় এবং কখন হয় না? By l দ্বারা তালিকাভুক্ত অ্যাক্সেস সুবিধাগুলি অনুদান এবং প্রত্যাহারের পরে পরিবর্তন করতে পারে:
$ createuser -EP my_readonly
$ psql development
development=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------------------------+----------+----------+-------------+-------------+-----------------------
development | vagrant | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 |
...
development=# grant usage on schema public to my_readonly;
development=# grant connect on database development to my_readonly;
development=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------------------------+----------+----------+-------------+-------------+----------------------------
development | vagrant | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 | =Tc/vagrant +
| | | | | vagrant=CTc/vagrant +
| | | | | my_readonly=c/vagrant
...
development=# revoke connect on database development from my_readonly;
REVOKE
development=# revoke usage on schema public from my_readonly;
REVOKE
development=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------------------------+----------+----------+-------------+-------------+-----------------------
development | vagrant | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 | =Tc/vagrant +
| | | | | vagrant=CTc/vagrant
কেন এমন? কোন রাষ্ট্র বদলেছে? আমি বিশ্বাস করি যে এই পুরো পিএসএইচএল অধিবেশনটির মাধ্যমে মাই-রিডোনলি ব্যবহারকারীদের সংযোগ স্থাপনের ক্ষমতাটি অপরিবর্তিত ছিল (কারণ আমি অনুমান করছি যে পাবলিকের ভূমিকাটি সংযোগের সুবিধাগুলি নিয়েছে), তবে স্পষ্টতই কিছু পরিবর্তন হয়েছে: সেই জিনিসটি কী?
সাইড প্রশ্ন: কিভাবে আমি স্পষ্টভাবে postgres অনুরোধ করতে পারেন আসলে পাবলিক কিনা নেই কানেক্ট অধিকারগুলি আপনার (তারা প্রত্যাহার থাকতে পারে - দেখুন কেন একটি নতুন ব্যবহারকারী কোনো টেবিল থেকে নির্বাচন করতে পারবে? )?