0 votes

Ajout de l'authentification de l'utilisateur à l'aide d'Applescript

Je veux ajouter l'authentification de l'utilisateur dans mon applescript pour effectuer certaines tâches. Si le nom d'utilisateur et le mot de passe sont corrects, seule la tâche suivante doit être exécutée. Comment faire cela en utilisant applescript ?

0voto

indragie Points 9847

Vous n'avez pas vraiment dit quel niveau de sécurité vous voulez.

La plus simple des solutions :

display dialog "Enter username:" default answer ""
set enteredUsername to text returned of result
display dialog "Enter password:" default answer ""
set enteredPassword to text returned of result
if enteredUsername is "CORRECTUSERNAME"
if enteredPassword is "CORRECTPASSWORD"
-- do something
end if
end if

Enregistrez-le en tant que script en lecture seule et cela empêchera les utilisateurs occasionnels de regarder le contenu du script, mais ce n'est pas vraiment sécurisé du tout si quelqu'un veut vraiment percer votre protection.

0voto

fireshadow52 Points 3796

Si votre Mac est équipé de Leopard (Mac OS X 10.5+), vous pouvez utiliser l'option suivante long user name de l system info qui renvoie le nom complet de l'utilisateur actuel. Cela dit, vous pourriez faire ceci...

set the current_user to (get the long user name of (system info)) as string
set the input_password to the text returned of (display dialog "Please enter the password for " & the current_user & ":" default answer "" buttons{"OK"} default button 1 with hidden answer) --The user cannot bypass this dialog.
--The 'hidden answer' property, when true, changes every character you type in the dialog box into ◘'s.
try
--This next line will verify that the password entered matches the current user's password.
    do shell script "history -c" user name the current_user password the input_password with administrator privileges
on error --incorrect password
    display dialog "Sorry. You entered the wrong password." buttons{"Cancel"}
end try
--Put whatever you want to do after authentication here.

Si vous avez des questions, n'hésitez pas à me les poser :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X