cancel
Showing results for 
Search instead for 
Did you mean: 

permissions in sybase central

3,559

Hi, i'm using Adaptive Server Anywhere 9.0.2.3951 and i wonder How to Sybase Central show only tables / views which the user has access?

Accepted Solutions (1)

Accepted Solutions (1)

VolkerBarth
Contributor

If you really ask for tables/views which a particular user can access (in contrast to owning them, otherwise see KGINOZZ's answer):

I don't think there's an option within Sybase Central (even in current versions, I have checked with v12.0.1) to list only those. It would also require to be filtered by SELECT/INSERT permissions etc.

Each user can usually see and inspect all objects in Sybase Central, including whether he has any permissions or not. In case he wants to display the according data and is not allowed to select from that table/view, a SQLCODE: -121 "permission denied" error will be shown. The same does hold when trying to execute stored functions/procedures with missing execute permissions.

0 Kudos

I am creating some views to be used by an external client will have access only to SELECT data. But if the external client enter the Sybase Central and click the right button it can copy the structure of objects and I do not want that to happen. 😞

VolkerBarth
Contributor

Revoking PUBLIC membership for that user may be an option, as that will prevent access to the system catalog IIRC, though that may have other drawbacks... - IIRC, that was discussed here (or in the NNTP news - cf. the archive) years ago.

0 Kudos

Revoking PUBLIC membership meets what I need. My thanks. 🙂

Answers (1)

Answers (1)

Former Member

Right click on the database in question in Sybase Central, select "Filter Objects by Owner". In the following screen "clear all" and then select the user or group you wish to view. Click OK.

Now you should see only tables /views that the user / group has access to.

VolkerBarth
Contributor

I don't think so: "Being the owner" of a database object is not the same as "having access to" - e.g. each user of group PUBLIC has access to the system tables though they are owned by user SYS (and will only be shown if the "owner filter" contains "SYS").