User cannot see view, only sees tables - privileges

These are the object privileges for a user on a netezza database. It says (S)elect, but the user cannot see views, only tables. Why is that?
Object Privileges
(L)ist (S)elect (I)nsert (U)pdate (D)elete (T)runcate (L)ock
(A)lter (D)rop a(B)ort (L)oad (G)enstats Gr(O)om (E)xecute
Label-A(C)cess Label-(R)estrict Label-E(X)pand Execute-(A)s
Administration Privilege
(D)atabase (G)roup (U)ser (S)chema (T)able T(E)mp E(X)ternal
Se(Q)uence S(Y)nonym (V)iew (M)aterialized View (I)ndex (B)ackup
(R)estore va(C)uum (S)ystem (H)ardware (F)unction (A)ggregate
(L)ibrary (P)rocedure U(N)fence (S)ecurity Scheduler (R)ule

LIST permission allows you to see an object, and a TABLE is a different object class than a VIEW.
If you want a user to see a view then you must grant LIST on that view (or the general object class of VIEW). Being granted LIST or SELECT on a table (or the object class of TABLE) has nothing to do with whether a user can see a VIEW.
If you had two views called VIEW_1 and VIEW_2 you could either do something like:
GRANT LIST, SELECT on VIEW_1, VIEW_2 to USER1234
or if you wanted them to have those permissions for all views in the database scope you grant to VIEW which is a reference to the object class for all views.
GRANT LIST, SELECT on VIEW to USER1234
Similarly you could grant to TABLE (which represents the table object class), and that would apply to all tables in the scope.

Related

have Hasura inheritance properties to do it graphically not in script to make super type and sub type inherit?

I was trying to make multiple role in hasura for example assume I have techician,customer role, then I need to have users table to fetch with role attribute and if I use inheritance it works completely but inheritance is not available on hasura.
I tried using script
create table customer () inherits (users);
but I need to know if there is other way to do

Taking the Name of the ROLE the user is in and populating it to a pick-list on the Opportunity

My customer has created roles with the names of the company's business divisions and sub-divisions. He wants to take the role the creating user is in, along with the next level up Role and populate that into two fields on the opportunity, to then use those two fields. (ROLE and SUB-ROLE) as Dashboard filters. Since the role is in the setup section and is also not a field on the user record, I'm assuming some type of Apex Trigger or Flow would be needed to take the role names of the creating user and then insert them?
They are new to Salesforce.. they have not tried anything yet.

DynamicsCRM 2013 - How to Show (Inherited) Owner of Queue Item

I have created a view for my Queue Items. In this view I show leads, orders, emails and quotes (Entities). One of the columns in my view is Owner (Activity). This shows the information that I want, but only for Entities that are "Activity Entities" (i.e. Task, Email, Phone call, etc). Is there a way to show the inherited owner of the queue Item object?
So if I have a Quote, show the owner of the quote in that field, if I have an order, show the owner of the order in that field, etc etc.
The OOB attribute Owner (Object) shows the owner of respective Activities, but the Quote or Order is not an activity type like Email, Task, etc. So they are empty.
If you pull up the respective owner of each entity type in that view, the columns grows horizontally and the empty values will be shown for other entity types.
Solution: Create a custom owner field in Queue Item entity and track all the owner field changes in all the current owner of your possible queue item entities using a plugin. Add that custom owner field which stores the current owner of respective Parent entity (Order, Quote, Email, Task, etc) owner to your view.

How to query a parent table and inherited child table together in one query

I am using go and pq to interface with my postgres database.
I have a simple user table which has basic fields. Id, name, type. My auxillary table, admin inherits from user and adds it's own field panel, and another one that is owner and adds owner. Whether that be using table inheritance, or a supporting table.
My question is if I hit and endpoint that points to user/1 at this point I don't know what type of user this person is yet here. I know we can use jwts and other ways to provide this from the front end. I'm more curious about if there is a way to figure out the user and it's type and query the additional fields in one query?
Ie. I hit the endpoint I would Select from users, get the type, then use that type to get the additional fields. So I would effectively be doing two queries on two tables to get the complete data. Is there a better solution of doing this? Is there some optimizations I could do.

Field visibility restriction/access control in MongoDB

I currently own a MongoDB database that contains a collection named User. User collection has a field called contact_info among several other fields.
My requirement is to allow a member in my team having access to the database with 'admin' role to view contact_info when querying a user, however, a team member with 'developer' role should be able to query a user but not view his/her contact_info (i.e. contact_info key in the user document should be hidden or masked for a team member with 'developer' role). I am looking for a field-level visibility restriction in MongoDB to comply with GDPR standards.
I am comparatively new to MongoDB and did some search for this requirement, but could not find any direct solution for this. Any help with be greatly appreciated.
Looks like you could create a view with only the fields needed (https://docs.mongodb.com/manual/core/views/).
Then I would create an extra user developer and 1 extra role developerRole
This developerRole should only have access to the view created.