Schrift
[thread]544[/thread]

$ENV{'USER'} bei CGI-Perl-Script: User der das CGI startet?



<< >> 7 Einträge, 1 Seite
pearl-man
 2005-08-04 12:36
#5390 #5390
User since
2005-07-25
65 Artikel
BenutzerIn
[default_avatar]
Hallo,

wird mir vom Apache eine Umgebungsvariable geliefert, welche mir Aufschluss darüber gibt, mit den Rechten welches Nutzer ein CGI-Perl-Script gestartet wurde?
Lokal würde es ja so aussehen:

$user = $ENV{'USER'};

Jener Schnipsel funzt lokal auch einwandfrei, doch wenn ich jened Script als CGI laufen lasse, so wird mir vom Apache keine ENV namens USER übergeben, foglich ist der Wert der Vari. $user "0".

(Nutze suEXEC)
Ronnie
 2005-08-04 12:45
#5391 #5391
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Du kannst REMOTE_USER abfragen, wenn der Apache eine Authentifizierung z.B. via .htpasswd durchführt. Ansonsten kann er ja nicht wissen wer auf ein CGI zugreift.
pq
 2005-08-04 12:48
#5392 #5392
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
perldoc perlvar ($< ist die userid)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
pearl-man
 2005-08-04 14:08
#5393 #5393
User since
2005-07-25
65 Artikel
BenutzerIn
[default_avatar]
danke für die Hilfe, doch wie komme ich nun von der userid (hat geklappt mit $<) auf den dazugehörigen Benutzernamen?
Möchte nämlich nicht umbedingt erst die /etc/passwd befragen müssen.

mfg
Ronnie
 2005-08-04 14:24
#5394 #5394
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=pearl-man,04.08.2005, 12:08]danke für die Hilfe, doch wie komme ich nun von der userid (hat geklappt mit $<) auf den dazugehörigen Benutzernamen?[/quote]
getpwuid ist da hilfreich:
Code: (dl )
perl -e 'print [getpwuid($<)]->[0], "\n"'
\n\n

<!--EDIT|Ronnie|1123151190-->
Strat
 2005-08-04 14:26
#5395 #5395
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
perldoc -f getpwuid
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
pearl-man
 2005-08-04 14:34
#5396 #5396
User since
2005-07-25
65 Artikel
BenutzerIn
[default_avatar]
[quote=Ronnie,04.08.2005, 12:24][quote=pearl-man,04.08.2005, 12:08]danke für die Hilfe, doch wie komme ich nun von der userid (hat geklappt mit $<) auf den dazugehörigen Benutzernamen?[/quote]
getpwuid ist da hilfreich:
Code: (dl )
perl -e 'print [getpwuid($<)]->[0], "\n"'
[/quote]
Vielen Dank, genau das habe ich gesucht!
<< >> 7 Einträge, 1 Seite



View all threads created 2005-08-04 12:36.