Обсуждение: Security settings
I've managed to mess up the permissions on all of the tables in one of my databases.... One way or another. I'm not sureof the actual sequence of events, but I think that a user of the database got deleted, while it was set as having privilegeson these tables. Ever since then, things have been not quite right. When I try to open the properties pane in pgadmin 2, I get the following error: -- Error Information -- Description: Element not found Number: 35601 Routine: pgAdmin II:frmTable.Initialise And then I can continue, but it doesn't show me any of the assigned security info for the table. At the command line, here are the permissions: plesionym-# \dp Access privileges for database "plesionym"Schema | Table | Access privileges --------+-------------------------------+-------------------public | mtstb_plesmnt_context | {=,mirpub=r}public |mtstb_plesmnt_edit_session | {=,mirpub=r}public | mtstb_plesmnt_phrase | {=,mirpub=r}public | mtstb_plesmnt_phrase_relation| {=,mirpub=r}public | mtstb_plesmnt_phrase_type | {=,mirpub=r}public | mtstb_plesmnt_source | {=,mirpub=r} If I try to do the same thing in pgadmin 3 I don't get any errors, and it shows me the proper security. However, I do getan error here if I try to change any of the security settings. I get "ERROR: parser: parser error at or near "ALL" at character 58" Can someone give me an idea of how to fix this? Thanks, Dan
> -----Original Message----- > From: Armbrust, Daniel C. [mailto:Armbrust.Daniel@mayo.edu] > Sent: 17 July 2003 22:00 > To: pgadmin-support@postgresql.org > Subject: [pgadmin-support] Security settings > > > I've managed to mess up the permissions on all of the tables > in one of my databases.... One way or another. I'm not sure > of the actual sequence of events, but I think that a user of > the database got deleted, while it was set as having > privileges on these tables. Ever since then, things have > been not quite right. > > When I try to open the properties pane in pgadmin 2, I get > the following error: > > -- Error Information -- > > Description: Element not found > Number: 35601 > Routine: pgAdmin II:frmTable.Initialise > > And then I can continue, but it doesn't show me any of the > assigned security info for the table. > > At the command line, here are the permissions: > plesionym-# \dp > Access privileges for database "plesionym" > Schema | Table | Access privileges > --------+-------------------------------+------------------- > public | mtstb_plesmnt_context | {=,mirpub=r} > public | mtstb_plesmnt_edit_session | {=,mirpub=r} > public | mtstb_plesmnt_phrase | {=,mirpub=r} > public | mtstb_plesmnt_phrase_relation | {=,mirpub=r} > public | mtstb_plesmnt_phrase_type | {=,mirpub=r} > public | mtstb_plesmnt_source | {=,mirpub=r} > > > If I try to do the same thing in pgadmin 3 I don't get any > errors, and it shows me the proper security. However, I do > get an error here if I try to change any of the security > settings. I get > "ERROR: parser: parser error at or near "ALL" at character 58" > > Can someone give me an idea of how to fix this? > Can you provide debug logs of the error occuring please? Regrds, Dave.
I got the error figured out this morning... The clients were having issues, because the user that was removed was the ownerof the tables. So, the tables effectively had no owner, causing pgadmin do have different issues in different versions. I was able to get it fixed (only with the new pgadmin however - the old one barfed to bad) It does bring up what I would call a bug, however... Probably in the database, however, and not the gui. I would think that you should not be able to remove a user from a database if that user owns tables. Furthermore, if you remove a user, that user should have all of its security entries removed from all tables. Dan ps - sorry for the private mail Dave, all of the other mailing lists I am on change the Reply to to point back to the list,rather than the sender.
> -----Original Message----- > From: Armbrust, Daniel C. [mailto:Armbrust.Daniel@mayo.edu] > Sent: 18 July 2003 15:47 > To: pgadmin-support@postgresql.org > Subject: Re: [pgadmin-support] Security settings > > > I got the error figured out this morning... The clients were > having issues, because the user that was removed was the > owner of the tables. So, the tables effectively had no > owner, causing pgadmin do have different issues in different versions. > > I was able to get it fixed (only with the new pgadmin however > - the old one barfed to bad) > > It does bring up what I would call a bug, however... Probably > in the database, however, and not the gui. > > I would think that you should not be able to remove a user > from a database if that user owns tables. Furthermore, if you > remove a user, that user should have all of its security > entries removed from all tables. Yes. Perhaps the obects should revert to the user that deletes the user. Problem is that it will likely involve objects in other databases and cross database queries are not really possible due to the way the backends work as I understand it. > > Dan > > ps - sorry for the private mail Dave, all of the other > mailing lists I am on change the Reply to to point back to > the list, rather than the sender. No problem. I must fix that sometime... Regards, Dave.