Recherche B. Active Directory avec attaché Mac Sans informations d'identification de l'utilisateur

Un de mes scénarios de téléchargement Mac doit avoir une propriété de AD, qui n'est pas l'un de ceux que je peux voir avec l'outil intégré appelé dscl, Qui est en grande partie limitée des utilisateurs, des groupes et des ordinateurs. J'effectue généralement simplement une demande non traitée ldap, Mais j'en ai besoin pour arriver avant que l'utilisateur ne pénètre dans le système pour fournir des informations d'identification. Évidemment, l'intégré dscl peut recevoir des données de AD Sans authentification de l'utilisateur, je suppose donc qu'il devrait y avoir un moyen de le faire dans le contexte d'un compte informatique ou de quelque chose comme ça. Malheureusement, mon googlefu Tout en étant complètement échoué.
Invité:

Catherine

Confirmation de:

Je pense que je vais répondre à ma question. Pour mes besoins, c'était sur perl, Mais il devrait être assez évident comment faire la même chose dans le scénario de shell habituel. J'avais juste besoin d'obtenir des informations d'identification de voiture de ActiveDirectory.plist

sub get_LDAPEntries
{
my ($LDAPServer, $LDAPPort, $LDAPsearchbase, $LDAPfilter) = @_;
my $kerbID = `/usr/libexec/PlistBuddy /Library/Preferences/DirectoryService/ActiveDirectory.plist -c "print :'AD Computer Kerberos ID'"`;
chomp $kerbID;

my $password = `/usr/libexec/PlistBuddy /Library/Preferences/DirectoryService/ActiveDirectory.plist -c "print :'AD Computer Password'"`;
chomp $password;

my $LDAPSession = Net::LDAP->new($LDAPServer, port=>$LDAPPort);
$LDAPSession->bind($kerbID, password => $password) or die("Could not connect to LDAP server.");

my $results = $LDAPSession->search(base=>$LDAPsearchbase,filter=>$LDAPfilter);

$results->code && die "There was an error in the LDAP search: " . $results->error;
$LDAPSession->unbind;

my @LDAPEntries = $results->entries;

return @LDAPEntries;
}

MISE À JOUR: Fonctionne uniquement sur Snow Leopard (10.6). Lion (10.7) Stocke Mot de passe AD Dans le paquet de clé, et vous devrez utiliser le programme d'utilitaire de ligne de commande. «security», arriver à lui ... Ce qui, franchement, est un problème du fait que le mot de passe est affiché sur stderr, Et le reste de la demande est envoyé à la sortie standard. Je vais déclarer le soutien Lion comme quitter dehors :-P

Pour répondre aux questions, connectez-vous ou registre