bolug bonner linux user group
news about wissen files archive hilfe suchen  

 

archive :: SchAN-User

druckfassung

SchAN-User

Re: [Schan-user] Userabhängige Intranet-Startseite

To: Schulen ans Netz - Anwender <schan-user@xxxxxxxxxxxxxxxxx>
Subject: Re: [Schan-user] Userabhängige Intranet-Startseite
From: Philipp Flesch <philipp@xxxxxxxxxxx>
Date: Sat, 19 May 2012 15:05:48 +0200
hi!
Du berufst Dich aber scheinbar ausschliesslich auf

$User = $_SERVER['PHP_AUTH_USER'];


==> Wenn der Nutzer aber nun beim Browser nicht abgefragt wird, hast Du keinen User :-(

Du könntest nun natürlich noch die IP auswerten, und schauen, wer sich da zuletzt angemeldet hat. Wenn aber z.B. die Samba-Shares nicht mit einem Usernamen gemountet werden, dann hast Du keinen User.
Ausserdem geht das nicht an Terminal-Servern :-(
Also eher kein so feiner Ansatz.


Philipp

Am 19.05.2012 13:44, schrieb Helmut Hullen:
Hallo, Andreas,

Du meintest am 14.10.11:

[also vor schrecklich langer Zeit ...]

Mir wäre es aber lieb, wenn das browserunabhängig ginge. Ist da etwas
mit php oder so machbar? Mein Grundgedanke: -Startseite ist wie
üblich die index.htm (oder eben index.php) -In dieser wird -wie auch
immer- der Userstatus (Lehrer ja/nein) abgefragt. -In dessen
Ergebnis wird die lehrer.htm oder schueler.htm aufgerufen oder per
include in den Quelltext eingebaut.
"Im Prinzip" geht das natürlich.

Nun bin ich bei den ganzen über reines html hinausgehenden Sprachen
noch nicht fündig geworden: Kann man eine Windows-Systemvariable im
html-Quelltext zur Laufzeit  abfragen? Wenn ja: Wie?
Womit ich (auch beim Anfänger-Unterricht mit PHP) herumgespielt habe:

Datei "werbinich.php"

------------------------------------------------

<?php
/* ermittelt Daten des Users
fuer den c't/ODS-Schulserver
Nutzung gemaess der GNU Public License
$Id: werbinich.php,v 1.1 2008-05-07 10:33:38+02 HHullen Exp $
$Log: werbinich.php,v $
Revision 1.1  2008-05-07 10:33:38+02  HHullen
Start

*/

// System

exec ('getent passwd sysadm' , $sysZeile, $result);
echo 'Hallo, syssel<br />';
echo 'der Eintrag ist<br />';
print_r($sysZeile);
echo '<br />';
$Feld = explode(':',$sysZeile[0]);
echo "Platz 4 (Gecos) ist $Feld[4]<br />";
$sysHome = $Feld[5];
$sysShell = $Feld[6];

$Version = file_get_contents("$sysHome/version");
echo "Arktur-Version $Version<br />";
$Kernel = php_uname();
echo "Kernel-Version $Kernel<br />";

$ConfPfad = '/etc/Schule';


// Username

$User = 'unbekannt';
if (isset($_SERVER['PHP_AUTH_USER'])) {
     $User = $_SERVER['PHP_AUTH_USER'];
     }
// $Passwort = $_SERVER['PHP_AUTH_PW'];

// abfragender Rechner
$Rechner = $_SERVER['REMOTE_ADDR'];
echo "Der Rechner ist $Rechner<br />";

$Nutzer = $_HTTP_SERVER_VARS['PHP_AUTH_USER'];
echo 'Nutzer ist '.$Nutzer.'<br />';

// Netz pruefen

// Gruppen (?)
// passwd-Eintrag

//Lehrer/Schueler, Betreuer, Internet (?), Klausur, Projekt(e)

$User = 'hhullen';
// damit es weitergeht
// sonst:
// $User = $Nutzer;

exec ("getent passwd $User | grep :101:", $Zeile, $result);
echo "Hallo, $User<br />\n";

echo "der Eintrag ist<br />";
print_r($Zeile);
if ($result ) echo "kein Lehrer<br />";

echo '<br />';

$Feld = explode(':',$Zeile[0]);
echo "Platz 4 (Gecos) ist $Feld[4]<br />";
$Uid = $Feld[2];
$Gid = $Feld[3];
$Home = $Feld[5];

echo "Linux-Gruppe ist $Gid<br />";

exec ("grep -w $User $ConfPfad/.htgroup | grep -v ^# | cut -d: -f1", $htGruppe, 
$result);
print_r($htGruppe);

echo '<br />';
?>

---------------------------------------------------------------

Bei diesem Skript ist mindestens unschön, dass es "exec" und
"file_get_contents" benutzt, das ist die Quelle einiger anderer Übel.

Was Du vermutlich verarbeiten willst, beginnt nach "// Username".

Ginge es, durch die param.bat eine Semaphore zu erstellen, die dann
zur Entscheidungsfindung herangezogen werden kann?
Auf Anhieb wäre ich da etwas skeptisch; da wird zwar die Gruppe genannt,
aber die Datei "gehört" dem jeweiligen User, und die "index.php" kann
ohne andere Verrenkungen nicht darauf zugreifen.


Viele Gruesse!
Helmut

_______________________________________________
schan-user mailing list
schan-user@xxxxxxxxxxxxxxxxx
http://www.heise.de/bin/newsletter/listinfo/schan-user



_______________________________________________
schan-user mailing list
schan-user@xxxxxxxxxxxxxxxxx
http://www.heise.de/bin/newsletter/listinfo/schan-user

 « Vorige im Thread  Dieser Thread  Nächste im Thread » 

 

seitenanfang


 

news about wissen files archive hilfe suchen  
kontakt letzte änderung: 19.05.2012