Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Digestauthentifizierung über Formular mit php

Mitglied: Fussel01

Fussel01 (Level 1) - Jetzt verbinden

21.09.2011 um 20:06 Uhr, 2834 Aufrufe, 8 Kommentare

Hi,
ich hoffe ihr könnt mir weiterhelfen.

Meine Frage ist, kann man den erforderlichen Benutzernamen sowie das Kennwort statt der Abfrage im externen Fenster diese im Formular schon abfragen und dann per php setzten lassen ?
Bin für jede Idee offen, aber möglichst nicht mit einer Formauth., da ich komplett mit php arbeite und nicht mit asp.Net .

MfG

Fussel
Mitglied: dog
21.09.2011 um 20:34 Uhr
...du möchtest Digest Auth am Browser vorbei machen?

Das geht nur mit Javascript und dazu gibt es genug bei Google.
Bitte warten ..
Mitglied: Fussel01
21.09.2011 um 22:13 Uhr
Hi Dog,
Ich möchte ein Forumlar auf der Webseite haben und nicht in dem Fenster was sich normalerweise öffnet, um dort das Kennword und den Benutzernamen einzugeben.
Mein Grund dafür ist einfach die Schönheit und man möchte den User nicht verwirren.
Habe bei google bis jetzt nur etwas gefunden wie man so ein Fenster erzeugt(das Windowsanmeldefenster oder so ),aber ich wollte ja ein Formular.

Meine Idee war das man dies einfach wie Variablen setzten könnte.

MfG

Fussel
Bitte warten ..
Mitglied: dog
21.09.2011 um 22:16 Uhr
Meine Idee war das man dies einfach wie Variablen setzten könnte.

Nein, kann man nicht.
Die einzige Möglichkeit ist die komplette Digest-Implementierung von Hand(!) in JavaScript nachzubauen.
Dafür gibt es genug Beispiele (auch mit MD5 etc.)

Wenn du es über den Browser machen willst, dann auch nur mit dem Formular vom Browser.
Bitte warten ..
Mitglied: Fussel01
22.09.2011 um 14:09 Uhr
So wie ich das verstanden habe, baut man die Digestauth. nach.
Kann man von dort, weil wir den ISS 7.0 benutzen, auf die Benutzernamen und Kennwörter vom Active Directory zugreifen ? Evtl. mit Ldap ?!

MfG

Fussel
Bitte warten ..
Mitglied: dog
22.09.2011 um 14:20 Uhr
Da du auch die Funktionen des Servers in dem Fall nicht benutzen kannst, ist das egal.

In PHP geht Digest gegen AD mit ldap_sasl_bind()
Bitte warten ..
Mitglied: Fussel01
22.09.2011 um 19:20 Uhr
01.
  
02.
 
03.
<?php 
04.
$realm = 'Geschützter Bereich'; 
05.
 
06.
// Benutzer => Passwort 
07.
$benutzer = array('admin' => 'mypass', 'gast' => 'gast'); 
08.
 
09.
if (empty($_SERVER['PHP_AUTH_DIGEST'])) { 
10.
    header('HTTP/1.1 401 Unauthorized'); 
11.
    header('WWW-Authenticate: Digest realm="' . $realm . 
12.
           '",qop="auth",nonce="' . uniqid() . '",opaque="' . md5($realm) . 
13.
           '"'); 
14.
 
15.
    die('Text, der gesendet wird, falls der Benutzer auf Abbrechen drückt'); 
16.
17.
 
18.
// Analysieren der Variable PHP_AUTH_DIGEST 
19.
if (!($daten = http_digest_parse($_SERVER['PHP_AUTH_DIGEST'])) || 
20.
    !isset($benutzer[$daten['username']])) 
21.
    die('Falsche Zugangsdaten!'); 
22.
 
23.
// Erzeugen einer gültigen Antwort 
24.
$A1 = md5($daten['username'] . ':' . $realm . ':' . 
25.
          $benutzer[$daten['username']]); 
26.
$A2 = md5($_SERVER['REQUEST_METHOD'] . ':' . $daten['uri']); 
27.
$gueltige_antwort = md5($A1 . ':' . $daten['nonce'] . ':' . $daten['nc'] . 
28.
                        ':' . $daten['cnonce'] . ':' . $daten['qop'] . ':' . 
29.
                        $A2); 
30.
 
31.
if ($daten['response'] != $gueltige_antwort) 
32.
    die('Falsche Zugangsdaten!'); 
33.
 
34.
// OK, gültige Benutzername & Passwort 
35.
echo 'Sie sind angemeldet als: ' . $daten['username']; 
36.
 
37.
// Funktion zum analysieren der HTTP-Auth-Header 
38.
function http_digest_parse($txt) { 
39.
    // gegen fehlende Daten schützen 
40.
    $noetige_teile = array('nonce'=>1, 'nc'=>1, 'cnonce'=>1, 'qop'=>1, 
41.
                           'username'=>1, 'uri'=>1, 'response'=>1); 
42.
    $daten = array(); 
43.
    $schluessel = implode('|', array_keys($noetige_teile)); 
44.
 
45.
    preg_match_all('@(' . $schluessel . ')=(?:([\'"])([^\2]+?)\2|([^\s,]+))@', 
46.
                   $txt, $treffer, PREG_SET_ORDER); 
47.
 
48.
    foreach ($treffer as $t) { 
49.
        $daten[$t[1]] = $t[3] ? $t[3] : $t[4]; 
50.
        unset($noetige_teile[$t[1]]); 
51.
    } 
52.
 
53.
    return $noetige_teile ? false : $daten; 
54.
55.
?>
Wenn man dort noch das Ldap reinpackt müsste es doch gehen, oder ?!
Bitte warten ..
Mitglied: dog
22.09.2011 um 20:16 Uhr
Das ist nur die Methode für Digest Auth über die Browser-eigene Funktion.
Bitte warten ..
Mitglied: Fussel01
29.09.2011 um 18:03 Uhr
Bekomme es irgendwie nicht hin. Es wäre nett, wenn mir einer ein Beispiel geben könnte.

MfG
Fussel
Bitte warten ..
Ähnliche Inhalte
PHP
PHP Problem mit Formular
gelöst Frage von vServerPHP6 Kommentare

Hallo, ich habe ein Formular jedoch ein Problem das später nicht alle Felder weitergegeben werden? und hier hab ich ...

Windows Netzwerk

Zugriff auf interne Website mit Digestauthentifizierung

gelöst Frage von Peter007Windows Netzwerk1 Kommentar

Hallo zusammen, kann es sein dass ein lokaler Administrator kein zugriff auf eine interne Website mit Digest-Authentifizierung hat?

PHP

PHP include und per form ein formular einfügen

Frage von miichiii9PHP1 Kommentar

Hallo miteinander Ich habe ein kleines Problem Meine Idee ist ein kleines Forum selber zu erstellen mittels PHP und ...

PHP

Textnotiz mit HTML-Form erstellen und Formular prüfen ( PHP )

gelöst Frage von Sven32PHP9 Kommentare

Hallo Leute, ich brauche mal eure Hilfe. Und zwar möchte ich gerne mittels eines HTML Formular eine .txt Datei ...

Neue Wissensbeiträge
Humor (lol)
IoT-Gefahr: Smartes Aquarium leckt!
Information von Lochkartenstanzer vor 4 StundenHumor (lol)3 Kommentare

Moin, Die IoT-Manie hat weitere Opfer gefunden. Ein Casino-Leck durch ein smartes Aquarium: Allerdings haben sie kein Wasser, sondern ...

Router & Routing

Olle Fritzbox 7270 mit VPN und SIP-Telefonie hinter O2 Homebox 6641 als "Modem"

Erfahrungsbericht von the-buccaneer vor 13 StundenRouter & Routing3 Kommentare

Nun war es soweit: Auch O2 hat mich mit VOIP zwangsbeglückt. Heute am Privatanschluss, in 2 Wochen ist das ...

Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 1 TagSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 1 TagWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
OpenVPN Client Fehlermeldungen
Frage von chris84LAN, WAN, Wireless15 Kommentare

Hallo Zusammen, wir nutzen seit kurzem einen neuen Router und den OpenVPN Client. Die VPN Verbindung klappt; allerdings kommen ...

Sonstige Systeme
Wie Normenkataloge im Unternehmen bereit stellen?
Frage von MuzzepuckelSonstige Systeme14 Kommentare

Hallo Kollegen, ich lese schon lange hier mit, nun mein ersrer Beitrag, bzw. Frage. :-) Wir benötigen für unsere ...

Sicherheit
Verbindliche Zustellung per E-Mail?
Frage von ahussainSicherheit14 Kommentare

Hallo allerseits, ein Kunde von mir nutzt intensiv Fax. Hauptgrund: zusammen mit einer Empfangsbestätigung ist eine verbindliche Zustellung gewährleistet. ...

SAN, NAS, DAS
Entscheidung SAN Dell oder HP
Frage von VincorSAN, NAS, DAS13 Kommentare

Hallo, wir wollen uns für unsere Hyper V Umgebung eine neue SAN Anschaffen. Es laufen 30 VM's darunter, DC; ...