On Sat, Apr 11, 2015 at 12:57 AM David G. Johnston <
david.g.johns...@gmail.com> wrote:

> On Fri, Apr 10, 2015 at 9:01 AM, Sameer Kumar <sameer.ku...@ashnik.com>
> wrote:
>
>> Hi,
>>
>> In PostgreSQL a user can alter itself to change its user level
>> parameters. e.g. I can alter the user to change work_mem -
>>
>>
>> psql -U user1 -d postgres
>> postgres=# alter user user user1 set work_mem to '1024000';
>>
>
> ​Is this a typo? - the above has a syntax error...​
>

Yes that is a typo. Sorry about that.

>
> ALTER ROLE
>> postgres=#
>>
>> Is there a way I restrict this behavior? or atleast put a restriction on
>> the certain parameters e.g. work_mem to be not set to too high?
>>
>>
> ​Not that I'm aware of - and the ability to change parameters is not
> limited to ALTER ROLE.
>
> Setting "work_mem" too low can be just as problematic as setting it too
> high.  This one could probably be solved readily enough but you sound like
> you are looking for some blanket capability to either add targeted security
> about GUCs or setup a way to alter generically the "upper_bound,
> lower_bound" ​properties of numeric variables.
>

Yes either an upper bound to which users can set their own values to.


> Upper is somewhat easier but currently the system would only recognize a
> global constraint.
>

Does it? Even though my work_mem in postgresql.conf is 1MB, the user can
alter itself to set its own work_mem to 1GB. Or did I interpret your
statement wrongly?



>
> ​David J.​
>
>
>

Reply via email to