Login wird verweigert (Windows)

Login wird verweigert (Windows)

am 12.11.2008 08:33:05 von Thomas Steinbach

Hallo,

ich habe da ein unangenehmes Problem mit PostgreSQL
auf Windows XP (SP3)

Wenn ich den postgresql server unter einem (XP) Administrator-
Account starte (als Programm, nicht als Service), dann startet mir
zwar der Server und alles scheint fein zu sein, aber wenn ich dann
versuche mich als normaler (Pg) User (LoginRolle) mit dem Server zu
connecten, dann wird mir das verwehrt.

Das doofe ist das alles klappt wenn ich als normaler (XP) User den
Server starte und mich dann als normaler (Pg) User connecte, aber
eben nicht wenn ich als Administrator starte.
btw: Unter Vista habe ich das Problem bei einem AdministratorAccount
nicht, da hier ja i.d.R. auch UAC geschlatet ist und Pg dann auch nur
als "normaler" User gestartet wird.

Hintergrund. Ich nutze hier Pg als normales Programm, um es auf
CD mit Apache und einer PHP Anwendung zu verteilen. Alle Server
werden eben als Programm gestartet und laufen somit im UserContext,
eben auch wenn der User Administrator ist.

Und wenn es aber jemand ausprobiert der Administrator (und das machen
ja viele XP User) ist, kann er die Anwendung nicht testen :-(

Woran liegt das und wie starte ich postgresql, auch wenn ich
mit einem Administrator Account eingeloggt und zu Pg connecten will?

Eine Alternative waere fuer mich dann nur noch mysql zu nehmen.
Was ich aber aufgrund des proprietaeren Characters von mysql nicht
gerne machen wuerde...

btw: wie ueberrede ich Pg in der pgsqld.log zu etwas gespraechigeren
und nicht zu verwirrenden Aussagen? Die Optionen zu den ganzen logging
Einstellungen sind ja unueberschauber.

Was sind da sinnvolle Einstellungen und was sind die default-Werte?
Vor allem wenn ich sehen will, ob Connections und sql statements von
PHP aus erfolgreich waren oder nicht? Eventuell wie das Statement auch
aussah.
Momentan bekomme ich nur geloggt, das die plugin_debugger.dll
geladen wurde... (Brauche ich die ueberhaupt zu dem "normalen" Loggen?)

btw2: Betrifft die option "--silent" nur die Gespraechigkeit an
der Console oder wie ist das gemeint? Sehe da auch nicht viel.
Nur das Server gestarte wurde. Egal ob mit --silent oder ohne
gestartet.

Thomas



--
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: Login wird verweigert (Windows)

am 13.11.2008 13:14:20 von andreas.kretschmer

am Wed, dem 12.11.2008, um 8:33:05 +0100 mailte Thomas Steinbach folgen=
des:
> Hallo,
>=20
> ich habe da ein unangenehmes Problem mit PostgreSQL
> auf Windows XP (SP3)

Ich nix Kleinweich.


>=20
> Wenn ich den postgresql server unter einem (XP) Administrator-
> Account starte (als Programm, nicht als Service), dann startet mir
> zwar der Server und alles scheint fein zu sein, aber wenn ich dann
> versuche mich als normaler (Pg) User (LoginRolle) mit dem Server zu
> connecten, dann wird mir das verwehrt.

Konkrete Fehlermeldung? Läuft der Server wirklich?


>=20
> Das doofe ist das alles klappt wenn ich als normaler (XP) User den
> Server starte und mich dann als normaler (Pg) User connecte, aber
> eben nicht wenn ich als Administrator starte.

Gibt es nicht sowas wie runas unter Kleinweich? Btw, normalerweise läuf=
t
ein PG-Server im Hintergrund unter einem eigenen Account. Zumindest
unter *NIX. Das ist normalerweise kein Daddelprogramm, welches sich Kids
als Admin mal eben so reinziehen sollten...


> Eine Alternative waere fuer mich dann nur noch mysql zu nehmen.
> Was ich aber aufgrund des proprietaeren Characters von mysql nicht
> gerne machen wuerde...


Nun, Kleinweich ist auch proprietaer..., aber das soll nun keine
Ermunterung sein, MySQL zu nehmen.


>=20
> btw: wie ueberrede ich Pg in der pgsqld.log zu etwas gespraechigeren
> und nicht zu verwirrenden Aussagen? Die Optionen zu den ganzen logging
> Einstellungen sind ja unueberschauber.

log_statement auf 'all' setzen.=20


Andreas
--=20
Andreas Kretschmer
Kontakt: Heynitz: 035242/47150, D1: 0160/7141639 (mehr: -> Header)
GnuPG-ID: 0x3FFF606C, privat 0x7F4584DA http://wwwkeys.de.pgp.net

--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: Login wird verweigert (Windows)

am 13.11.2008 16:04:07 von Albe Laurenz

Thomas Steinbach wrote:
> ich habe da ein unangenehmes Problem mit PostgreSQL
> auf Windows XP (SP3)

Von Windows weiß ich nicht viel, aber bei den Logging-Fragen unten
kann ich vielleicht helfen.

> btw: wie ueberrede ich Pg in der pgsqld.log zu etwas gespraechigeren
> und nicht zu verwirrenden Aussagen? Die Optionen zu den ganzen logging
> Einstellungen sind ja unueberschauber.
>=20
> Was sind da sinnvolle Einstellungen und was sind die default-Werte?
> Vor allem wenn ich sehen will, ob Connections und sql statements von
> PHP aus erfolgreich waren oder nicht? Eventuell wie das Statement auch au=
ssah.
> Momentan bekomme ich nur geloggt, das die plugin_debugger.dll
> geladen wurde... (Brauche ich die ueberhaupt zu dem=20
> "normalen" Loggen?)

Ich gehe (als Defaultwert) davon aus, daß es sich um PostgreSQL 8.3 hande=
lt.

silent_mode=3Don # sinnvoll, um Fehler beim Starten zu finden, hier nicht =
so wichtig
log_connections=3Don # essentiell in diesem Fall
log_disconnections=3Don # ditto
log_line_prefix=3D"%t: %r (%u@%d) " # damit man weiß, wer's war

> btw2: Betrifft die option "--silent" nur die Gespraechigkeit an
> der Console oder wie ist das gemeint? Sehe da auch nicht viel.
> Nur das Server gestarte wurde. Egal ob mit --silent oder ohne
> gestartet.

Soweit ich weiß, ist das beim Start bedeutend bzw. bevor er ins Log
zu schreiben anfängt.

Liebe Grüße,
Laurenz Albe

--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: Login wird verweigert (Windows)

am 14.11.2008 04:10:00 von Thomas Steinbach

Hallo A.

>> ich habe da ein unangenehmes Problem mit PostgreSQL
>> auf Windows XP (SP3)

> Ich nix Kleinweich.

>> Wenn ich den postgresql server unter einem (XP) Administrator-
>> Account starte (als Programm, nicht als Service), dann startet mir
>> zwar der Server und alles scheint fein zu sein, aber wenn ich dann
>> versuche mich als normaler (Pg) User (LoginRolle) mit dem Server zu
>> connecten, dann wird mir das verwehrt.

> Konkrete Fehlermeldung? Läuft der Server wirklich?

Der Server laeuft. Es werden 6 Processe angelegt.
Im Pidfile steht auch die PID vom (Vater)prozess.
Also der Server scheint "normal" zu laufen, erlaubt
aber keine connects ueber php und auch nicht ueber
psql console

Ein:
chcp 1252
psql --host=3Dlocalhost --port=3D14432 dbtest dbuser

Ergibt:
Active code page: 1252
psql: expected authentication request from server, but received

Wobei dbtest und dbuser existieren und es sonst, eben
mit "normalem" XP UserAccount, funktioniert. Aber es geht
mit AdminAccount nicht. Auch nicht wenn ich das ganze
beim Standardport 5432 belasse.

>> Das doofe ist das alles klappt wenn ich als normaler (XP) User den
>> Server starte und mich dann als normaler (Pg) User connecte, aber
>> eben nicht wenn ich als Administrator starte.

> Gibt es nicht sowas wie runas unter Kleinweich? Btw, normalerweise lä=
uft
> ein PG-Server im Hintergrund unter einem eigenen Account. Zumindest
> unter *NIX. Das ist normalerweise kein Daddelprogramm, welches sich Kid=
s
> als Admin mal eben so reinziehen sollten...

Ja, runas gibt es, aber ich habe mir extra ein kleines
start tool gekloeppelt, das mir die ganze Sache bequem
startet und funktioniert wunderbar mit pg, aber eben
nur im "normalen" usercontext und nicht im AdminContext.

So kann dann ein User, der das von CD ausprobieren will
einfach ueber einen Doppelklick starten und brauch sich
nicht um Apache und Pg kuemmern. Ich will ja die PHP
Anwendung "verteilen"... bzw. nutzbar machen.

>> Eine Alternative waere fuer mich dann nur noch mysql zu nehmen.
>> Was ich aber aufgrund des proprietaeren Characters von mysql nicht
>> gerne machen wuerde...

> Nun, Kleinweich ist auch proprietaer..., aber das soll nun keine
> Ermunterung sein, MySQL zu nehmen.

Ja, da hast du natuerlich recht ;-) So gesehen schon.
Aber die Dinge die auf Windows laufen verbreiten sich
dann auch gut bei "OttoNormalPHPEntwickler/Anwender"
Im Endefekt gaebe es dann auch mehr Provider die
pg zu einem erschwinglichem Preis anbieten wuerden...

>> btw: wie ueberrede ich Pg in der pgsqld.log zu etwas gespraechigeren
>> und nicht zu verwirrenden Aussagen? Die Optionen zu den ganzen logging
>> Einstellungen sind ja unueberschauber.

> log_statement auf 'all' setzen.

Danke, werde das mal probieren.

Wer interesse hat, kann sich ja mal den von mir
vorhin neu eroeffneten Thread in der NewsGroup
de.comp.os-ms-windows.programmer
Subject: CreateProcess() vs. CreateProcessAsUser()
Message-ID:
anschauen. Vielleicht kann mir einer der pg
profis weiterhelfen oder weiss einen win32 Programmierer
der das schonmal umgesetzt hat, bzw. weiss wo es
da klemmt...

Thomas



--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: Login wird verweigert (Windows)

am 15.11.2008 11:21:16 von Andreas Kretschmer

Thomas Steinbach schrieb:

> Hallo A.
>
>>> ich habe da ein unangenehmes Problem mit PostgreSQL
>>> auf Windows XP (SP3)
>
>> Ich nix Kleinweich.
>
>>> Wenn ich den postgresql server unter einem (XP) Administrator-
>>> Account starte (als Programm, nicht als Service), dann startet mir
>>> zwar der Server und alles scheint fein zu sein, aber wenn ich dann
>>> versuche mich als normaler (Pg) User (LoginRolle) mit dem Server zu
>>> connecten, dann wird mir das verwehrt.
>
>> Konkrete Fehlermeldung? Läuft der Server wirklich?
>
> Der Server laeuft. Es werden 6 Processe angelegt.
> Im Pidfile steht auch die PID vom (Vater)prozess.
> Also der Server scheint "normal" zu laufen, erlaubt
> aber keine connects ueber php und auch nicht ueber
> psql console
>
> Ein:
> chcp 1252
> psql --host=3Dlocalhost --port=3D14432 dbtest dbuser
>
> Ergibt:
> Active code page: 1252
> psql: expected authentication request from server, but received

Das sieht nun allerdings nach unpassender pg_hba.conf aus, dort wird die
Art und Weise der Authenifizierung geregelt.


Andreas
--=20
Really, I'm not out to destroy Microsoft. That will just be a completely
unintentional side effect. (Linus Torvalds)
"If I was god, I would recompile penguin with --enable-fly." (unknown)
Kaufbach, Saxony, Germany, Europe. N 51.05082°, E 13.56889=
°

--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: Login wird verweigert (Windows)

am 17.11.2008 08:59:13 von Thomas Steinbach

Hallo Andreas,

>>> [...]
>>>> Wenn ich den postgresql server unter einem (XP) Administrator-
>>>> Account starte (als Programm, nicht als Service), dann startet mir
>>>> zwar der Server und alles scheint fein zu sein, aber wenn ich dann
>>> [...]
>> psql: expected authentication request from server, but received

> Das sieht nun allerdings nach unpassender pg_hba.conf aus, dort wird die
> Art und Weise der Authenifizierung geregelt.

Es lag an den Priviliegien wie ich nun herausgefunden
habe. Ich mache es so das ich nun die Privilegien selbst
herabsetzte. Funkt nun prima auch unter einem Adminaccount
Danke an alle die was beigetragen haben.

Thomas


--
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein