Re: improving user.c error messages
От | Peter Eisentraut |
---|---|
Тема | Re: improving user.c error messages |
Дата | |
Msg-id | 73ab0059-a652-e44a-73c6-36f350782078@enterprisedb.com обсуждение исходный текст |
Ответ на | Re: improving user.c error messages (Nathan Bossart <nathandbossart@gmail.com>) |
Ответы |
Re: improving user.c error messages
|
Список | pgsql-hackers |
On 16.03.23 16:48, Nathan Bossart wrote: >> I think the following change in DropRole() is incorrect: >> >> if (!is_admin_of_role(GetUserId(), roleid)) >> ereport(ERROR, >> (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), >> - errmsg("must have admin option on role \"%s\"", >> - role))); >> + errmsg("permission denied to drop role"), >> + errdetail("Only roles with the %s attribute and the %s >> option on role \"%s\" may drop this role.", >> + "CREATEROLE", "ADMIN", >> NameStr(roleform->rolname)))); >> >> The message does not reflect what check is actually performed. (Perhaps >> this was confused with a similar but not exactly the same check in >> RenameRole().) > Hm. Is your point that we should only mention the admin option here? I > mentioned both createrole and admin option in this message (and the > createrole check above this point) in an attempt to avoid giving partial > information. AFAICT, the mention of CREATEROLE is incorrect, because the code doesn't actually check for the CREATEROLE attribute.
В списке pgsql-hackers по дате отправления: