<html><head><style>.ws-ng-mail-style--2144eJzz9HPyjwAABGYBgQ,.ws-ng-mail-style--2144eJzz9HPyjwAABGYBgQ *{outline: none; box-sizing: content-box; line-height: initial;}.ws-ng-mail-style--2144eJzz9HPyjwAABGYBgQ b{font-weight: bold;}.ws-ng-mail-style--2144eJzz9HPyjwAABGYBgQ a{line-height: inherit; color: var(--mail-content-link-color);}.ws-ng-mail-style--2144eJzz9HPyjwAABGYBgQ p{display: block; margin-block: 1em; margin-inline: 0px;}@font-face { font-family: "Cambria Math"; }@font-face { font-family: Calibri; }@font-face { font-family: Aptos; }.ws-ng-mail-style--2144eJzz9HPyjwAABGYBgQ a:link{color: blue; text-decoration: underline;}.ws-ng-mail-style--2144eJzz9HPyjwAABGYBgQ code{font-family: "Courier New";}</style></head><body><div style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px;">Great, I will change that and made a pull-request.</div><div style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px;"><br></div><div data-ik-opengraph-ignore=""><div>Best regards !<br></div><div><br></div><div><b>///</b> <span style="color: #0088FF;"><b>Arthur Bazin</b></span> <b>___</b><br></div></div><div style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px;"><br></div><div data-ik-opengraph-ignore="" class="ik_mail_quote answerContentMessage"><div>Le 2026-07-15T23:05:45.000+02:00, Regina Obe <lr@pcorp.us> a écrit :</div><blockquote class="ws-ng-quote"><div class="ws-ng-mail-style--2144eJzz9HPyjwAABGYBgQ"><div class=""><p class="">Arthur,</p><p class=""> </p><p class="">This change looks good to me. Not sure why we didn’t use that in the first place.</p><p class=""> </p><p class="">The only thing I would change is to schema qualify those functions too with <b>pg_catalog</b></p><p class="">I’m not sure how we missed doing that </p><p class=""> </p><div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt"><div><div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in"><p class=""><b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif"> Arthur Bazin <<a href="mailto:ab-postgis-devel@bazmap.com" class="defaultMailLink">ab-postgis-devel@bazmap.com</a>> <br><b>Sent:</b> Wednesday, July 15, 2026 3:10 PM<br><b>To:</b> <a href="mailto:postgis-devel@lists.osgeo.org" class="defaultMailLink">postgis-devel@lists.osgeo.org</a><br><b>Subject:</b> Using column privilege with geometry_columns and other metadata views</span></p></div></div><p class=""> </p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">Hello,</span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> </span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">I've seen that geometry_columns, geography_columns, raster_columns and raster_overviews only display layers for which the role can at least SELECT on the table.</span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">But sometimes privileges are specific and only a subset of columns are defined as ''SELECTable''.</span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">These views doesn't reference the geom column if its privileges are column defined like this :</span></p><p class=""><code><span style="font-size:10.0pt">GRANT SELECT(geom) ON schema.my_table TO my_user;</span></code><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"></span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> </span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">We need to use </span><code><span style="font-size:10.0pt">has_column_privilege()</span></code><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> instead of </span><code><span style="font-size:10.0pt">has_table_privilege()</span></code><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> in the where clause of these views.</span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">The first function succeeds either if the privilege is held for the whole table, or if there is a column-level grant of the privilege for the column.</span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> </span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">I've made a fork of the PostGIS project to test this update and it works great.</span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">I've created a branch and commited the modifications to make a PR : <a data-ik="ik-secure" rel="noopener noreferrer" href="https://gitea.osgeo.org/arthurbazin/postgis/commit/d75464c991d25dc1f602a9e641ce40a8bfaaaea0">https://gitea.osgeo.org/arthurbazin/postgis/commit/d75464c991d25dc1f602a9e641ce40a8bfaaaea0</a></span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> </span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">Before submitting it, I would like to have your opinion on this improvement.</span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> </span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">Note that I didn't create any ticket on track to avoid the auto resolution by the new AI bot (if my informations are good) and start my first PR on this project (easy one but we need to start somewhere)</span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> </span></p><div><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">Best regards !</span></p><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> </span></p><p class=""><b><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif">///</span></b><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> <b><span style="color:#0088FF">Arthur Bazin</span></b> <b>___</b></span></p><p class=""><span class=""><span style="font-size:9.0pt;font-family:"Cambria Math",serif;color:#0088FF">⟁</span></span><span class=""><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif;color:#0088FF"> </span></span><span class=""><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif;color:#666666">France</span></span><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"></span></p></div><p class=""><span style="font-size:10.5pt;font-family:"Helvetica",sans-serif"> </span></p></div></div></div></blockquote></div><div style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px;"><br></div></body></html>