Обсуждение: Granting COPY FROM access

Поиск
Список
Период
Сортировка

Granting COPY FROM access

От
"Jim Cser"
Дата:
[post header corrected, sorry]

I have an application that uses ODBC to access a PostGreSQL 8.0.3
database.  To load in text files (comma separated, with column headers),
I use the SQL statement COPY FROM, which requires me to be a superuser.
I don't need full superuser access, so I would like to restrict the
permissions to only those necessary.  The GRANT doc says that INSERT
privilege allows COPY FROM, so as a superuser I did something like
"GRANT INSERT ON my_database TO regular_user".

Unfortunately, when I login to my_database as regular_user, I don't
have permission to do COPY FROM.  So, my question is:  can COPY FROM
permission be granted to a non-superuser, or is there something else
that I missed?

-Jim Cser

Re: Granting COPY FROM access

От
Chris
Дата:
Jim Cser wrote:
> [post header corrected, sorry]
>
> I have an application that uses ODBC to access a PostGreSQL 8.0.3
> database.  To load in text files (comma separated, with column headers),
> I use the SQL statement COPY FROM, which requires me to be a superuser.
> I don't need full superuser access, so I would like to restrict the
> permissions to only those necessary.  The GRANT doc says that INSERT
> privilege allows COPY FROM, so as a superuser I did something like
> "GRANT INSERT ON my_database TO regular_user".
>
> Unfortunately, when I login to my_database as regular_user, I don't
> have permission to do COPY FROM.  So, my question is:  can COPY FROM
> permission be granted to a non-superuser, or is there something else
> that I missed?

Are you trying from a file or stdin? What error message do you get when
you try?

pg_dump does it like this:

COPY table (field1, field2) FROM stdin;
1    1
2    2
\.

maybe you can use that method instead of from a file?

See http://www.postgresql.org/docs/8.0/static/sql-copy.html in case you
haven't before.

--
Postgresql & php tutorials
http://www.designmagick.com/