SorgenkindMech: printer_open() keine netzwerkdrucker?

moin ihrs

ich bin gerade wie im topic schon zu sehen mit printer_open am spielen

printer_list zeigt mir alle netzwerkdrucker, aber ich bekomme keine verbindung

der name wird korrekt übergeben, jedoch bekomme ich dann nur noch access violation at XXXXXXX meldungen, dann muss ich den web-server neu starten

server: IIS5
PHP 5.0.2
alle rechner win2kSP4

der lokale drucker reagiert erwartungsgemäß und druckt auch wie er soll

alle anderen drucker im netzwerk, die ich versuche anzusprechen wollen nicht mit mir reden, weiß jemand warum?

  1. Tach,

    alle anderen drucker im netzwerk, die ich versuche anzusprechen wollen nicht mit mir reden, weiß jemand warum?

    hat der User, mit dessen Rechten PHP läuft, Zugriffsberechtigungen auf die Netzwerkdrucker?

    mfg
    Woodfighter

    1. Tach,

      alle anderen drucker im netzwerk, die ich versuche anzusprechen wollen nicht mit mir reden, weiß jemand warum?

      hat der User, mit dessen Rechten PHP läuft, Zugriffsberechtigungen auf die Netzwerkdrucker?

      ähm, sofern PHP andere rechte als der auf dem Server angemeldete Benutzer hat, weiß ich nicht wo ich das nachschaun kann

      auf dem server ist ein benutzer mit administratorrechten angemeldet ...

      mfg
      Woodfighter

      1. Tach,

        ähm, sofern PHP andere rechte als der auf dem Server angemeldete Benutzer hat, weiß ich nicht wo ich das nachschaun kann
        auf dem server ist ein benutzer mit administratorrechten angemeldet ...

        da ich keinen IIS einsetze, stelle ich jetzt nur Vermutungen an: Der IIS wird als Dienst gestartet, also unabhängig von einem sich anmeldenden Benutzer. Also kannst du unter Start -> Einstellungen -> Systemsteuerung -> Verwaltung -> Dienste nachsehen. Dort steht vermutlich Lokales System als User. In den Eigenschaften des Dienstes könntest du den User einstellen, da du aber offensichtlich nicht weißt, was tu tust, solltest du vermutlich eher jemanden fragen, der sich damit auskennt (z.B. MSDN Newsgroups). Ich hoffe der IIS ist nicht übedr das Internet erreichbar, ansonsten kannst du da mit ein wenig Bastelei riesige Sicherheitslücken erzeugen.

        mfg
        Woodfighter

        1. Tach,

          ähm, sofern PHP andere rechte als der auf dem Server angemeldete Benutzer hat, weiß ich nicht wo ich das nachschaun kann
          auf dem server ist ein benutzer mit administratorrechten angemeldet ...

          da ich keinen IIS einsetze, stelle ich jetzt nur Vermutungen an: Der IIS wird als Dienst gestartet, also unabhängig von einem sich anmeldenden Benutzer. Also kannst du unter Start -> Einstellungen -> Systemsteuerung -> Verwaltung -> Dienste nachsehen. Dort steht vermutlich Lokales System als User.

          habs gefunden, allerdings wenn ich den diensten IIS-Admin-Dienst und www-publishing (wenn es denn die richtigen sind) den admin zugewiesen, dann konnte ich IIS nicht mehr starten

          hab jetz wieder auf systemkonto incl datenaustausch mit desktop

          aber mal was anderes: wenn ich jetz auf dem lokalen drucker drucke, dann steht im druckerordner, dass der auftrag vom aktuell am system angemeldeten benutzer kommt ....

          interessant ist auch, dass wenn ich versuche auf den lokalen drucker über netzwerk zuzugreifen, sprich sozusagen \127.0.0.1\drucker dann klappt das auch nicht ...

          zu der bemerkung ich wüsste nicht was ich tue: dann bräuchte ich nicht fragen, und eventuellen risiken bin ich mir bei der umstellung von rechten bestimmter komponenten durchaus bewusst

          aber bisher schonmal danke, nur bin ich noch nicht wirklich weiter

          1. Tach,

            habs gefunden, allerdings wenn ich den diensten IIS-Admin-Dienst und www-publishing (wenn es denn die richtigen sind) den admin zugewiesen, dann konnte ich IIS nicht mehr starten

            das ist auch gut so, es wäre sicherheitstechnisch kaum vertretbar den Webserver mit Administratorrechten auszustatten.

            aber mal was anderes: wenn ich jetz auf dem lokalen drucker drucke, dann steht im druckerordner, dass der auftrag vom aktuell am system angemeldeten benutzer kommt ....

            Die wunderbare Welt des Windows.

            interessant ist auch, dass wenn ich versuche auf den lokalen drucker über netzwerk zuzugreifen, sprich sozusagen \127.0.0.1\drucker dann klappt das auch nicht ...

            Das lokale System-Konto ist halt lokal und hat keine Rechte auf irgendwelche Netwerkresourcen zuzugreifen.

            zu der bemerkung ich wüsste nicht was ich tue: dann bräuchte ich nicht fragen, und eventuellen risiken bin ich mir bei der umstellung von rechten bestimmter komponenten durchaus bewusst

            Ich erwähnte es nur, da viele sich dessen häufig nicht bewußt sind. Außerdem können dir die MSDN-Jungs sicher eher weiterhelfen als ich und viele andere hier, da der IIS nunmal sowas wie ein Exoten-Webserver ist.

            mfg
            Woodfighter

      2. echo $begrüßung;

        ähm, sofern PHP andere rechte als der auf dem Server angemeldete Benutzer hat, weiß ich nicht wo ich das nachschaun kann

        Das PHP-Script läuft im IIS bei "Anonymous access" unter dem User, der dafür eingestellt ist. Siehe IIS-Konfiguration unter "Directory Security". Bei "Integrated Windows authentication" (NTLM) ist es der Nutzer, der den Browser geöffnet hat (IE) oder der explizit angegebene (falls ein Anmeldedialog ausgefüllt wurde).

        phpinfo()/$_SERVER["AUTH_USER"] zeigt (außer bei anonymen Zugriff) den angemeldeten Benutzernamen an.

        echo "$verabschiedung $name";