aboutsummaryrefslogtreecommitdiff
path: root/src/backend/commands
diff options
context:
space:
mode:
authorNathan Bossart <nathan@postgresql.org>2025-01-09 17:10:13 -0600
committerNathan Bossart <nathan@postgresql.org>2025-01-09 17:10:13 -0600
commitc559f61b547188f20ff9c54231f54cd9ef99b867 (patch)
tree874e3467e522ee67df39fcde1774089654818237 /src/backend/commands
parentffd9b813465843c5eda04229a09d2167ed4a4a71 (diff)
downloadpostgresql-c559f61b547188f20ff9c54231f54cd9ef99b867.tar.gz
postgresql-c559f61b547188f20ff9c54231f54cd9ef99b867.zip
Fix an ALTER GROUP ... DROP USER error message.
This error message stated the privileges required to add a member to a group even if the user was trying to drop a member: postgres=> alter group a drop user b; ERROR: permission denied to alter role DETAIL: Only roles with the ADMIN option on role "a" may add members. Since the required privileges for both operations are the same, we can fix this by modifying the message to mention both adding and dropping members: postgres=> alter group a drop user b; ERROR: permission denied to alter role DETAIL: Only roles with the ADMIN option on role "a" may add or drop members. Author: ChangAo Chen Reviewed-by: Tom Lane Discussion: https://postgr.es/m/tencent_FAA0D00E3514AAF0BBB6322542A6094FEF05%40qq.com Backpatch-through: 16
Diffstat (limited to 'src/backend/commands')
-rw-r--r--src/backend/commands/user.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/backend/commands/user.c b/src/backend/commands/user.c
index c75cde2e8e1..e204eb5e5d1 100644
--- a/src/backend/commands/user.c
+++ b/src/backend/commands/user.c
@@ -817,12 +817,12 @@ AlterRole(ParseState *pstate, AlterRoleStmt *stmt)
"BYPASSRLS", "BYPASSRLS")));
}
- /* To add members to a role, you need ADMIN OPTION. */
+ /* To add or drop members, you need ADMIN OPTION. */
if (drolemembers && !is_admin_of_role(currentUserId, roleid))
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
errmsg("permission denied to alter role"),
- errdetail("Only roles with the %s option on role \"%s\" may add members.",
+ errdetail("Only roles with the %s option on role \"%s\" may add or drop members.",
"ADMIN", rolename)));
/* Convert validuntil to internal form */