Jump to content

Mapping mit anderen Username + gecachtem Windows Passwort (Kix)


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo zusammen,

 

hab lange hier nicht mehr geschrieben, aber irgendwann benötigt man doch mal wieder Hilfe ;)

 

Ich arbeite mit einem Kixstart Logonskript. Das Script ist schon ziemlich oft erweitert, verbessert und optimiert worden. Müssten jetzt ca. 6 Seiten im Notepad betragen. Eine Funktion bekomme ich nicht hin, da dies Kixstart so nunmal nicht bietet. Folgendes Problem habe ich:

 

Ich arbeite mit einer 2K3 Domäne mit Benutzername = Nachname der Personen. Neben den "normalen" Servern haben wir kaufmännische Anwendung auf einer iSeries laufen. Manche Anwendungen stellen csv-Dateien auf dem IFS der iSeries Bereit. Da manche Programme auf der iSeries nur maximal acht Stellen im Benutzernamen vertragen können, bekommen wir bei der Netzwerkanmeldung bei Personen mit mehr als acht Stellen im Nachnamen Probleme.

Teilweise habe ich den Windowsbenutzer auf acht Stellen gekürzt, aber ich halte es für unsinnig wegen einem "älterem" System meine eigene Benutzerpolicy zu ändern.

 

Die Benutzer, welche auf diese csv-Daten zugreifen müssen, benötigen zwangsweise in beiden Systemen das gleiche Kennwort. Meine Idee war, irgendwie das Windowskennwort zu cachen und einem Netlogonbefehl mitzugeben. Kix selber kann das nicht, aber hat einer von euch eine Idee, wie ich das bewerkstelligen könnte? Oder vielleicht einen anderen Ansatz für die Lösung?

 

PS: Mit Radius oä. werden wir nicht arbeiten können, da sich in diesem Fall die zuständigen Personen für die iSeries quer stellen würden. Auch Kerberos mit der iSeries ist nicht möglich, da in diesem OS Release nur ein Kerberor Client, aber kein Server integriert ist.

 

Vielen Dank schonmal

Link zu diesem Kommentar

frau sabine leuthäuser-schnarrenberger würde sich bei deiner policy bedanken. schon aus sicherheitsgründen würde ich dir dringend empfehlen das was du nicht machen möchtest zu machen.

 

grundsätzlich kannst du aber mit dem net use auch einen benutzer und ein kennwort übergeben. das du aber das mit einem gecachten passwort machen kann und das mit boardmittel gehen würde wäre mir neu. du wirst wohl wenn dann ein 3rd party tool benötigen. wie gesagt was ist so schlimm an 8 stellen? ausserdem: was machst du wenn du zwei Müllers oder Hubers hast? normalerweise baut man den anmeldenamen aus einer komination aus vor und nachnamen auf.

Link zu diesem Kommentar

Danke für die Antwort Hirgelzwift,

 

vielleicht sollte ich etwas mehr ausholen, um auch unsere Namensvergabe erklären zu können.

 

Die iSeries gibt es nunmal schon länger hier im Haus, somit wurde die Namensvergabe zuerst nur auf der iSeries gepflegt. Als nun auch noch PC´s + ADS dazu kamen, wurde nunmal auch die Namensvergabe fortgeführt. Wenn es nach mir ginge, würden die Namen entweder EDV01 - EDV0x oder Petlus oder Petlus231 (Peter Lustig + Personalnummer) heißen. Desweiteren ist die iSeries mit der jetztigen Policy ansich ein Sicherheitsrisiko, da ich beispielsweise ein leichtes Kennwort haben muss um mit der iSeries kommunizieren zu können. Wenn es nach Windows und nach mir ginge, würde mindestens ein Sonderzeichen und eine Zahl im Kennwort vorkommen müssen. Die iSeries selber kann aber keine Sonderzeichen. Somit bin ich in diesem Bereich schon eingeschränkt.

 

Du hast ja Recht, einfach den Benutzernamen zu kürzen wäre am leichtesten, aber ich möchte meine Möglichkeiten und auch Policywünsche nicht immer weiter runterschrauben. Vielleicht ist mein Gedankenansatz auch falsch. Meinetwegen können sich die Personen an zwei Systemen mit verschiedenen Kennwörtern anmelden, aber auch dann sollte es noch komfortabel für die Personen sein.

 

Mein erster Gedanke den ich hatte, und auch versucht habe mit Kix umzusetzten, war eine abfrage des derzeitigen Benutzername. Bei Nichtübereinstimmung wird ein Mapping mit einem anderen Benutzernamen gemacht. An der stelle wollte ich das gecachte Kennwort einsetzen. Aber auch mit einer Möglichkeit das Kennwort verdeckt nochmal vom Benutzer eintragen zu können, wäre auch OK. Allerdings bietet Kix nicht die Möglichkeit einen Text verdeckt in eine Variable zu schreiben.

 

So war mein Gedanke:

 

:Sprungpunkt

 

; global $vollname, $kurzname, $fehler, $nameungleich, $nameungleich2

; dim $array2[2]

 

; if open (3, "@lserver\NETLOGON\kurznamen.txt") = 0 ; Hier werden die bekannten Problemnamen eingetragen

 

; while $fehler = 0

; $x = ReadLine(3)

; if $x

; $array2 = split("$x",";")

; $vollname=$array2[0]

; $kurzname=$array2[1]

; else $fehler=1

; endif

 

; $userid=lcase(@userid)

; $vollname=lcase($vollname)

; if $userid==$vollname gosub mapping_Laufwerk

; loop

; close (3)

; endif

 

return

 

:mapping_Laufwerk

$nameungleich=1

$nameungleich2=$kurzname

use u: "\\server\freigabe" /user:$kurzname ; Hier wollte ich irgendwie das Kennwort cachen oder der Benutzer sollte bei nicht gleichem Kennwort ein anderes Kennwort eintragen können

else

use u: "\\server\freigabe"

endif

return

 

 

 

Was mir aber gerade noch beim schreiben dieses Textes auffiel, dass ich in diesem Fall auch auf das externe Mapping von Windows zurückgreifen kann. Dabei wird nämlich nach dem Kennwort gefragt. Ungefähr so:

 

shell net use u: \\server\freigabe /user:$kurzname

 

Das werde ich bei gelegenheit mal testen.

 

Gruß Nick

Link zu diesem Kommentar

Kurze Frage was ist den Kix? Ich kenne das leider nicht, aber deinen Ansatz mit Net use kann ich unterstützen. Wobei zu dem Netzlaufwerk noch keine Verbindung bestehen darf. Sonst erhälts du die Fehlermeldung "Systemfehler 1219"

Mehrfache Verbindungen zu einem Server oder einer freigegebenen Ressource von demselben Benutzer unter Verwendung mehrerer Benutzernamen sind nicht zulässig. Trenne Sie alle früheren Verbindungen zu dem Server bzw. der freigegebnen Ressource, und versuchen Sie es erneut.

 

 

Gruß

 

Notesuser3

Link zu diesem Kommentar

Hallo Noteuser3,

 

KiXtart ist eine Skriptsprache die zur Ergänzung der Batch-Dateien unter Windows entwickelt wurde. Damit lassen sich simpele Abfragen machen wie beispielsweise: Wenn Benutzer in der Domänengruppe "Abteilung_Fibu" dann mache Mapping usw.

 

Hier der Link: KiXtart

 

Das Mapping auf dem Server wird auch nur mit dem Skript aufgebaut, also besteht nicht die Gefahr mit dem schon exestierenden Mapping. Außerdem werden am Anfang des Skrpits alle offenen Verbindungen getrennt.

Link zu diesem Kommentar

Man lernt halt eben nie aus, ich hätte das vermutlich komplett mit VB-Skript gelöst, aber scheint ja sich sehr ähnlich zu sein.

 

Das Mapping auf dem Server wird auch nur mit dem Skript aufgebaut, also besteht nicht die Gefahr mit dem schon exestierenden Mapping. Außerdem werden am Anfang des Skrpits alle offenen Verbindungen getrennt.

 

Dann sollte es funktionieren.

 

Gruß

 

Notesuser3

Link zu diesem Kommentar

auszug aus der dokumentation von kix2010:

 

USE

Action

Connect, disconnect or list network connections.

 

Syntax

USE LIST

USE <* | "device" | "resource"> /DELETE [/PERSISTENT]

USE ["device"] <"resource"> [/uSER:user] [/PASSWORD:password] [/PERSISTENT]

 

Remarks

Use USE "*" /DELETE to delete all current connections except those to a NETLOGON share and those to the drive or share from which KiXtart was started.

 

If a resource name contains non-alphanumeric characters (such as - or +), enclose the name in quotation marks.

 

On Windows NT or higher only, the /USER and /PASSWORD parameters enable overriding the security context of the current user.

 

Check the value of @ERROR to see if USE was successful (a value of 0 indicates success).

The "USE *" syntax enables you to redirect the first available drive to a resource. If redirection is successful, @RESULT will contain the driveletter of the redirected drive.

 

Examples

USE E: "\\SERVER\PUBLIC" /PERSISTENT

 

frag mich aber nicht was passiert wenn das PW nicht stimmt. du kannst es zwar somit ein PW übergeben aber ein PW aus dem cache halte ich nach wir vor für unmöglich..

Link zu diesem Kommentar

gets $PW

USE U: \\server\freigabe /USER:$Variable_Kurzname /PASSWORD:$PW

 

In der Theroie würde das ja auch funktionieren, allerdings wird die Eingabe des Kennwortes nicht verdeckt. Daher mein Problem.

 

Können denn Variablen aus Kix in eine Dos-Shell übergeben werden? In etwa so:

 

shell NET USE U: \\server\freigabe /USER:$Variable_Kurzname

Danach wird man ja nach dem Kennwort für die Netzwerkressource gefragt. Und der Username ist auch sofort richtig.

 

Noch besser wäre es natürlich so:

 

shell NET USE U: \\server\freigabe /USER:$Variable_Kurzname

if not @error=0 ? "Kennwort war falsch" endif

 

Allerdings müsste dazu ein Returncode an Kix übergeben werden. Geht das?

 

Ich werde es einfach mal testen, gebe dann bescheid, wie ich es hinbekommen habe. Oder auch nicht ;)

Link zu diesem Kommentar

du kannst eine seperate batch (netuse.cmd) machen in der du die laufwerke mit batch befehlen verbindest. am besten ins netlogon legen. dann im kix:

 

run @LDRIVE + "\netuset.cmd"

 

es gibt sogar tools mit den du die batchin eine exe umwandeln kannst (bat2exe) batch converter, um z.B. das PW zu "schützen". es ist natürlich kein 100% schutz weil mit dem programm die exe auch wieder entschlüsselt werden kann, aber eigentlich nur wenn man es nicht mit einem entschlüsselungspasswort versieht. das tool kostet aber in der vollversion und in der trial kommt dauern eine meldung die man bestätigen muss.

 

http://www.windows-software.de/info-1375.html

 

mit errorlevel geschichten arbeite ich nicht. es sollte aber funktionieren. besuche doch einfach mal kix: http://www.kixtart.org da gibt es neben dem neuesten (kostenlosen) kix auch eine ausführlich dokumentation.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...