• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Die Bildungsoffensive hier im Forum geht weiter! Jetzt sollen Kreativität und technische Möglichkeiten einen neue Dimension erreichen. Das Thema in diesem Monat lautet - Verkehrte Welt - Hier geht es lang --> Klick

[RealBasic] Im Shell funktioniert echo/login unter Snow Leopard nicht.

gerstenlaub

Golden Delicious
Registriert
18.03.09
Beiträge
6
Ich verwende in einem RealBasic-Programm ein eingebetteten Terminal-Befehl.

Der Benutzer muss - um die "ernsthaftigkeit" der folgenden Aktion zu unterstreichen - sein Benutzerpasswort eingeben.

In RealBasic kann ich durch den Aufruf (in einem Shell) des Terminal-Befehles "echo Passwort | login User" auslesen, ob das vom Benutzer eingegebene Passwort richtig ist oder nicht.

(Wer sich in Realbasic auskennt: sb.Execute "echo " + daspass + " | login " + deruser)

Bis jetzt hat es unter Mac OS X 10.5 bestens funktioniert. Unter Snow Leopard Mac OS X 10.6 funktioniert das leider nicht mehr. Selbst wenn ich direkt im Terminal "echo Passwort | login User" eingebe, heisst es "Login incorrect". Wenn ich im Terminal "login User" eingebe, und dann auf Aufforderung das Passwort, dann funktioniert es.

Leider kenne ich mich im Terminal nicht sehr stark aus. Weiss jemand, was sich hier in Snow Leopard geändert hat?

In Real-Basic-Foren hab ich bis jetzt leider keine Antwort erhalten.

Besten dank für eure Antworten.
 
Durch Dein [tt]echo $password[/tt] kann ich natürlich das Passwort auch schön auslesen was wohl nicht so sehr gewollt ist. Das solltest Du dringend fixen! Um eine Benutzerauthentifikation zu machen sollte es in RealBasic doch einen korrekten Weg über die Sprache selbst geben, als eine Sicherheitslücke im Terminal aufzumachen.
Gruß Pepi
 
Hm, dass ich da sozusagen eine Sicherheitslücke ausnütze, ist mir unterdessen auch aufgegangen. Ich werde mein Programm umkonzeptionieren müssen, da es in RealBasic keine solche Abfrage gibt.