Softwaresuche: .htpasswd aus Exel erstellen

Hallo,

Ich habe das Problem, daß ich für ca. 60-70 Personen einen internen Bereich einer Homepage erstellen muß/soll. Hinzu kommt die Tatsache, daß dieser Personenkreis jährlich zu ca. 30-50% wechselt…

Da ich alle Personen in einer Exeldatei pflege (sozusagen als Datenbank - da u.a. auch für Newsletterprogramm), währe es am besten, wenn ich mit Hilfe des gesuchten Progis eine .htpasswd erstellen kann, der mir die Daten aus einer Tabelle auslesen und konvertieren kann - Zur Not würde sicher auch .txt und Co gehen, die ich aus der Tabelle erstellen kann.

Google hat mir bisher kein Glück gebracht.
Wer kann mir ein entsprechendes Programm empfehlen ???

Hi,

Ich habe das Problem, daß ich für ca. 60-70 Personen einen
internen Bereich einer Homepage erstellen muß/soll. Hinzu
kommt die Tatsache, daß dieser Personenkreis jährlich zu ca.
30-50% wechselt…

Da ich alle Personen in einer Exeldatei pflege (sozusagen als
Datenbank

Wie waere es mit einer richtigen Datenbank…

  • da u.a. auch für Newsletterprogramm), währe es am
    besten, wenn ich mit Hilfe des gesuchten Progis eine .htpasswd
    erstellen kann,

… und mod_auth_pam + pam_mysql? Wenn das seltsame Newsletterprogramm auf eine Excel-Tabelle besteht, waere das ein guter Grund, es zu entsorgen.

Gruss vom Frank.

Hallo Frank,

Wie waere es mit einer richtigen Datenbank…

Nicht jedes Vorstandsmitglied (Amtszeit: 1 Jahr) hat Access und Co. (sind mitunter auch richtige DAUs). Exel hingegen hat (eigentlich) jeder (i.d.R. entweder MS oder Sun). Die Daten lassen sich auch immer sehr gut und zahlreich exportieren. Und man braucht kein weiteres Extra-Programm zum betrachten. Noch mehr Gründe…?

… und mod_auth_pam + pam_mysql?

Sorry, da weiß ich jetzt nicht was du damit meinst.

Wenn das seltsame
Newsletterprogramm auf eine Excel-Tabelle besteht, waere das
ein guter Grund, es zu entsorgen.

Tut es nicht, hat eigene integrierte DB, aber kann wunderbar aus xls importieren (natürlich auch weitere).

Hallo,

Excel oder CSV zu einer .htpasswd zu konvertieren ist leider nicht direkt in Excel möglich, da Excel die Funktion zum Verschlüsseln der Passwörter fehlt.

Mit perl unter Unix-artigen Beriebssystem ist es schnell zu lösen:

perl -MText::CSV -ne 'BEGIN {$c=new Text::CSV;}; $c-\>parse($\_);@f=$c-\>fields();print($f[0]. ":". crypt($f[1], join("", (0..9, "A".."Z", "a".."z")[rand 64, rand 64]))."\n");' .htpasswd

Wenn der Webserver PHP oder Perl kann, kann man da ggfs. auch ein Script bauen, was das direkt auf dem Server macht.

Um das auf einem Windows zu machen, würde mir jetzt einfallen, per VBA für jeden Namen/Passwort das htpasswd - Programm aus der Apache-Distribution aufzurufen (gibts auch für Windows), was dann die entsprechende Datei erstellt.

Alexander

Hallo,

Excel oder CSV zu einer .htpasswd zu konvertieren ist leider
nicht direkt in Excel möglich, da Excel die Funktion zum
Verschlüsseln der Passwörter fehlt.

So schlau bin ich ja noch :smile:

Mit perl unter Unix-artigen Beriebssystem ist es schnell zu
lösen:

perl -MText::CSV -ne ‚BEGIN {$c=new Text::CSV;};
$c->parse($_);@f=$c->fields();print($f[0]. „:“.
crypt($f[1], join("", (0…9, „A“…„Z“, „a“…„z“)[rand 64, rand
64]))."\n");‘ .htpasswd

Habe kein Linux.

Wenn der Webserver PHP oder Perl kann, kann man da ggfs. auch
ein Script bauen, was das direkt auf dem Server macht.

Hmm, in PHP bin ich noch nicht so ganz firm genug drin und Perl = ???

Um das auf einem Windows zu machen, würde mir jetzt einfallen,
per VBA für jeden Namen/Passwort das htpasswd - Programm aus
der Apache-Distribution aufzurufen (gibts auch für Windows),
was dann die entsprechende Datei erstellt.

Meinst du alle einzeln… :frowning:

Mein Traum: Exel Name= Spalte C / Passwort klar= Spalte H
In einem Schwung Auslesen und erstellen.

Oder wenigstens Spalten in Komma oder Tab getrennte txt (oder anderes Format) speichern und von dort aus in einem Schwung Auslesen und erstellen.

Hat für mich den Vorteil, daß ich den Mitgliedern das ganze per Serienbrief mitteilen kann (jeweils zusammen mit Namensschild eingetütet im Umschlag)

Wichtig ist, daß das geplante Verfahren relativ einfach vonstatten gehen muß, damit es fortgeführt werden kann, wenn ich nicht mehr bin.

Wie waere es mit einer richtigen Datenbank…

Nicht jedes Vorstandsmitglied (Amtszeit: 1 Jahr) hat Access

Oergs… Access ist keine Datenbank.

und Co. (sind mitunter auch richtige DAUs).

Deswegen will man da ja auch ein webfrontend, was auf der DB arbeitet.

Exel hingegen hat (eigentlich) jeder (i.d.R. entweder MS oder
Sun).

Hm, tja, na wenn das so ist… ich glaube, es gibt mehr Rechner mit Browsern als Excel.

Die Daten lassen sich auch immer sehr gut und zahlreich
exportieren.

Ja, wie man sehr deutlich sieht…

Noch mehr Gründe…?

Ich seh das alles nicht als echte Gruende, pervers genug zu sein, eine Nutzerverwaltung in einer Excel-„Datenbank“ zu pflegen. Was kommt als naechstes? Stehen da E-Mail-Adressen drin und Du willst den mailserver seine Konfiguration aus dem Excel laden lassen? Telefonliste aus dem Excel? Home-Verzeichnisse? Backup-Intervalle?

… und mod_auth_pam + pam_mysql?

Sorry, da weiß ich jetzt nicht was du damit meinst.

Google kaputt? Warte, ich helfe Dir: http://www.google.de/search?q=mod_auth_pamhttp://www.google.de/search?q=pam_mysql

Apache kann PAM fuer HTTP-Auth verwenden, PAM kann alles moegliche verwenden, um Nuzter zu authentifizieren, mein Vorschlag war hier eine MySQL-Datenbank. Natuerlich kannst Du auch eine LDAP-Datenbank nehmen oder plain files oder… Nein, ich glaube nicht, dass es pam_excel gibt.

Tut es nicht, hat eigene integrierte DB, aber kann wunderbar
aus xls importieren (natürlich auch weitere).

Naja, dann wird es ja vielleicht auch das bisschen SQL koennen.

Gruss vom Frank.

(OT:VBA) Re^3: Softwaresuche: .htpasswd aus Exel
Hallo,

Habe kein Linux.

Perl gibt es ggfs. auch für WIndows, activestate.com

Wenn der Webserver PHP oder Perl kann, kann man da ggfs. auch
ein Script bauen, was das direkt auf dem Server macht.

Hmm, in PHP bin ich noch nicht so ganz firm genug drin und
Perl = ???

Perl ist der Code von oben :wink: In PHP sollte es ähnlich gehen, CSV hochladen, per Script mit fopen/fgetcsv den Kram einlesen, per crypt die Passwörter verschlüsseln, rausschreiben.

Um das auf einem Windows zu machen, würde mir jetzt einfallen,
per VBA für jeden Namen/Passwort das htpasswd - Programm aus
der Apache-Distribution aufzurufen (gibts auch für Windows),
was dann die entsprechende Datei erstellt.

Meinst du alle einzeln… :frowning:

Ja. Wird halt das Programm 100 Mal aufgerufen, na und ?

' Hilfskram, weil VBA nicht auf das Ende einer Anwendung warten kann
Private Const PROCESS\_QUERY\_INFORMATION As Long = &H400
Private Const STILL\_ACTIVE As Long = &H103
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpExitCode As Long) As Long

Private Function bShellAndWait(ByVal szCommandLine As String, Optional ByVal iWindowState As Integer = vbHide) As Boolean

 Dim lTaskID As Long
 Dim lProcess As Long
 Dim lExitCode As Long
 Dim lResult As Long

 lTaskID = Shell(szCommandLine, iWindowState)
 If lTaskID = 0 Then Err.Raise 9999, , "Shell function error."
 lProcess = OpenProcess(PROCESS\_QUERY\_INFORMATION, 0&, lTaskID)
 If lProcess = 0 Then Err.Raise 9999, , "Unable to open Shell process handle."
 Do
 lResult = GetExitCodeProcess(lProcess, lExitCode)
 DoEvents
 Loop While lExitCode = STILL\_ACTIVE

 bShellAndWait = True
 Exit Function
End Function

' eigentliches Makro
Sub htpass()
 pfadhtaccess = "c:\temp\htpasswd.exe"
 passfile = "c:\temp\passtest"
 zeile = 1
 spalteuser = 0
 spaltepass = 1
 first = "-bc "
 Do
 user = Range("A1").Offset(zeile, spalteuser).Value
 pass = Range("A1").Offset(zeile, spaltepass).Value
 If (user = "") Then Exit Do
 cmd = pfadhtaccess & " " & first & "" & passfile & " " & user & " " & pass
 result = bShellAndWait(cmd)
 first = "-b "
 zeile = zeile + 1
 Loop While True
End Sub

oder so ähnlich (kenne mich mit VBA nicht wirklich gut aus, und langsam wird das bei „Server-Software“ auch offtopic). die htpasswd.exe ist in der apache-Installtion für Windows, bei Bedarf Mail schreiben.

Mein Traum: Exel Name= Spalte C / Passwort klar= Spalte H
In einem Schwung Auslesen und erstellen.

Naja, das tut das fast, nur das du halt dann spalteuser auf 2 und spaltepass auf 7 setzen musst.

Alexander

Oergs… Access ist keine Datenbank.

Was denn dan (mal von persönlicher Meinung abgesehen)?

Hm, tja, na wenn das so ist… ich glaube, es gibt mehr
Rechner mit Browsern als Excel.

Kunststück… IE ist ja auch integraler Bestandteil von Windows.
99,9% haben aber auch Office bzw. ne entsprechende Alternative und somit Exel

Die Daten lassen sich auch immer sehr gut und zahlreich
exportieren.

Ja, wie man sehr deutlich sieht…

Wie meinst du das? :? Klar kann Exel nicht in jedes x-belibige Format konvertieren (tlw. leider), aber man kann auch nicht immer alles haben.

Ich seh das alles nicht als echte Gruende, pervers genug zu
sein, eine Nutzerverwaltung in einer Excel-„Datenbank“ zu
pflegen.

Hä??? Was ist daran „pervers“ ???
Genauso „pervers“ stelle ich mir ne Kalkulation in Exel vor.
Gibt solche und solche - kommt darauf an, was du damit willst!

Was kommt als naechstes? Stehen da E-Mail-Adressen drin
und Du willst den mailserver seine Konfiguration aus dem Excel laden lassen?
Telefonliste aus dem Excel?
Home-Verzeichnisse?
Backup-Intervalle?

Ja, Nein, Ja, Ja und Ja, (täglich)

… und mod_auth_pam + pam_mysql?

Sorry, da weiß ich jetzt nicht was du damit meinst.

Google kaputt? Warte, ich helfe Dir:
http://www.google.de/search?q=mod_auth_pam
http://www.google.de/search?q=pam_mysql

Danke, nun weiß ich, daß es reichlich Probleme damit gibt und anscheinend auch nicht sicher sein soll (1x von Sicherheitsloch gelesen). Mehr aber auch nicht… und *LOL* Nein, ich habe Google nicht zu „mod_auth_pam + pam_mysql“ bemüht, da mir bei den Begriffen rein gar nichts zu einfiehl - habe ich zum ersten mal gehört/gelesen.

Apache kann PAM fuer HTTP-Auth verwenden, PAM kann alles
moegliche verwenden, um Nuzter zu authentifizieren, mein
Vorschlag war hier eine MySQL-Datenbank. Natuerlich kannst Du
auch eine LDAP-Datenbank nehmen oder plain files oder…
Nein, ich glaube nicht, dass es pam_excel gibt.

Ok, danke (diese Erklärung hat mir mehr als Google gebracht :smile: )
aber ich weiß nicht, wie ich das realisiere könnte. Kannst du vieleicht ein kleine ToDo von xls bis htpaswrd schreiben?

Tut es nicht, hat eigene integrierte DB, aber kann wunderbar
aus xls importieren (natürlich auch weitere).

Naja, dann wird es ja vielleicht auch das bisschen SQL
koennen.

Also mir stehen folgende Exportformate zur Verfügung:
Exel: .xls, .txt, .dbf1-4, .wks, .wk1-4 .csv, .wq1, .dif, .sylk
Newsl.: .csv (Komma,Tab,Frei)

Ich brauchte ein Daten-Grundformat, was der Vorstand (jährliche Neuwahl), selbst als DAU, auf lange Zeit nutzen kann, leicht zu bedienen und zu verändern ist, als Datenquelle für verschiedene Programme verwendbar ist (derzeit Word, Label-Prog., Newsletter - weitere könnten später noch hinzu kommen).
Da hat sich Exel am besten angeboten!

Außerdem ist wichtig, daß das geplante Verfahren relativ einfach vonstatten gehen muß, damit es fortgeführt werden kann, wenn ich nicht mehr bin.

Oergs… Access ist keine Datenbank.

Was denn dan (mal von persönlicher Meinung abgesehen)?

Microsoft Jet ist ein **Datenbank-Backend**. Und zwar das, auf dem Access arbeitet (normalerweise). Dann wären noch diverse SQL-Derivate und Oracle zu nennen.

Excel oder CSV zu einer .htpasswd zu konvertieren ist leider
nicht direkt in Excel möglich, da Excel die Funktion zum
Verschlüsseln der Passwörter fehlt.

Sowohl unter Windows als auch unter UNIX verarbeitet der Apache ohne zu murren Klartextpasswörter. Ist halt nur nicht so schön sicher …

Danke–Softwaresuche: .htpasswd aus Exel erstellen
Hallo, ich danke euch für die Antworten…
Ds scheint mir aber, gerade im Hinblick auf Nachfolger, zu kompliziert zu werden…!

Da werde ich mir also noch etwas anderes einfallen lassen müßen… trotzdem Danke!

Gruß Alex