Обсуждение: Windows Account Setup Issue - Mapped Network Drive

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

Windows Account Setup Issue - Mapped Network Drive

От
Balaji Ganesan
Дата:
When trying to run postgres in Windows with a non-admin account, we are
running into issues with network drives.

Currently we run the DB server as a separate user because that's
what postgres wants (it doesn't like to be admin).

But on Windows, the mapped drives letters (to network drives) are
unique to a user session. So when starting postgres as a different
user, it can't see the network drives. Since our application requires the data to
be residing in the network drive and not the local drive, we have the issue.

One option is to map the drives after startup of user process
(more code required to record and do this). But this user process
will most likely not have the required permissions to access the
file anyways. Since the user is a local user and not a domain user
they have not network wide id, so it can only access network resources
as world. It could potentially map drives as a different user (the
original), but then it needs that userid/password (which it doesn't
have).

Does anyone have a suggestion on how to resolve this issue. This looks like a common
problem and any suggestion will be appreciated.

Thanks
Balaji



Re: Windows Account Setup Issue - Mapped Network Drive

От
"Magnus Hagander"
Дата:
>When trying to run postgres in Windows with a non-admin
>account, we are
>running into issues with network drives.
>
>Currently we run the DB server as a separate user because that's
>what postgres wants (it doesn't like to be admin).
>
>But on Windows, the mapped drives letters (to network drives) are
>unique to a user session. So when starting postgres as a different
>user, it can't see the network drives. Since our application
>requires the data to
>be residing in the network drive and not the local drive, we
>have the issue.
>
>One option is to map the drives after startup of user process
>(more code required to record and do this). But this user process
>will most likely not have the required permissions to access the
>file anyways. Since the user is a local user and not a domain user
>they have not network wide id, so it can only access network resources
>as world. It could potentially map drives as a different user (the
>original), but then it needs that userid/password (which it doesn't
>have).
>
>Does anyone have a suggestion on how to resolve this issue.
>This looks like a common
>problem and any suggestion will be appreciated.

Use UNC paths, that is \\SERVER\SHARE\DIR\FILE. This will require a
domain user - there is no way around that, other than setting up an
anonymous share (and you shouldn't do that :P).

Your other option is to log in manuallty as the postgres account (with
the service *stopped*, this si important). Map the drives with
persistance. Then log off, *then' start the service. That should work,
but I would personally never rely on that for a production system.

That said, I'm also not sure I'd trust postgresql running over a Windows
share. In theory it should work fine, but I'm not certain enough on how
things like fsync() are handled over those. Perhaps someone else can say
something about that.

//Magnus