comment se fait-il que, dans la base NetInfo, cerains mots de passe
apparaissent, cryptés certes, mais apparaissent quand même, alors que
pour d'autres, on ne voit que des petites étoiles ?
--
Michel Henri (enlever les quatre lettres de fin d'alphabet pour me répondre)
comment se fait-il que, dans la base NetInfo, cerains mots de passe apparaissent, cryptés certes, mais apparaissent quand même, alors que pour d'autres, on ne voit que des petites étoiles ?
C'est une question que je m'étais posé aussi mais juste parce que c'est intrigant cette différence de comportement, parce que sous unix le fichier des mots de passe encryptés est lisible par tous, à mes vagues souvenirs ...
[few minutes later]
Ben non, j'ai essayé de voir /etc/passwd et je n'ai pas les utilisateurs hormis root et autres daemon, et j'ai des choses comme ça :
avec * pour mdp alors que j'attendais plutôt des entrées de ce type :
binladen:rJE.qAEBfqeXM:123:1000:Ossama Bin Laden:/home/ossama:/bin/ksh
A mon souvenir (lointain) c'était bien /ect/passwd le fichier des mdp, non ?
Il n'y a pas un /etc/shadow, mieux protégé ? C'est le cas sur pas mal d'unix justement pour éviter les trous de sécurité dus au /etc/password... Mais de toute façon, on ne peut pas relire les mots de passe de /etc/password, on ne peux que crypter une chaine et comparer avec la chaine cryptée stockée. Si le résultat est identique, la chaine testée est le mot de passe.
On Thu, 23 Sep 2004 21:41:16 +0200, Sergio wrote:
Michel Henri <m_hewxynri@club-intzzzernet.fr.invalid> wrote:
Bonjour,
comment se fait-il que, dans la base NetInfo, cerains mots de passe
apparaissent, cryptés certes, mais apparaissent quand même, alors que
pour d'autres, on ne voit que des petites étoiles ?
C'est une question que je m'étais posé aussi mais juste parce que c'est
intrigant cette différence de comportement, parce que sous unix le
fichier des mots de passe encryptés est lisible par tous, à mes vagues
souvenirs ...
[few minutes later]
Ben non, j'ai essayé de voir /etc/passwd et je n'ai pas les utilisateurs
hormis root et autres daemon, et j'ai des choses comme ça :
avec * pour mdp alors que j'attendais plutôt des entrées de ce type :
binladen:rJE.qAEBfqeXM:123:1000:Ossama Bin Laden:/home/ossama:/bin/ksh
A mon souvenir (lointain) c'était bien /ect/passwd le fichier des mdp,
non ?
Il n'y a pas un /etc/shadow, mieux protégé ?
C'est le cas sur pas mal d'unix justement pour éviter les trous de
sécurité dus au /etc/password...
Mais de toute façon, on ne peut pas relire les mots de passe de
/etc/password, on ne peux que crypter une chaine et comparer avec la
chaine cryptée stockée. Si le résultat est identique, la chaine testée
est le mot de passe.
comment se fait-il que, dans la base NetInfo, cerains mots de passe apparaissent, cryptés certes, mais apparaissent quand même, alors que pour d'autres, on ne voit que des petites étoiles ?
C'est une question que je m'étais posé aussi mais juste parce que c'est intrigant cette différence de comportement, parce que sous unix le fichier des mots de passe encryptés est lisible par tous, à mes vagues souvenirs ...
[few minutes later]
Ben non, j'ai essayé de voir /etc/passwd et je n'ai pas les utilisateurs hormis root et autres daemon, et j'ai des choses comme ça :
avec * pour mdp alors que j'attendais plutôt des entrées de ce type :
binladen:rJE.qAEBfqeXM:123:1000:Ossama Bin Laden:/home/ossama:/bin/ksh
A mon souvenir (lointain) c'était bien /ect/passwd le fichier des mdp, non ?
Il n'y a pas un /etc/shadow, mieux protégé ? C'est le cas sur pas mal d'unix justement pour éviter les trous de sécurité dus au /etc/password... Mais de toute façon, on ne peut pas relire les mots de passe de /etc/password, on ne peux que crypter une chaine et comparer avec la chaine cryptée stockée. Si le résultat est identique, la chaine testée est le mot de passe.
Eric Lévénez
Le 23/09/04 21:41, dans <1gkl4j3.hchd1d1nn5u0aN%, « Sergio » a écrit :
C'est une question que je m'étais posé aussi mais juste parce que c'est intrigant cette différence de comportement, parce que sous unix le fichier des mots de passe encryptés est lisible par tous, à mes vagues souvenirs ...
Cela fait peut-être 15 ans que les mots de passe ne sont plus dans /etc/password. L'emplacement le plus courant où trouver cette information est /etc/shadow qui a un accès très limité (/etc/master.passwd sur certains BSD). Sur Mac OS X c'est NetInfo qui a ces mots de passe. Avec un "unix classique", on pouvait mettre ces mots de passe soit dans le fichier password, soit dans le shadow. Pour savoir où il était, une étoile dans le champ indiquait de regarder le second fichier. Et si ce second fichier a aussi une étoile, c'est que le login est invalidé. Un champ vide indique un mot de passe défini et vide. Mais dans tous les cas le mot de passe n'est pas en clair car il est encodé. Le type d'encodage du mot de passe dépend de l'unix et de sa version.
Sur Mac OS X, NetInfo doit afficher une étoile si il n'y a pas de login possible, et plusieurs étoiles si un mot de passe a été défini.
-- Éric Lévénez -- <http://www.levenez.com/> Unix is not only an OS, it's a way of life.
Le 23/09/04 21:41, dans
<1gkl4j3.hchd1d1nn5u0aN%sergiot.bidon@free.invalid.fr>, « Sergio »
<sergiot.bidon@free.invalid.fr> a écrit :
C'est une question que je m'étais posé aussi mais juste parce que c'est
intrigant cette différence de comportement, parce que sous unix le
fichier des mots de passe encryptés est lisible par tous, à mes vagues
souvenirs ...
Cela fait peut-être 15 ans que les mots de passe ne sont plus dans
/etc/password. L'emplacement le plus courant où trouver cette information
est /etc/shadow qui a un accès très limité (/etc/master.passwd sur certains
BSD). Sur Mac OS X c'est NetInfo qui a ces mots de passe. Avec un "unix
classique", on pouvait mettre ces mots de passe soit dans le fichier
password, soit dans le shadow. Pour savoir où il était, une étoile dans le
champ indiquait de regarder le second fichier. Et si ce second fichier a
aussi une étoile, c'est que le login est invalidé. Un champ vide indique un
mot de passe défini et vide. Mais dans tous les cas le mot de passe n'est
pas en clair car il est encodé. Le type d'encodage du mot de passe dépend de
l'unix et de sa version.
Sur Mac OS X, NetInfo doit afficher une étoile si il n'y a pas de login
possible, et plusieurs étoiles si un mot de passe a été défini.
--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.
Le 23/09/04 21:41, dans <1gkl4j3.hchd1d1nn5u0aN%, « Sergio » a écrit :
C'est une question que je m'étais posé aussi mais juste parce que c'est intrigant cette différence de comportement, parce que sous unix le fichier des mots de passe encryptés est lisible par tous, à mes vagues souvenirs ...
Cela fait peut-être 15 ans que les mots de passe ne sont plus dans /etc/password. L'emplacement le plus courant où trouver cette information est /etc/shadow qui a un accès très limité (/etc/master.passwd sur certains BSD). Sur Mac OS X c'est NetInfo qui a ces mots de passe. Avec un "unix classique", on pouvait mettre ces mots de passe soit dans le fichier password, soit dans le shadow. Pour savoir où il était, une étoile dans le champ indiquait de regarder le second fichier. Et si ce second fichier a aussi une étoile, c'est que le login est invalidé. Un champ vide indique un mot de passe défini et vide. Mais dans tous les cas le mot de passe n'est pas en clair car il est encodé. Le type d'encodage du mot de passe dépend de l'unix et de sa version.
Sur Mac OS X, NetInfo doit afficher une étoile si il n'y a pas de login possible, et plusieurs étoiles si un mot de passe a été défini.
-- Éric Lévénez -- <http://www.levenez.com/> Unix is not only an OS, it's a way of life.
Schmurtz
Michel Henri wrote:
comment se fait-il que, dans la base NetInfo, cerains mots de passe apparaissent, cryptés certes, mais apparaissent quand même, alors que pour d'autres, on ne voit que des petites étoiles ?
Il y a trois cas différents :
- le mot de passe crypté dans la base NI : c'est le mécanisme d'authentification basique (authentication_authority = ";Basic;"). Actif par défaut sous MacOS X < 10.3, et reste après une migration vers Panther pour les utilisateurs qui ne change pas leur mot de passe.
- le mot de passe vaut "********" : c'est un mécanisme utilisant un hash caché (authentication_authority = ";ShadowHash;") l'équivalent des fichiers /etc/shadow lisible uniquement par l'utilisateur root sous Linux. Sous Panther les hashs sont stockés dans /var/db/shadow/hash/, un fichier par utilisateur, le nom du fichier étant l'entrée "generateduid" de NI. Il y a aussi des fichiers .state qui enregistre des infos sur le dernier login, ainsi qu'un flag forçant un utilisateur à changer son mot de passe.
- le mot de passe vaut "*" : l'utilisateur peut se loguer avec la méthode Basic, mais comme aucun mot de passe crypté ne vaut "*", tous les mot de passe seront refusés. Donc pas de login possible pour cet utilisateur.
En espérant avoir été clair,
-- Schmurtz
Michel Henri wrote:
comment se fait-il que, dans la base NetInfo, cerains mots de passe
apparaissent, cryptés certes, mais apparaissent quand même, alors que
pour d'autres, on ne voit que des petites étoiles ?
Il y a trois cas différents :
- le mot de passe crypté dans la base NI : c'est le mécanisme
d'authentification basique (authentication_authority = ";Basic;"). Actif
par défaut sous MacOS X < 10.3, et reste après une migration vers
Panther pour les utilisateurs qui ne change pas leur mot de passe.
- le mot de passe vaut "********" : c'est un mécanisme utilisant un hash
caché (authentication_authority = ";ShadowHash;") l'équivalent des
fichiers /etc/shadow lisible uniquement par l'utilisateur root sous
Linux. Sous Panther les hashs sont stockés dans /var/db/shadow/hash/, un
fichier par utilisateur, le nom du fichier étant l'entrée "generateduid"
de NI. Il y a aussi des fichiers .state qui enregistre des infos sur le
dernier login, ainsi qu'un flag forçant un utilisateur à changer son mot
de passe.
- le mot de passe vaut "*" : l'utilisateur peut se loguer avec la
méthode Basic, mais comme aucun mot de passe crypté ne vaut "*", tous
les mot de passe seront refusés. Donc pas de login possible pour cet
utilisateur.
comment se fait-il que, dans la base NetInfo, cerains mots de passe apparaissent, cryptés certes, mais apparaissent quand même, alors que pour d'autres, on ne voit que des petites étoiles ?
Il y a trois cas différents :
- le mot de passe crypté dans la base NI : c'est le mécanisme d'authentification basique (authentication_authority = ";Basic;"). Actif par défaut sous MacOS X < 10.3, et reste après une migration vers Panther pour les utilisateurs qui ne change pas leur mot de passe.
- le mot de passe vaut "********" : c'est un mécanisme utilisant un hash caché (authentication_authority = ";ShadowHash;") l'équivalent des fichiers /etc/shadow lisible uniquement par l'utilisateur root sous Linux. Sous Panther les hashs sont stockés dans /var/db/shadow/hash/, un fichier par utilisateur, le nom du fichier étant l'entrée "generateduid" de NI. Il y a aussi des fichiers .state qui enregistre des infos sur le dernier login, ainsi qu'un flag forçant un utilisateur à changer son mot de passe.
- le mot de passe vaut "*" : l'utilisateur peut se loguer avec la méthode Basic, mais comme aucun mot de passe crypté ne vaut "*", tous les mot de passe seront refusés. Donc pas de login possible pour cet utilisateur.
En espérant avoir été clair,
-- Schmurtz
Schmurtz
Sergio wrote:
Sur mon Panther il y a bien un /etc/master.passwd mais qui ne contient pas plus que /etc/passwd, et pas de /etc/shadow.
Sur panther, ces deux fichier ne servent que lorsque l'on démarrage le mac en mode single-user (pomme-S). C'est ce fichier qui permet d'afficher les propriétaires des fichiers par exemple. C'est aussi la que le système va chercher le hash du mot de passe root dans le cas où la demande du mot de passe a été activé pour accéder au mode single-user.
-- Schmurtz
Sergio wrote:
Sur mon Panther il y a bien un /etc/master.passwd mais qui ne contient
pas plus que /etc/passwd, et pas de /etc/shadow.
Sur panther, ces deux fichier ne servent que lorsque l'on démarrage le
mac en mode single-user (pomme-S). C'est ce fichier qui permet
d'afficher les propriétaires des fichiers par exemple. C'est aussi la
que le système va chercher le hash du mot de passe root dans le cas où
la demande du mot de passe a été activé pour accéder au mode single-user.
Sur mon Panther il y a bien un /etc/master.passwd mais qui ne contient pas plus que /etc/passwd, et pas de /etc/shadow.
Sur panther, ces deux fichier ne servent que lorsque l'on démarrage le mac en mode single-user (pomme-S). C'est ce fichier qui permet d'afficher les propriétaires des fichiers par exemple. C'est aussi la que le système va chercher le hash du mot de passe root dans le cas où la demande du mot de passe a été activé pour accéder au mode single-user.
-- Schmurtz
Schmurtz
Sergio wrote:
Oui ok, mais peut-on (et si oui est-il souhaitable de) modifier le mdp par "Gestionnaire Netinfo" ou il faut passer par les préférences de sécurité ?
On peut changer le mot de passe avec la commande passwd, si on veux utiliser les hashs cachés (shadow). Il ne me semble pas qu'Apple ait diffusé l'algorythme utilisé pour calculer les hashs cachés.
Par contre, si tu peux calculer ton hash (un crypt tout bête il me semble) toi même pour la méthode d'authentification basic.
-- Schmurtz
Sergio wrote:
Oui ok, mais peut-on (et si oui est-il souhaitable de) modifier le mdp
par "Gestionnaire Netinfo" ou il faut passer par les préférences de
sécurité ?
On peut changer le mot de passe avec la commande passwd, si on veux
utiliser les hashs cachés (shadow). Il ne me semble pas qu'Apple ait
diffusé l'algorythme utilisé pour calculer les hashs cachés.
Par contre, si tu peux calculer ton hash (un crypt tout bête il me
semble) toi même pour la méthode d'authentification basic.
Oui ok, mais peut-on (et si oui est-il souhaitable de) modifier le mdp par "Gestionnaire Netinfo" ou il faut passer par les préférences de sécurité ?
On peut changer le mot de passe avec la commande passwd, si on veux utiliser les hashs cachés (shadow). Il ne me semble pas qu'Apple ait diffusé l'algorythme utilisé pour calculer les hashs cachés.
Par contre, si tu peux calculer ton hash (un crypt tout bête il me semble) toi même pour la méthode d'authentification basic.
-- Schmurtz
laurent.pertois
Eric Lévénez wrote:
Sur Mac OS X, NetInfo doit afficher une étoile si il n'y a pas de login possible, et plusieurs étoiles si un mot de passe a été défini.
C'est une nouveauté de la 10.3 que d'afficher plusieurs étoiles pour le mot de passe, ces derniers sont stockées dans /var/db/shadow/hash/
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.
Eric Lévénez <news@levenez.com.invalid> wrote:
Sur Mac OS X, NetInfo doit afficher une étoile si il n'y a pas de login
possible, et plusieurs étoiles si un mot de passe a été défini.
C'est une nouveauté de la 10.3 que d'afficher plusieurs étoiles pour le
mot de passe, ces derniers sont stockées dans /var/db/shadow/hash/
--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.
Sur Mac OS X, NetInfo doit afficher une étoile si il n'y a pas de login possible, et plusieurs étoiles si un mot de passe a été défini.
C'est une nouveauté de la 10.3 que d'afficher plusieurs étoiles pour le mot de passe, ces derniers sont stockées dans /var/db/shadow/hash/
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.
caruso
- le mot de passe vaut "********" : c'est un mécanisme utilisant un hash caché (authentication_authority = ";ShadowHash;") l'équivalent des fichiers /etc/shadow lisible uniquement par l'utilisateur root sous Linux. Sous Panther les hashs sont stockés dans /var/db/shadow/hash/, un fichier par utilisateur, le nom du fichier étant l'entrée "generateduid" de NI. Il y a aussi des fichiers .state qui enregistre des infos sur le dernier login, ainsi qu'un flag forçant un utilisateur à changer son mot de passe.
D'après ce que j'ai lu par ailleurs, il me semble que la réponse est non, mais je vais poser la question clairement.
Y a-t-il moyen (par un appel système) d'accéder à ce mot de passe dans un programme C ou un script perl ? Le cas échéant, y a-t-il une commande qui permette de crypter un mot de passe (tapé par l'utilisateur) pour le comparer à celui de la base de donnée, et par la suite accepter ou refuser l'accès.
Bref, en gros, y a-t-il moyen de programmer sous Mac l'équivalent du programme 'login' (enfin au moins le début) sous Linux.
-- Xavier, de passage.
- le mot de passe vaut "********" : c'est un mécanisme utilisant un hash
caché (authentication_authority = ";ShadowHash;") l'équivalent des
fichiers /etc/shadow lisible uniquement par l'utilisateur root sous
Linux. Sous Panther les hashs sont stockés dans /var/db/shadow/hash/, un
fichier par utilisateur, le nom du fichier étant l'entrée "generateduid"
de NI. Il y a aussi des fichiers .state qui enregistre des infos sur le
dernier login, ainsi qu'un flag forçant un utilisateur à changer son mot
de passe.
D'après ce que j'ai lu par ailleurs, il me semble que la réponse est non,
mais je vais poser la question clairement.
Y a-t-il moyen (par un appel système) d'accéder à ce mot de passe dans
un programme C ou un script perl ? Le cas échéant, y a-t-il une commande
qui permette de crypter un mot de passe (tapé par l'utilisateur) pour
le comparer à celui de la base de donnée, et par la suite accepter ou
refuser l'accès.
Bref, en gros, y a-t-il moyen de programmer sous Mac l'équivalent du
programme 'login' (enfin au moins le début) sous Linux.
- le mot de passe vaut "********" : c'est un mécanisme utilisant un hash caché (authentication_authority = ";ShadowHash;") l'équivalent des fichiers /etc/shadow lisible uniquement par l'utilisateur root sous Linux. Sous Panther les hashs sont stockés dans /var/db/shadow/hash/, un fichier par utilisateur, le nom du fichier étant l'entrée "generateduid" de NI. Il y a aussi des fichiers .state qui enregistre des infos sur le dernier login, ainsi qu'un flag forçant un utilisateur à changer son mot de passe.
D'après ce que j'ai lu par ailleurs, il me semble que la réponse est non, mais je vais poser la question clairement.
Y a-t-il moyen (par un appel système) d'accéder à ce mot de passe dans un programme C ou un script perl ? Le cas échéant, y a-t-il une commande qui permette de crypter un mot de passe (tapé par l'utilisateur) pour le comparer à celui de la base de donnée, et par la suite accepter ou refuser l'accès.
Bref, en gros, y a-t-il moyen de programmer sous Mac l'équivalent du programme 'login' (enfin au moins le début) sous Linux.
-- Xavier, de passage.
laurent.pertois
Xavier Caruso wrote:
Y a-t-il moyen (par un appel système) d'accéder à ce mot de passe dans un programme C ou un script perl ? Le cas échéant, y a-t-il une commande qui permette de crypter un mot de passe (tapé par l'utilisateur) pour le comparer à celui de la base de donnée, et par la suite accepter ou refuser l'accès.
Il faut regarder la doc de lookupd, c'est lui qui va répondre.
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.
Xavier Caruso <caruso@clipper.ens.fr> wrote:
Y a-t-il moyen (par un appel système) d'accéder à ce mot de passe dans
un programme C ou un script perl ? Le cas échéant, y a-t-il une commande
qui permette de crypter un mot de passe (tapé par l'utilisateur) pour
le comparer à celui de la base de donnée, et par la suite accepter ou
refuser l'accès.
Il faut regarder la doc de lookupd, c'est lui qui va répondre.
--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.
Y a-t-il moyen (par un appel système) d'accéder à ce mot de passe dans un programme C ou un script perl ? Le cas échéant, y a-t-il une commande qui permette de crypter un mot de passe (tapé par l'utilisateur) pour le comparer à celui de la base de donnée, et par la suite accepter ou refuser l'accès.
Il faut regarder la doc de lookupd, c'est lui qui va répondre.
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.
Schmurtz
(Sergio) wrote:
Schmurtz wrote:
On peut changer le mot de passe avec la commande passwd,
Oui c'est vrai il y a ça aussi, mais cette méthode renseigne-t-elle correctement Mac Os X ; je veux dire elle fonctionne évidemment sous la couche Darwin, mais sous Panther il n'y a pas de blagues ?
Non, il n'y a pas de blague, ça marche très bien d'ailleurs.
-- Schmurtz
sergiot.bidon@free.invalid.fr (Sergio) wrote:
Schmurtz <moi@ici.com> wrote:
On peut changer le mot de passe avec la commande passwd,
Oui c'est vrai il y a ça aussi, mais cette méthode renseigne-t-elle
correctement Mac Os X ; je veux dire elle fonctionne évidemment sous la
couche Darwin, mais sous Panther il n'y a pas de blagues ?
Non, il n'y a pas de blague, ça marche très bien d'ailleurs.
On peut changer le mot de passe avec la commande passwd,
Oui c'est vrai il y a ça aussi, mais cette méthode renseigne-t-elle correctement Mac Os X ; je veux dire elle fonctionne évidemment sous la couche Darwin, mais sous Panther il n'y a pas de blagues ?
Non, il n'y a pas de blague, ça marche très bien d'ailleurs.
-- Schmurtz
Schmurtz
(Xavier Caruso) wrote:
Y a-t-il moyen (par un appel système) d'accéder à ce mot de passe dans un programme C ou un script perl ? Le cas échéant, y a-t-il une commande qui permette de crypter un mot de passe (tapé par l'utilisateur) pour le comparer à celui de la base de donnée, et par la suite accepter ou refuser l'accès.
Il existe un système de centralisation des authentifications appelé PAM (Plugable Authentification Module) qui permet d'abstraire la gestion des authentification : on peut utiliser n'importe quelle méthode d'authentification sans avoir besoin de modifier les applications, à condition d'écrir le plugin PAM correspondant.
MacOS X dispose de cet interface qui sert aux commandes sudo, su, passwd, sshd, login pour effectuer leur vérification de mots de passe. Tu peux aussi l'utiliser.
Bref, en gros, y a-t-il moyen de programmer sous Mac l'équivalent du programme 'login' (enfin au moins le début) sous Linux.
Regarde le code de la fonction login de macosx :) <http://www.opensource.apple.com/darwinsource/10.3.5/system_cmds-279.6/lo gin.tproj/login.c>
-- Schmurtz
caruso@clipper.ens.fr (Xavier Caruso) wrote:
Y a-t-il moyen (par un appel système) d'accéder à ce mot de passe dans
un programme C ou un script perl ? Le cas échéant, y a-t-il une commande
qui permette de crypter un mot de passe (tapé par l'utilisateur) pour
le comparer à celui de la base de donnée, et par la suite accepter ou
refuser l'accès.
Il existe un système de centralisation des authentifications appelé PAM
(Plugable Authentification Module) qui permet d'abstraire la gestion des
authentification : on peut utiliser n'importe quelle méthode
d'authentification sans avoir besoin de modifier les applications, à
condition d'écrir le plugin PAM correspondant.
MacOS X dispose de cet interface qui sert aux commandes sudo, su,
passwd, sshd, login pour effectuer leur vérification de mots de passe.
Tu peux aussi l'utiliser.
Bref, en gros, y a-t-il moyen de programmer sous Mac l'équivalent du
programme 'login' (enfin au moins le début) sous Linux.
Regarde le code de la fonction login de macosx :)
<http://www.opensource.apple.com/darwinsource/10.3.5/system_cmds-279.6/lo
gin.tproj/login.c>
Y a-t-il moyen (par un appel système) d'accéder à ce mot de passe dans un programme C ou un script perl ? Le cas échéant, y a-t-il une commande qui permette de crypter un mot de passe (tapé par l'utilisateur) pour le comparer à celui de la base de donnée, et par la suite accepter ou refuser l'accès.
Il existe un système de centralisation des authentifications appelé PAM (Plugable Authentification Module) qui permet d'abstraire la gestion des authentification : on peut utiliser n'importe quelle méthode d'authentification sans avoir besoin de modifier les applications, à condition d'écrir le plugin PAM correspondant.
MacOS X dispose de cet interface qui sert aux commandes sudo, su, passwd, sshd, login pour effectuer leur vérification de mots de passe. Tu peux aussi l'utiliser.
Bref, en gros, y a-t-il moyen de programmer sous Mac l'équivalent du programme 'login' (enfin au moins le début) sous Linux.
Regarde le code de la fonction login de macosx :) <http://www.opensource.apple.com/darwinsource/10.3.5/system_cmds-279.6/lo gin.tproj/login.c>