如何验证特定列的update权限授予操作已生效?
问题原因
你在information_schema.table_privileges中查询不到对应记录属于正常情况,该视图仅存储整表级别的权限配置,而你执行的是指定speaker列的列级UPDATE权限授予,列级权限的记录存储在information_schema.column_privileges视图中。
验证查询语句
执行以下语句即可验证权限是否配置成功:
SELECT * FROM information_schema.column_privileges WHERE grantee = 'anon' AND table_schema = 'api' AND table_name = 'teams' AND column_name = 'speaker' AND privilege_type = 'UPDATE';
如果权限授予成功,查询会返回对应的权限条目,你也可以去掉column_name过滤条件,查看anon用户对api.teams表所有列的权限配置。如果查询结果为空,可检查授权语句是否执行成功、schema/用户名拼写是否正确。
内容的提问来源于stack exchange,提问作者bcb
相关产品推荐
相关产品推荐

