2010-04-19 7 views
4

J'ai besoin de programmer un module d'authentification qui doit fonctionner avec Mac OS X 10.6 Snow Leopard et qui doit en même temps être compatible POSIX.Mac OS X 10.5+ et POSIX

Je lis ici: developer.apple.com/leopard/overview/osfoundations.html

que depuis Mac OS X 10.5 Leopard, Mac OS X est compatible POSIX (Posix 1003.1), mais travaillant sous MAC OS X 10.5 Leopard moi-même, je ne trouve aucune trace de mon nom d'utilisateur ni dans/etc/passwd ni dans son successeur /etc/master.passwd, qui est mentionné ici: developer.apple.com/mac/library À la place il est dit dans les deux fichiers que OpenDirectory Service est utilisé, OpenLDAP selon OpenDirectoryServi cette page de man.

Est-ce encore compatible POSIX? Je suppose que non. Je me demande comment Mac OS X gérerait mon code compatible 100% POSIX qui dépend de/etc/passwd?

Je serais reconnaissant si quelqu'un pouvait expliquer la façon dont cela fonctionne pour moi.

Nous vous remercions de votre temps et de vos problèmes. Meilleures salutations

Phil.

Répondre

2

Je ne pense pas que la façon dont les utilisateurs et les mots de passe sont stockés est couvert par POSIX (ou au moins par Posix 1003.1) - regarder le POSIX Wikipedia page pour un aperçu rapide de ce que est couvert.

1

Vous pouvez utiliser les fonctions getpwuid ou getpwnam de pwd.h pour la recherche de nom d'utilisateur/ID. C'est une partie de la norme 1003.1.

0

Il semble que POSIX ne couvre pas cela, mais la plupart principaux Unix semblent utiliser PAM ces jours-ci. Vous pouvez essayer de vérifier comment authentifier les utilisateurs en utilisant PAM ...

Questions connexes